Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -39%
Ordinateur portable ASUS Chromebook Vibe CX34 Flip
Voir le deal
399 €

 

 Sauvegarde et Chargement : problème de sprite

Aller en bas 
3 participants
AuteurMessage
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 17:35

Bonjour !

Nouveau petit problème que je remarque, qui n'empêche pas de jouer mais qui est un peu gênant :

- dans mon jeu je suis amené à faire changer de sprite certains boutons, en utilisant la fonction "bouton.NormalGraphic=X".

- lorsque je charge une partie après avoir relancé le jeu, ces boutons ont repris leur image standard (telle que définie au lancement du jeu), mais lorsque je passe la souris les survole, ils retrouvent la sprite espérée (c'est-à-dire : celle qui a été définie avant la sauvegarde de la partie).

C'est un peu comme si AGS "oubliait" de les afficher correctement, mais que lorsque la souris les survole (bien qu'il n'y ait aucun script qui change la sprite lors du survol du bouton) AGS se dit "ah oui, j'avais zappé, pardon ! la voici la bonne sprite !".

Une idée de l'origine du problème ? Peut-être interne au programme AGS ? Ou y a un moyen de "rafraîchir" AGS juste après avoir rechargé la partie ?

A part cela, j'ai aussi envie que lorsqu'on recharge la partie, je voudrais que le GUI de sauvegarde ne soit pas affiché. J'ai l'impression qu'il reste affiché lorsqu'on sauvegarde, du coup quand on recharge, il est encore là.

Cela est peut-être dépendant de la place du script de sauvegarde/recharge dans le code ?
Revenir en haut Aller en bas
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
valoulef


Nombre de messages : 1791

Age : 35

Localisation : Condate

Date d'inscription : 01/08/2011


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 17:55

Baguettator a écrit:
Ou y a un moyen de "rafraîchir" AGS juste après avoir rechargé la partie ?

Tu as essayé dans le repeatedly_execute(_always) ? Avec une ou plusieurs variables dont la valeur est liée à ce que doivent afficher les boutons ? Par contre c'est un peu laborieux, surtout s'il y a beaucoup de configurations possibles et que tu ne peux pas généraliser ça... Qui plus est il est possible (mais pas certain) que les boutons restent mal affichés une fraction de seconde.

Mais c'est peut-être lié à la façon dont tu gères les sprites ? Je visualise plus trop.

En ce qui concerne le GUI de sauvegarde, je ne vois pas trop, c'est pas forcément un aspect que je maîtrise.

Désolé pour cette réponse relativement peu utile mais il parait que l'important c'est de participer. ^^
Revenir en haut Aller en bas
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 18:58

Alors pour changer les sprite des boutons, j'utilise noblement la fonction "NormalGraphic". Il y aurait une autre fonction à utiliser à la place ?

Merci pour ta réponse valoulef, ne t'inquiète pas, ça aide déjà d'avoir un regard extérieur !
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 19:07

Baguettator a écrit:
A part cela, j'ai aussi envie que lorsqu'on recharge la partie, je voudrais que le GUI de sauvegarde ne soit pas affiché. J'ai l'impression qu'il reste affiché lorsqu'on sauvegarde, du coup quand on recharge, il est encore là.

Tu peux détecter le rechargement d'une partie dans on_event avec la valeur eEventRestoreGame, et ainsi y forcer la disparition du GUI

Et tu pourrais aussi forcer les images de bouton dans cette fonction si tu trouves pas d'autre solution
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 19:19

Ah, alors j'y vois plus clair !

Pour ce qui concerne la disparition du GUI :

- je n'ai pas de fonction on_event dans mon global script, il faut que j'en crée une ? Est-ce que tu aurais un modèle à me proposer ? La valeur eEventRestoreGame est une boléenne ou une variable ?

Pour ce qui est de l'image des boutons :

- j'imagine que je pourrais faire une immense boucle qui scanne tous les GUI et tous les boutons de chaque GUI, et qui fait quelque chose comme : "bouton[i].NormalGraphic = bouton[i].Graphic" ? (en partant du principe qu'en sauvegardant, AGS a mémorisé le numéro de la bonne sprite, c'est juste qu'en rechargeant il ne l'a pas appliquée correctement)
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 19:49

Baguettator a écrit:
- je n'ai pas de fonction on_event dans mon global script, il faut que j'en crée une ? Est-ce que tu aurais un modèle à me proposer ? La valeur eEventRestoreGame est une boléenne ou une variable ?
Si tu en as pas tu la crées, oui. Le type du premier paramètre est EventType, eEventRestoreGame est la valeur que tu veux que ce paramètre ait :
Code:
function on_event (EventType evenement, int data) {
  if (evenement == eEventRestoreGame) {
    // ton code
  }
}

Baguettator a écrit:
- j'imagine que je pourrais faire une immense boucle qui scanne tous les GUI et tous les boutons de chaque GUI, et qui fait quelque chose comme : "bouton\[i\].NormalGraphic = bouton\[i\].Graphic" ? (en partant du principe qu'en sauvegardant, AGS a mémorisé le numéro de la bonne sprite, c'est juste qu'en rechargeant il ne l'a pas appliquée correctement)

Au contraire, je pense que Graphic a pas la valeur que tu veux, puisque ça correspond à ce qui est effectivement affiché, c'est-à-dire la mauvaise image d'après ce que tu décris.

Ce que tu pourrais faire par exemple c'est créer une fonction qui se charge de changer la propriété NormalGraphic d'un bouton et en même temps mémorise cette valeur dans une cellule tableau indexée à l'index du bouton. Comme ça plutôt que directement changer NormalGraphic tu appelles cette fonction, et dans on_event tu regardes la valeur de la cellule du tableau pour chaque bouton et tu l'utilises pour forcer (à nouveau) NormalGraphic.


Dernière édition par Kitai le Mar 3 Nov 2020 - 19:52, édité 1 fois (Raison : bug d'affichage dans la citation à cause de [i])
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 20:05

OK compris pour le premier paragraphe !

Pour l'histoire des sprite, est-ce que ce serait pas un truc du genre :

- lorsque je sauvegarde, je scanne tous les GUI et leurs boutons, et je mémorise leur numéro de sprite (dans un tableau comme tu le dis). Et dans la fonction on_event (du coup elle sert immédiatement celle-là !), lorsque je charge une partie, j'appelle cette fonction. Normalement les valeurs numériques seront bien enregistrées, restera juste à AGS de forcer les NormalGraphic. C'est bien ça ?

[EDIT] OUI ça marche !!! Content d'y être parvenu. Encore une preuve que j'ai bien progressé en programmation, mais ce n'est pas comme si j'avais eu de mauvais profs clin d'oeil Merci à ceux qui hantent ce forum !

Juste au passage : ça ressemble à un bug de l'éditeur AGS, non ? A signaler aux développeurs ?
Revenir en haut Aller en bas
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
valoulef


Nombre de messages : 1791

Age : 35

Localisation : Condate

Date d'inscription : 01/08/2011


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 21:43

Baguettator a écrit:
Juste au passage : ça ressemble à un bug de l'éditeur AGS, non ? A signaler aux développeurs ?
Oui ça a l'air d'y ressembler. Si tu maîtrises l'anglais tu peux toujours en toucher deux mots sur le forum officiel (après y'a peut-être autre chose qui m'échappe).

@Kitai la profondeur de tes connaissances en AGS m'impressionneront toujours ^^
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyMar 3 Nov 2020 - 22:10

valoulef a écrit:
@Kitai la profondeur de tes connaissances en AGS m'impressionneront toujours ^^
À croire que j'ai lu la documentation en entier plusieurs fois clin d'oeil
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptySam 14 Nov 2020 - 20:36

Eheh clin d'oeil

Alors je crois avoir une piste de réponse pour ce problème : la place du script de sauvegarde dans le globalscript.

J'ai suivi ce tutoriel pour mettre en place ma sauvegarde :

https://www.adventuregamestudio.co.uk/wiki/Creating_Custom_Save_and_Load_Dialogs

Mais dans le paragraphe "Script the Save Button", c'est marqué ceci :

"It is important that anything you want to do when saving is placed before/above the "SaveGameSlot()" commands. Anything below "SaveGameSlot()" will be executed, but NOT saved into the file, because it occurs after the save command. "

Cela voudrait dire que le jeu ne sauvegarde pas (ou mal) ce qui est noté en-dessous de ce script ? Devrais-je mettre le script du bouton "save" (et peut-être tout le script de sauvegarde/chargement de partie) tout en bas du global script ?
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyDim 15 Nov 2020 - 16:54

Baguettator a écrit:
Cela voudrait dire que le jeu ne sauvegarde pas (ou mal) ce qui est noté en-dessous de ce script ? Devrais-je mettre le script du bouton "save" (et peut-être tout le script de sauvegarde/chargement de partie) tout en bas du global script ?
Non, dans la phrase que cites "below" s'entend comme désignant le code exécuté plus tard que la commande SaveGameSlot, typiquement du code placé plus bas que cette commande dans la même fonction, mais non pas plus généralement dans le même fichier script.

Donc à moins que tu changes effectivement tes sprites après avoir exécuté la commande SaveGameSlot, le problème ne vient probablement pas de là
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Baguettator
Cliqueur Amateur
Cliqueur Amateur
Baguettator


Nombre de messages : 232

Date d'inscription : 21/05/2020


Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite EmptyLun 16 Nov 2020 - 11:05

Ah, ok je comprends mieux maintenant ! Par contre, je ne change pas les sprites APRES SaveGameSlot, donc je vais en toucher deux mots sur le forum Anglosaxon.

Merci !
Revenir en haut Aller en bas
Contenu sponsorisé





Sauvegarde et Chargement : problème de sprite Empty
MessageSujet: Re: Sauvegarde et Chargement : problème de sprite   Sauvegarde et Chargement : problème de sprite Empty

Revenir en haut Aller en bas
 
Sauvegarde et Chargement : problème de sprite
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [résolu] probleme regions et sauvegarde
» Modifier le sprite "Inventory item cursor marker sprite"
» Sauvegardes et chargement
» Faire une sauvegarde
» Interface de chargement/enregistrement avec Vignette

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: