2017-07-22 2 views

Répondre

2

Vous devez enregistrer la variable. Il y a plusieurs façons de le faire, mais en utilisant un SharedObject est l'OMI le plus facile. La première chose est que vous ne créez pas réellement une nouvelle instance de la classe SharedObject, vous appelez à la place la fonction statique getLocal et cela définit votre variable. Donc, quelque part au début de votre programme, vous voulez quelque chose comme ceci:

var gameSave:SharedObject = SharedObject.getLocal("gameSave"); 

Ce soit crée un nouvel objet partagé persistant localement si l'on n'existe pas ou il attrape celui avec le même nom initialisé ("GameSave ") sur ton ordinateur. De cette façon, vous pouvez accéder aux variables sauvegardées sur plusieurs playthroughs. Pour enregistrer une variable, vous devez simplement utiliser l'objet data sur l'objet partagé et lui écrire des valeurs, puis appeler la fonction flush lorsque vous avez terminé d'écrire des valeurs pour enregistrer immédiatement l'objet partagé sur votre ordinateur.

sauver donc la valeur de votre zone ressemblerait à quelque chose comme ceci:

gameSave.data.area = Main.area; 
gameSave.flush(); 

Après que vous aurez envie de définir la valeur area à quelle que soit la valeur enregistrée est quand votre jeu lance:

if (gameSave.data.area !== undefined) Main.area = gameSave.data.area; 

Nous vérifions si la valeur est undefined car elle n'existe peut-être pas encore si vous jouez au jeu pour la première fois et que la zone n'a pas encore été enregistrée. Dernière chose au cas où vous voudriez étendre la portée de ceci et enregistrer plus de valeurs: vous ne pouvez écrire que des valeurs spécifiques à l'objet partagé. La façon dont je le comprends est que vous pouvez seulement écrire certains types de classe et primitives. Si vous essayez d'écrire quelque chose qui n'est pas une primitive ou les classes d'exception, il convertira automatiquement cet élément en Object et cela deviendra plus ou moins inutile. Les classes qu'il peut accepter que vous utiliserez probablement le plus sont: int, uint, Number, String, Boolean, Object et Array. Il a quelques autres comme ByteArray et XML, mais vous ne les utiliserez pas du tout ou ne les utiliserez pas très fréquemment. Si vous voulez enregistrer un autre type de classe, vous devrez ajouter cette fonctionnalité vous-même.