Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Premier jeu programmé : Pong
UnShoCkaBle le 03/02/2010 à 14:38
Salut à tous je suis un novice de la TI-82 ( je ne l'ai que depuis 3 mois) et j'ai commencé à essayer de programmer
J'ai finalement réussi à créer mon premier jeu, un pong tout basique ...
C'est du déjà vu, c'est vrai

, mais c'est mon premier vrai programme, et j'aimerais savoir ce que vous en penser.
P.S.: j'aimerais bien sauvegarder le meilleur score mais je ne sais pas comment faire pour utiliser les listes si vous pouviez m'aider svp
Code
:EffEcr
:0->S
:7->A
:entAleat(3,6->B
:entAleat(5,12->C
:-1->D
:-1->E
:1->F
:Lbl1
:EffEcr
:B+D->B
:C+E->C
:A+F->A
:Output(1,11,"SCR:
:Output(1,15,S
:Output(8,A,"===
:Output(B,C,"°
:If B=1:1->D
:If C=1:1->E
:If C=16:-1->E
:codeTouche->K
:If K=24 et A*1:-1->F *correspond au signe "different de"
:If K=26 et A*14:1->F pareil ici aussi
:If A=1:0->F
:If A=1 et K=26:1->F
:If A=14:0->F
:If A=14 et K=24:-1->F
:If B=7 et C=A ou B=7 et C=A+1 ou B=7 et C=A+2:Goto 0
:If B=8:Goto 2
:Goto 1
:Lbl 0
:-1->D
:S+1->S
:Goto 1
:Lbl 2
:EffEcr
:Output(3,5,"PERDU !
:Output(5,2,"VOTRE SCORE:
:Output(5,14,S
:Pause
:EffEcr
:Stop
Persalteas le 03/02/2010 à 15:04
salut,
Moi j'ai la 82stats en français mais je crois que c'est pareil pour la 82 tout court.
pour créer une liste, il faut déjà lui donner une dimension:
par exemple pour une liste L1 de trois valeurs:
3->dim(L1
Si a la place de L1 tu rentre un autre nom précédé du petit L (dans le catalogue),ça te crée une liste qui a ce nom.ici la liste TATI:
3->dim(LTATI
ensuite, ta liste est créée mais ses 3 valeurs sont 0.
pour les changer tu écris:
100->LTATI(1)
la première valeur de TATI est maintenant 100.
Sinon ton programme je peux pas l'essayer désolé ma calto a pas de place.Persalteas le 03/02/2010 à 15:05
Aussi, a chaque moment tu peux effacer ta liste:
EffListe LTATI
et voilà.Rézus le 03/02/2010 à 15:10
Pour stocker un nombre dans une liste tu fais comme ça:
N->L1 par exemple.
Et pour stocker une liste dans un nombre tu fais L1->N.
Tu peux aussi stocker un nombre à un emplacement précis dans la liste.Dans ce cas il faut mettre le numéro de l'emplacement entre parenthèses derrière le nom de la liste (le premier emplacement est 1 et pas 0):N->L1(

et pour faire l'inverse L1(

->N.J'ai vu que tu sais déjà que tu peux enlever la deuxième parenthèse.
Persalteas le 03/02/2010 à 15:43
on peut stocker une liste entière dans une variable lettre?Rézus le 03/02/2010 à 16:14
Oui si la liste ne contient qu'une seule valeur.Et je crois qu'il faut aussi que sa dimension soit 1UnShoCkaBle le 03/02/2010 à 17:45
merci pour vos explications mais j'aimerais savoir comment mettre cette liste dans le programme

Didouille le 03/02/2010 à 18:29
Je te propose sa :
Code
:1->dim L6
:If Fpart L6(1 (différent de) 0.248613
:0->L6(1
:EffEcr
:0->S
:7->A
:entAleat(3,6->B
:entAleat(5,12->C
:-1->D
:-1->E
:1->F
:Lbl1
:EffEcr
:B+D->B
:C+E->C
:A+F->A
:Output(1,11,"SCR:
:Output(1,15,S
:Output(8,A,"===
:Output(B,C,"°
:If B=1:1->D
:If C=1:1->E
:If C=16:-1->E
:codeTouche->K
:If K=24 et A*1:-1->F *correspond au signe "different de"
:If K=26 et A*14:1->F pareil ici aussi
:If A=1:0->F
:If A=1 et K=26:1->F
:If A=14:0->F
:If A=14 et K=24:-1->F
:If B=7 et C=A ou B=7 et C=A+1 ou B=7 et C=A+2:Goto 0
:If B=8:Goto 2
:Goto 1
:Lbl 0
:-1->D
:S+1->S
:Goto 1
:Lbl 2
:EffEcr
:If iPart S>L6(1
:Then
:S+0.248613->L6(1
:Output(7,1,"Record battu !
:End
:Output(1,1,"Record :
:Output(1,9,Ipart L6(1
:Output(3,5,"PERDU !
:Output(5,2,"VOTRE SCORE:
:Output(5,14,S
:Pause
:EffEcr
:Stop
Le Fpart 0.248613 c'est pour que:
- Protéger un peu le score, qu'on puisse pas le modifier n'importe comment. Pour le falsifier tu tape dans l'écran de calcul : X,248613 -> L6(1 (ou X est ton score)
- Que la valeur qu'il y est avant ne soit pas le reste d'un autre programme.
UnShoCkaBle le 03/02/2010 à 18:37
merci beaucoup je vais essayer

UnShoCkaBle le 03/02/2010 à 18:46
Merci infiniment ca marche et je crois que j'ai compris le fonctionnement des Listes
merci à tous

Didouille le 03/02/2010 à 22:39
Pas de quoi, après c'est toi qui voit la présentation à la fin, j'ai fait un peu à l'arrache sans calculatrice.maxlamenace le 10/12/2010 à 15:04
Merci. C'est trop bien c'est le programme pong le moins compliqué à recopier et le mieux fait. Merci!

supernova le 10/12/2010 à 17:04
le premier code pong a la ligne
:Output(B,C,"°
il me dit err domainemetallica le 10/12/2010 à 18:04
Regarde les valeurs de B et de C.supernova le 10/12/2010 à 18:59
ba enfait je n arrive pas a bouger je perd aprer je met on et il me dit err arrét sur pausemetallica le 10/12/2010 à 19:01
Appuie sur [enter ) et non sur [ON] dès que l'écran est en pause.

supernova le 10/12/2010 à 19:05
ok mai sa regle pas le probleme de la plate forme === qui bouge pas a part si c pas avec les fleche qu'on jouelinkakro le 10/12/2010 à 21:20
Verrifies en priorité ceci. Et essaie d'appuyer sur entrer si ce n'est déjà fait.
Code
:A+F->A
...
:Output(8,A,"===
...
:codeTouche->K
:If K=24 et A*1:-1->F
:If K=26 et A*14:1->F
simsmith78 le 18/10/2011 à 19:27
Moi quand ma barre du bas du jeu touche les bords sa me met ERR:DOMAINE sur la partie Output(8,A,"===

made2kill le 18/10/2011 à 20:22
Vérifie que tu as bien mis le "7->A" au début.sandro le 18/10/2011 à 22:20
donne la valeur de A aussisimsmith78 le 21/10/2011 à 22:14
La valeur de A est 7...sandro le 22/10/2011 à 11:44
Au moment du bug??? ça ne devrait buguer que si A<1 ou A>14 ou si A n'est pas entier.
Sandro Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.