Page 1 of 1

TI83PCE Creer un magasin pour un jeu

Unread postPosted: 21 Oct 2016, 14:11
by Remi2711
Salut,
j'essaie de creer un magasin depuis quelque temps...
Mon problème est que les variables ne sont pas sauvegardées...
J'ai créé une aventure pendant laquelle on gagne de l'argent, des objets... mais quand je relance le programme j'aimerais que je revienne où j'étais avec le même nb d'argent et d'objets...
Est-ce possible de creer des sauvegardes comme ca ?? :#fou#:

Re: TI83PCE Creer un magasin pour un jeu

Unread postPosted: 21 Oct 2016, 14:22
by critor
Salut ! :)


Supposons que l'état de ton jeu soit décrit par 5 variables numériques, A B C D E.
Effectivement, entre deux parties, ces variables pourront être écrasées par d'autres programmes.

Mais tu peux enregistrer tes différents paramètres (identifiants d'objets, argent...) dans une liste perso.

En début de code, tu initialises la liste comme ça :
Code: Select all
5→dim(⌊ETATJ

(les noms de listes perso sont limités à 5 caractères - le ⌊ indiquant que c'est une liste se trouve dans :f21: :f33: :f26: :f25: )
Ce code a pour avantage de créer la liste si elle n'existe pas (avec des valeurs toutes nulles), et de ne pas écraser ses données si elle existe déjà ! :bj:

Puis, en début de partie, tu lis les valeurs, et si elles ne sont pas toutes nulles tu les restaures (et sinon tu les initialises) :
Code: Select all
⌊ETATJ(1→A
⌊ETATJ(2→B
⌊ETATJ(3→C
⌊ETATJ(4→D
⌊ETATJ(5→E


Et quand le joueur quitte la partie, tu sauvegardes l'état :
Code: Select all
{A,B,C,D,E→⌊ETATJ

Re: TI83PCE Creer un magasin pour un jeu

Unread postPosted: 21 Oct 2016, 16:42
by Remi2711
:D :D :D Merci beaucoup !
Je vais essayer et je te ré-envoierai un message!

Re: TI83PCE Creer un magasin pour un jeu

Unread postPosted: 21 Oct 2016, 16:50
by Remi2711
OK et enfait après on met des valeurs dans ces variables avec sto?
Moi j'ai plusieurs sous-programmes donc est-ce que je devrais faire cela au début de tous les sous-programmes? :? :?

Re: TI83PCE Creer un magasin pour un jeu

Unread postPosted: 21 Oct 2016, 18:11
by critor
Les variables sont globales sur ta calculatrice.

Donc si un programme appelle un sous-programme, il faut éviter que ce dernier modifie des variables utilisées par le programme appelant.

Si tu as besoin de bien plus de 27 variables, une solution est en effet d'utiliser des listes.
Tu peux en créer autant que tu veux, avec jusqu'à 999 valeurs chacune. :)