Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Un jeu de foot pas terminé
pito2901 le 20/04/2013 à 16:21
Bonjour à tous !
EDIT: Pour ceux qui souhaitent voir le jeu allez page 3.
Voilà je me lance aujourd'hui sur ce forum dans le but de finir le programme d'un jeu de foot qui n'a pas été terminé, voir sur ce sujet.
https://tout82.pages-perso.fre[...].php?sujet=1916
Voici le début du programme qui ne marche pas encore, et que je souhaiterai terminer avec votre aide.
Code
Programme foot
8 -> A
8 -> B
8 -> C
Lbl 0
EffEcr
codeTouche -> K
If K=24
A-1 -> A
If A>6 et A<10
Output(2,A,"ø
Output(3,A,"T
Output(7,7,"ø
Output(8,7,"A
Output(B,C,"°
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
If K=26
A+1 -> A
If A>6 et A<10
Output(2,A,"ø
Output(3,A,"T
Output(7,7,"ø
Output(8,7,"A
Output(B,C,"°
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Goto 0
voilà on peut déplacer le gardien, mais il peut sortir des poteaux

or je souhaite qu'il reste entre les "!" (même pas sur ! , juste entre les 2).
On ne voit que sa tête ø juste quand il se trouve au centre des buts.
Pour la suite du jeu, j'aimerai qu'au bout de 5 secondes (avec un compte à rebours de 5 secondes qui s'affiche sur un coin supérieur), le ballon de l'attaquant se déplace dans les but aléatoirement avec un effet de rotation (enfin je sais pas comment définir cela) et évidemment si le gardien se met devant (qu'on déplace avec k=24 et k=26 soit flèche gauche et droite) il arrête la balle et là on affiche "BIEN JOUE" (par exemple) et s'il ne l'arrête pas, on afficherait "RATE" (par exemple).
Voilà si maintenant personne ne veut faire le programme à ma place (je n'oblige évidemment personne à le faire), j'aimerai qu'on me guide pour avoir les instructions que je viens de citer.
Bonne journée à tous !

pito2901 le 20/04/2013 à 16:42
Et je promets de mettre le programme une fois terminée en français et en anglais.

pito2901 le 20/04/2013 à 18:33
Bon j'ai réussi à trouver pour que le gardien reste dans les buts, cependant il apparaît en clignotant, je trouve ça désagréable
Code
EffEcr
1 -> A
8 -> B
8 -> C
8 -> X
Repeat K=105
Output(2,A," "
Output(3,A," "
Output(2,X,"ø
Output(3,X,"T
Output(7,7,"ø
Output(8,7,"A
Output(B,C,"°
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
X -> A
codeTouche->K
If K=24:A-1->A
If K=26:A+1->A
If X=5:6->X
If X=11:10->X
End
linkakro le 20/04/2013 à 18:38
Pourquoi extraire une partie de l'autre programme et oublier tout ce qui a déjà été fait ?
Commence par écrire une boucle contenant les affichages et les déplacements.
Ensuite code le test de sortie en fonction du temps et du ballon.
Evite de répéter un même code pour chaque action mais utilise les variables.
Sâche que le temps n'existe pas sur TI. Une variable peut être incrémentée régulièrement mais le temps correspondant dépendra du modèle de TI, du programme et de la ram ocupée.
On peut améliorer les tests en les insérant dans les calculs.
EDIT : comme K=24 ici : max(5,min(9,A-(K=24)+(K=26->A
Les max et min permettent de conserver la variable A dans le bon intervalle.
EDIT : donc en face de la cage
Appliquer la même méthode que ce que j'ai fait sur A avec min et max permettra de limiter le déplacement du gardien même si on enlève la limite de A.
Je n'ai pas testé.
EDIT : par la suite on sait que le but était de contoler le gardien mais mon programme controle la balle.Code
0->S // score
Repeat Z=1000 ou C=A
// même valeur de Z pour l'autre boucle et le test à la fin
EffEcr
8 -> A
8 -> B
8 -> C
1->D
0->Z
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
While Z<1000 et B-4 // changer 1000 pour le chrono
Z+1->Z
codeTouche -> K
Output(2,A," " // efface gardien position précédente
Output(3,A," "
If K=21 // dès qu'on presse la touche 2nde pour tirer
0->D
If D // si on n'a pas encore tiré
Then
entAléat(5,9->A // position aléatoire du gardien si on a pas commencé
If K // évite de trop clignoter
Output(B,C," " // efface ballon position précédente
Else
A+1-2(C<A->A // le gardien suit le ballon
Output(B,C," " // efface ballon position précédente
B-1->B
End
max(5,min(9,C-(K=24)+(K=26->C
Output(2,A,"ø
Output(3,A,"T
Output(B,C,"°
Output(1,1," "
Output(1,1,1000-Z // affiche chrono
For(T,1,10 // changer la valeur ou même enlever pour changer la temporisation
End
End
If Z-1000 et C-A
S+1->S
End
EffEcr
Output(1,1,"FINISHED
Output(2,1,"SCORE
Output(2,7,S
Je ne me suis pas préoccupé des clignotement pour la plupart.
Il faudrait détecter le déplacement des objets et autoriser alors l'effacement de la position précédente.
pito2901 le 20/04/2013 à 18:47
D'accord bon je teste et je te dis
Par contre j'ai pas tout compris ce que tu as dis avant le code.

linkakro le 20/04/2013 à 18:55
Je vois que j'ai écrit des choses fausses. Je confond X, A et C.
J'edite.
Je change régulièrement des choses en les mettant dans un meilleur ordre ou en changeant des variables.pito2901 le 20/04/2013 à 19:03
Je viens de tester mais il faut appuyer sur [2nde] pour que la balle se déplace (normalement elle doit le faire toute seule à la fin du compte à rebours) si je n'appuie pas le compte à rebours se termine, après la calculatrice affiche le score (qui est 0) et elle a tjrs la même trajectoire.
Je n'ai pas compris pour le gardien, il ne doit pas avoir de mouvement aléatoire, c'est la balle qui doit en avoir un. Mais merci quand même d'avoir répondu !

linkakro le 20/04/2013 à 19:16
Je pensais que le gardien se déplacerais aléatoirement avant qu'on tire et suive la balle ensuite.
Pour que le chrono contrôle le départ de la balle, il faudrait utiliser un test de comparaison entre Z et 1000 dans le contrôle de B l'ordonnée du ballon.
Et supprimmer le test de Z des boucles.
Je cesse de modifier le programme puisque les objectifs ont été changés.pito2901 le 20/04/2013 à 19:16
Il faut changer
Code
max(5,min(9,C-(K=24)+(K=26->C
par
Code
max(6,min(10,C-(K=24)+(K=26->C
pito2901 le 20/04/2013 à 19:19
J'aimerais bien comprendre un peu mais malheureusement non
Si tu pouvais juste éditer cette partie, et remplace z=1000 par z=20, cela suffit.
En fait le but du jeu est que l'utilisateur est le gardien et doit arrêter la balle (on pourra faire réciproquement par la suite).
Merci encore !
linkakro le 20/04/2013 à 19:48
Donc j'étais à côté de la plaque.
Ce sera d'ailleurs plus simple.
Toujours pas testé.
Code
Repeat C-A
8 -> A
8 -> B
8 -> C
EffEcr
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
0->Z
Repeat B=4
Z+1->Z
codeTouche -> K
If K
Then
Output(2,A," "
Output(3,A," "
End
min(10,max(6,A-(K=24)+(K=26->A
Output(2,A,"ø
Output(3,A,"T
Output(B,C,"°
If Z<40
Then
Output(1,1,40-Z
Else
min(10,max(6,C+1-2entAléat(0,1->C // déplacement aléatoire de la balle (6 à 10)
B-1->B
End
End
If C=A
S+1->S
End
EffEcr
Output(1,1,"FINISHED
Output(2,1,"SCORE
Output(2,7,S
pito2901 le 20/04/2013 à 20:00
Il affiche err:syntaxe à
codeTouche->K
if K // il met le curseur après le k
?????????????????????????????????????????????????linkakro le 20/04/2013 à 20:44
As-tu saisi un espace après le K ? Je ne vois pas d'autre erreur possible.
Normalement cela teste juste que K est non-nul.
Remplace par "If K!=0" pour voir. (!= représente "différent")pito le 20/04/2013 à 20:51
j'ai trouvé, il faut mettre k=[un chiffre]
Il y a bien le trajet de la balle aléatoire
on peut voir ça
Code
-------
! ø !
! T !
----------------
°
°
°
°
ou ça
Code
-------
! ø !
! T !
----------------
°
°
°
°
mais on peut voir ça, ce qui n'est pas gênant, seulement, on ne s'y attend pas.
Code
-------
! ø !
! T !
----------------
°
°
°
°
Le jeu est un peu difficile il faudrait réduire la vitesse.

Et ce serait bien si la balle irai jusque là:
Code
-------
! ø !
! T °!
-------°-------
°
°
°
°
enfin au niveau du T
linkakro le 20/04/2013 à 21:01
Pour cela remplace B=4 par B=3.
Si tu as une Ti82 non-stat, cela peut expiquer le défaut de If K.pito2901 le 20/04/2013 à 21:01
Oui tu as raison il faut mettre k!=0 mais pas autre chose que 0 sinon le gardien ne s'efface pas lorsqu'on le déplace

et j'ai bien un ti 82 stats
je teste pour B
pito2901 le 20/04/2013 à 21:06
ouai, il faut mettre B=2, et pour la vitesse ?
Dsl mais en fait le déplacement comme ça est gênant :
Code
-------
! ø !
! T °!
-------°-------
°
°
°
°
linkakro le 20/04/2013 à 21:22
Ajoute une ou plusieurs temporisations (et place les commande dans un ordre légèrement différent) pour ralentir et rester fluide.
Les temporisations se font avec des actions sans effets comme 69! ou une boucle For.
Je ne comprend pas ce que tu veux dire par ton dessin.
Si tu veux ralentir la balle par rapport au reste, tu peux utiliser une variable pour autoriser son déplacement une itération sur deux.pito2901 le 20/04/2013 à 21:31
Comme je sais pas trop où mettre les 69! que me conseilles-tu comme boucle For, mais oui c'est pour ralentir la vitesse de la balle.
mon dessin montre que la balle va à gauche puis à droite puis retourne à gauche, il faudrait juste qu'elle aille sur un côté et qu'elle change environ au milieu du trajet vers l'autre côté.
/Je viens de voir le snake de Samos
et pour la vitesse il a mis
Code
Lbl C
ClrHome
Repeat A=45
getKey→A
L+(A=25)-(A=34→L
Output(1,1,"ANNUL TO QUIT
Output(4,7,"
Output(4,6,L
End
ClrHome
End
peut-être qu'on peut s'en servir
linkakro le 20/04/2013 à 22:01
Cela change seulement la variable L. C'est un réglage.
Ce qui te sera utile est la boucle qui prend L comme argument. (si je m'en souvien bien)pito2901 le 20/04/2013 à 22:05
HEIN ???linkakro le 20/04/2013 à 22:37
La boucle que tu as cité ne sert pas directement à ralentir le programme.
Elle sert à donner une valeur à la variable L et cette variable L contrôle le ralentissement du programme.
Place la boucle de samos au tout début et place For(W,1,L):End où tu veux, à la fin de la boucle centrale par exemple.
Augmente la valeur de L si tu veux augmenter le temps.
Si ce n'est pas fluide, déplace des instructions ou utilise plusieurs For.
L'endroit où les mettre est surtout expérimental.
Tu veux changer le déplacement de la balle en deux segments de diagonales ?
Il faudrait une variable de direction initialisée par un aléatoire et l'opposer une fois à une certaine hauteur ou largeur.pito2901 le 21/04/2013 à 13:28
Je pourrai te répondre que vendredi soir

, et merci encore !
pito2901 le 22/04/2013 à 20:46
Bon normalement le jeu marche mais j'aimerai faire aussi sur ce que tu avais commencé au départ c'est à dire, c'est l'utilisateur qui tire dans la balle pendant que le gardien se déplace tout seul aléatoirement (mais cette fois-ci pas de compte à rebours), qu'il aille sur la position 1 puis 3 puis 4 puis 2 ... par exemple.
Comme ceci :
Code
Position 1
-------
!ø !
!T !
----------------
Code
Position 2
-------
! ø !
! T !
----------------
Code
Position 3
-------
! ø !
! T !
----------------
Code
Position 4
-------
! ø !
! T !
----------------
Code
Position 5
-------
! ø!
! T!
----------------
Pour la suite je saurai faire un menu, avec les deux modes de jeu et la vitesse... Mais je ne peut que le tester vendredi soir.

Et pour finir j’essaierai seul de faire le mode deux joueurs, càd un utilisateur qui fait le gardien et un autre qui tire.
pito2901 le 26/04/2013 à 17:42
Le Lbl de la vitesse de marche pas, et je ne sais pas comment faire les segments en diagonales... Et les score ne correspond pas il me met 52 par exemple alors que j'ai arrêté 2 but (il y a donc 50 de plus en trop)
Code
Lbl M
Menu("FOOT","JOUER",J,"VITESSE",V
Lbl V
EffEcr
Repeat A=45
For(W,1,L
codeTouche -> A
L+(A=25)-(A=34 -> L
Output(1,1,"ANNUL TO QUIT
Output(4,7," "
Output(4,6,L
End
EffEcr
Goto M
Lbl J
Repeat C-A
8 -> A
8 -> B
8 -> C
EffEcr
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
0->Z
Repeat B=2
Z+1->Z
codeTouche -> K
If K
Then
Output(2,A," "
Output(3,A," "
End
min(10,max(6,A-(K=24)+(K=26->A
Output(2,A,"ø
Output(3,A,"T
Output(B,C,"°
If Z<40
Then
Output(1,1,40-Z
Else
entAléat(0,1
min(10,max(6,C+1-2Rép->C
B-1->B
End
End
S+1->S
End
EffEcr
Output(1,1,"FINISHED
Output(2,1,"SCORE
Output(2,7,S
Pause
Goto M
linkakro le 26/04/2013 à 18:10
Il manque l'initialisation du score.
La boucle For que tu as utilisé ne sert à rien. Il n'est pas question de placer l'initialisation de L à l'intérieur d'une boucle qui se répète L fois... Mais d'initialiser L puis d'utiliser L ailleurs.
Et on peut se passer de boucle Repeat du Lbl V en utilisant simplement une saisie avec Prompt ou Input.
J'ai placé des boucles de temporisation un peu partout. Fais de même en choisissant des endroits qui conviennent.
EDIT : j'ai corrigé l'effacement de la balle et son affichage. Globalement il faut effacer, calculer puis afficher ou bien utiliser des variables mémoire de la position précédente.
EDIT : limitation de L 0 à 10
Code
Lbl M
Menu("FOOT","JOUER",J,"VITESSE",V
Lbl V // d'ici à Lbl J remplaçable par un prompt
EffEcr
Repeat A=45
codeTouche -> A
min(10,max(0,L+(A=25)-(A=34 -> L // EDIT
Output(1,1,"ANNUL TO QUIT
Output(4,7," "
Output(4,6,L
End
EffEcr
Goto M
Lbl J
0->S // initialisation du score
Repeat C-A
8 -> A
8 -> B
8 -> C
EffEcr
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
0->Z
Repeat B=2
Z+1->Z
For(W,1,L):End
codeTouche -> K
If K
Then
Output(2,A," "
Output(3,A," "
End
For(W,1,L):End
min(10,max(6,A-(K=24)+(K=26->A
For(W,1,L):End
Output(2,A,"ø
Output(3,A,"T
For(W,1,L):End
If Z<40
Then
Output(1,1,40-Z
Else
Output(B,C," " // effacement de la balle précédente
min(10,max(6,C+1-2entAléat(0,1->C
B-1->B
End
Output(B,C,"° // nouvelle balle
End
S+1->S
End
EffEcr
Output(1,1,"FINISHED
Output(2,1,"SCORE
Output(2,7,S
Pause
Goto M
pito2901 le 26/04/2013 à 18:32
Bon le jeu est ralenti, mais il faudrait limiter la vitesse entre 0 et 10linkakro le 26/04/2013 à 18:42
min(10,max(0,L+(A=25)-(A=34 -> Lpito2901 le 26/04/2013 à 18:50
ça marche mais malheureusement il n'y a plus le trajet aléatoire de la balle, elle fait ça à chaque fois:
Code
-------
! ø !
!° T !
-----°----------
°
°
°
°
Pour le score et la vitesse, ça marche...
pito le 27/04/2013 à 15:17
Alors une réponse ?linkakro le 27/04/2013 à 15:59
De quelle façon testes-tu ce programme ?
Si tu l'émules sur un ordinateur en réinitialisant la calculatrice virtuelle entre chaque essai, alors le pseudo-aléatoire de la calculatrice est réinitialisé et la trajectoire est chaque fois la même.
J'avais légèrement modifié la syntaxe de l'aléatoire en le mettant directement dans le calcul d'abscisse, alors vérifies que cela correspond.
min(10,max(6,C+1-2entAléat(0,1->C
Le programme tel qu'il est écrit dans le dernier message devrait générer une trajectoire parfaitement aléatoire.
As-tu tenté de modifier son comportement pour obtenir l'unique changement de direction comme tu le voulais ? Si c'est le cas alors il est clair qu'il y a un problème et je te proposes cette version.
EDIT: j'ai déplacé la création de D qui n'était pas dans la boucle Repeat C-A
Code
Lbl M
Menu("FOOT","JOUER",J,"VITESSE",V
Lbl V
EffEcr
Repeat A=45
codeTouche -> A
min(10,max(0,L+(A=25)-(A=34 -> L
Output(1,1,"ANNUL TO QUIT
Output(4,7," "
Output(4,6,L
End
EffEcr
Goto M
Lbl J
0->S
Repeat C-A
8 -> A
8 -> B
8 -> C
EffEcr
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
1-2entAléat(0,1->D // initialisation de la direction avec 1 ou -1
0->Z
Repeat B=2
Z+1->Z
For(W,1,L):End
codeTouche -> K
If K
Then
Output(2,A," "
Output(3,A," "
End
For(W,1,L):End
min(10,max(6,A-(K=24)+(K=26->A
For(W,1,L):End
Output(2,A,"ø
Output(3,A,"T
For(W,1,L):End
If Z<40
Then
Output(1,1,40-Z
Else
Output(B,C," "
min(10,max(6,C+D->C
B-1->B
End
If not(entAléat(0,4
-D->D
// Le changement de direction est aléatoire, mais on peut fixer une autre condition ou augmenter la probabilité en diminuant 4
// Si la condition n'est pas aléatoire, le comportement sera sensiblement différent de celui des programmes précédents. Une position fixée donnera un comportement plus proche de celui que tu voulais. Cependant je préfères qu'il y ait au moins un peu d'aléatoire comme ici pour augmenter la difficulté. De plus l'aléatoire ici présent n'est pas équiprobable comme avant.
// On peut déplacer ces deux lignes avant le calcul de déplacement
Output(B,C,"°
End
S+1->S
End
EffEcr
Output(1,1,"FINISHED
Output(2,1,"SCORE
Output(2,7,S
Pause
Goto M
pito2901 le 27/04/2013 à 17:08
linkakro a écrit :
Code
// Le changement de direction est aléatoire, mais on peut fixer une autre condition ou augmenter la probabilité en diminuant 4
// Si la condition n'est pas aléatoire, le comportement sera sensiblement différent de celui des programmes précédents. Une position fixée donnera un comportement plus proche de celui que tu voulais. Cependant je préfères qu'il y ait au moins un peu d'aléatoire comme ici pour augmenter la difficulté. De plus l'aléatoire ici présent n'est pas équiprobable comme avant.
// On peut déplacer ces deux lignes avant le calcul de déplacement
Je teste tout avec ma calculatrice (réelle), je te réponds dans quelques minutes.
EDIT: malheureusement ça ne marche tjrs pas, j'attends que tu mettes tes conditions, car je ne sais pas faire, dsl.
Et dsl pour le spam tout à l'heure.

pito2901 le 27/04/2013 à 19:27
Alors ?linkakro le 27/04/2013 à 20:38
Prend comme condition B=6 et ça suffira. Cela fera les segments de diagonales dont on a parlé.
Je suis étonné par ton abscence d'aléatoire.
Je vais regarder de plus près.pito2901 le 27/04/2013 à 20:46
Donc après
Je mets B=6 c'est tout ?
linkakro le 27/04/2013 à 21:38
Non je parle d'écrire ceci à la place des deux lignes qui précèdent mon pavé de commentaire.
pito2901 le 27/04/2013 à 22:38
ça marche tjrs pas...

linkakro le 28/04/2013 à 00:01
J'ai trouvé ce qui cloche dans le programme à variable D : j'ai placé le premier aléatoire en dehors de la boucle Repeat C-A.
J'édite plaçant la ligne dans la boucle.
Je ne sais pas ce qui clochait dans la version précédente.pito2901 le 28/04/2013 à 12:29
ça marche !
Maintenant que cette étape est terminé, JE vais ESSAYER (donc j'aurai sûrement besoin d'aide) de faire l'inverse c'est à dire que l'utilisateur dirige le ballon, tire dedans en ligne droite et le gardien aura des déplacements aléatoires. (je mettrai ce topic dans un autre sujet)
Une fois terminée j'essaierai de faire le mode deux joueurs... (dans un autre sujet)
pito2901 le 28/04/2013 à 13:43
Derniers détails:
1°) Le compte à rebours s'affiche comme ça
40 - 39 - 38 - ... - 10 - 90 - 80 - 70- ...
Est ce qu'on peut avoir après 10 :
09 - 08 - 07 - ... voire 10 - 9 - 8 - 7 - ...
2°) Pour la vitesse
Il faut augmenter (avec les flèches) pour que le jeu se ralentisse c'est à dire
à 0 le jeu est a vitesse normale et à 10 à vitesse lente.
Peut on faire l'inverse ?linkakro le 28/04/2013 à 14:43
1°) Le plus simple est d'effacer le nombre entre deux affichages.
Ainsi on a ...-11-10-9_-8_-...
Code
Output(1,1," "
Output(1,1,40-Z
Mais si tu veux vraiment avoir ...-11-10-09-08-... il faudra tester l'échelle du nombre pour modifier l'abscisse et afficher un zéro supplémentaire.
L'échelle va de 1 à 2 chiffres donc on s'occupe d'une comparaison à 10.
(pour faire plus général on pourrait utiliser un logarithme mais cela pose des problèmes en zéro)
Code
Output(1,1+(Z>30),40-Z
If Z>30
Output(1,1,"0
J'affiche zéro comme un caractère pour ne pas avoir à toucher aux modes Normal et Float. D'ailleurs on aurait dû y penser avant.
Pense aussi que tu peux initialiser Z à 40 et le décrémenter dans la boucle plutôt que de calculer 40-Z et d'initialiser à zéro. Cela change aussi les tests de Z.
2°) Oui, en remplaçant les boucles de tempo par For(W,1,10-L):End
On peut aussi utiliser une variable intermédiaire afin de nepas calculer la borne chaque fois.
pito2901 le 28/04/2013 à 14:59
Merci tout marche et j'ai pris la première option pour le compte à rebours et j'ai réduis 40 à 10.pito2901 le 28/04/2013 à 16:10
Pour ceux qui souhaitent avoir le programme en entier c'est
ici et descendez dans la page...
linkakro le 28/04/2013 à 17:26
Tu devrais vraiment citer tes sources. Au moins citer le forum tout82.free.fr.
Je ne suis pas emballé par une vidéo qui sert à peine à placer un lien vers un téléchargement dans la description. Personnellement ce serait plus intéressant avec une capture du programme.pito2901 le 28/04/2013 à 21:03
dak je ferai ça dans les jours qui viennent...
D'après le webmaster
2) Les internautes peuvent déposer librement les programmes de leur création. En les déposant sur ce forum, ils accèptent qu'ils devienent libre de droit, c'est à dire que chacun peut les copier, modifier et les redistribuer sur un autre site.linkakro le 28/04/2013 à 21:47
Bien sûr que les droits sont libres, mais cela n'empêche pas de citer les sources et le faire fort appréciable.pito2901 le 29/04/2013 à 18:08
Et voici le programme :
Tout d'abord faire
[ON]+[pgrm]+2[flèche droite]+[entrer]
Puis avec la touche [alpha] tapez le nom du jeu avec les touches des lettres qui sont en vert
au dessus des touches. Puis une fois le programme nommé faites [entrer]. Rentrer le programme
Instructions:
-> touche [sto ->] et pour faire = < > différent de... [2nde]+[math]
En français:
Code
Lbl M // [2nde]+[0], tapez la touche où (
) il y a le L (donc [)] et descendez jusqu'à Lbl puis faites [entrer]
Menu("FOOT","JOUER",J,"VITESSE",V // idem pour menu / " se fait avec [alpha]+[+]
Lbl V
EffEcr // comme menu
Repeat A=45 // [pgrm]+[6]
codeTouche -> A // comme menu
min(10,max(0,L+(A=25)-(A=34 -> L // idem
Output(1,1,"ANNUL TO QUIT // idem
Output(4,7," "
Output(4,6,L
End // [pgrm]+[7]
EffEcr
Goto M // comme menu
Lbl J
(-)1->S // (-) se fait avec la touche en dessous de 3
Repeat C-A
8 -> A
8 -> B
8 -> C
EffEcr
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
Output(7,7,"ø
Output(8,7,"A
1-2entAléat(0,1->D // entAléat en un mot comme pour menu
0->Z
Repeat B=2
Z+1->Z
For(W,1,10-L):End // dans pgrm
codeTouche -> K
If K // idem
Then
Output(2,A," "
Output(3,A," "
End
For(W,1,10-L):End
min(10,max(6,A-(K=24)+(K=26->A
For(W,1,10-L):End
Output(2,A,"ø // ø [alpha]+[3]
Output(3,A,"T
For(W,1,L):End
If Z<10
Then
Output(1,1,10-Z
Else
Output(B,C," "
min(10,max(6,C+D->C
B-1->B
End
If non(entAléat(0,4
-D->D
Output(B,C,"° // comme menu mais déplacez vous avec flèche haut, ° se trouve après r
End
S+1->S
End
EffEcr
Output(1,1,"FINIS
Output(2,1,"SCORE
Output(2,7,S
Pause
Goto M
En anglais:
Code
Lbl M // [2nde]+[0], tapez la touche où (
) il y a le L (donc [)] et descendez jusqu'à Lbl puis faites [entrer]
Menu("FOOT","JOUER",J,"VITESSE",V // idem pour menu / " se fait avec [alpha]+[+]
Lbl V
ClrHome // comme menu
Repeat A=45 // [pgrm]+[6]
getKey -> A // comme menu
min(10,max(0,L+(A=25)-(A=34 -> L // idem
Output(1,1,"ANNUL TO QUIT // idem
Output(4,7," "
Output(4,6,L
End // [pgrm]+[7]
ClrHome
Goto M // comme menu
Lbl J
(-)1->S // (-) se fait avec la touche en dessous de 3
Repeat C-A
8 -> A
8 -> B
8 -> C
Clrhome
Output(1,5,"-------
Output(2,5,"! !
Output(3,5,"! !
Output(4,1,"---------------
Output(B,C,"°
Output(7,7,"ø
Output(8,7,"A
1-2randInt(0,1->D // randInt en un mot comme pour menu
0->Z
Repeat B=2
Z+1->Z
For(W,1,10-L):End // dans pgrm
getKey -> K
If K // idem
Then
Output(2,A," "
Output(3,A," "
End
For(W,1,10-L):End
min(10,max(6,A-(K=24)+(K=26->A
For(W,1,10-L):End
Output(2,A,"ø // ø [alpha]+[3]
Output(3,A,"T
For(W,1,L):End
If Z<10
Then
Output(1,1,10-Z
Else
Output(B,C," "
min(10,max(6,C+D->C
B-1->B
End
If not(randInt(0,4
-D->D
Output(B,C,"° // comme menu mais déplacez vous avec flèche haut, ° se trouve après r
End
S+1->S
End
EffEcr
Output(1,1,"FINIS
Output(2,1,"SCORE
Output(2,7,S
Pause
Goto M pito2901 le 29/04/2013 à 21:09
Je tiens à remercier énormément linkakro et ce forum de m'avoir aider !

Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.