Voilà, je rencontre un petit bug dans le codage de mon jeu : j’ai mis en place une routine restart(), qui redémarre le jeu, et qui est présente assez souvent dans le code… Le problème est que pour certains objets, j’ai mis un before [; action : routine();] , et les routines invoquées font toujours au bout d’un moment redémarrer le jeu (c’est volontaire, hein) ; mon problème vient de certaines phrases parasites qui s’affichent quand routine() a terminé… Je ne sais pas si je suis très clair, alors je donne un exemple :
attaquer machin
Vous l’attaquez mais vous vous prenez une bonne baffe dans la gueule et tombez dans le ravin.
Vous êtes mort : le jeu recommence *
{{texte du début}}Vous êtes dans la nursery, et vous venez de naître…{{fin du texte de début}}
La violence n’est pas une solution.
Le problème c’est que dans l’objet machin, j’ai mis before [; Attack : routine();], la routine contient le restart() donc le jeu recommence, et comme je n’ai pas renvoyé de return true ou false (j’imagine que c’est ça, le problème), il marque la phrase par défaut de la bibliothèque… Et impossible de mettre return true ou false dans ma routine, parce que sinon elle s’interrompt !
je crois que j’ai eu des problèmes un peu similaire avec ces satanées routines, mais je ne me souviens plus si j’avais réussi à résoudre cela ni comment faire.
Hé bien, le hasard fait bien les choses… Voilà mon problème résolu !
En fait, il fallait faire quelque chose du genre before [;Attack : routine(); rtrue;] - bref, il suffisait de rajouter un rtrue…
Encore une question (décidément, c’est la journée des bugs… ^^) : est-ce que c’est possible de faire se refermer un tiroir tout seul ? Parce que sinon, j’ai mon tiroir qui reste ouvert quand le jeu recommence, et c’est un petit problème… Plus généralement, le jeu peut-il déclencher des actions spontanément ?
Hum hum…
Pas la peine de vous déplacer, j’ai trouvé…
Il suffit de mettre la commande entre << >>.
Page 84 du Beginner’s Guide…
Donc, un post pour rien… ^^
Des bugs avec << >> ??
Je ne m’en sers pas souvent, mais je n’ai pas l’impression que ça pose problème! Tu aurais un exemple de code qui foire? Ou tu veux dire que ça peut planter un peu n’importe quand?