Sauvegarder l'état d'une instance particulière d'un objet


#1

Edit : J’ai trouvé! Probablement pas la plus économe des manières, mais ça semble marcher. Je m’excuse pour le dérangement…

Bonjour,

Je viens vers vous car j’ai un soucis au niveau de la sauvegarde. Je ne sais pas trop comment m’y prendre ou quelle logique avoir. Grosso modo, j’ai des objets qui disparaissent de la map à certains moments et selon certaines actions effectuées par le joueur. J’aimerais que ce qui a disparu ne réapparaisse pas lors d’une reprise de partie.

Comment est-ce que je peux faire ? J’ai déjà vu sur le forum des gens qui proposaient de donner des ID aux instances des objets pour pouvoir désigner des instances spécifiques.

Mais honnêtement, je ne comprends pas trop ce que je peux en faire en terme de sauvegarde. A chaque fois que j’essaye un truc pour sauvegarder les dites instances censées disparaître (et donc ne pas réapparaître en reprise de partie), je me retrouve bloquée (toutes les instances disparaissent voire je n’arrive pas à sauvegarder). Est-ce que vous auriez des solutions ou des pistes de réflexions sur la manière dont je pourrais m’y prendre ?

Merci d’avance!


#2

Salut,
Un peu tard, mais je réponds quand même au cas où :blush:
Si tu as tes instances placées à l’avance, au début de la scène, tu peux prendre un instantané des positions et états de chaque instance (via une boucle for each), et ensuite, lorsqu’un évènement affecte une instance, tu mets à jour les variables concernées.


#3

Salut, comment as tu fais pour régler le problème finalement par simple curiosité ?


#4

Merci pour ta réponse !

Il s’agit plus d’un gros bricolage qu’autre chose, mais j’ai fais comme cela (pour le moment, quand je teste, ça a l’air de fonctionner et je n’ai pas encore eu de soucis).

J’ai rajouté à la main pour chaque instance de l’objet une ID. Je mets un screen tout de même car personnellement, en passant par “edit object variables” je n’arrivais à rien avant de remarquer que je pouvais changer la valeur individuelle de chaque instance à gauche, donc si jamais quelqu’un est un peu dans mon cas et passe par ici.

screen_trompette2

Quand le joueur rencontre l’objet, il peut le voir de plus près et change de scène (close up). Dans cette scène, il peut choisir de le ramasser ou non. Si il veut le ramasser, le ramassage peut soit échouer (choix = 1) soit réussir (choix = 3).

J’ai créé un compteur (ici trompetteramasse) afin de pouvoir sauvegarder l’ID de l’instance dans un emplacement différent à chaque fois qui diffère par le chiffre de la fin du nom.

Et au début de la scène, je me suis pas trop posée de question. Donc pour le moment, j’ai ça comme ça :

Ça m’oblige donc à bien manier le copier/coller… :’)