Autorisation : Membre
Nb de messages : 96
Inscrit le : Jeu 20 Oct 2011, 0:22
Posté le : Lun 19 Déc 2011, 17:25
Salut !
J'ai un petit problème avec le code de mon jeu nommé "Falls" (facile à comprendre hein ?), en gros comme son nom le sous entend, le but du jeu est de récupérer des "o" avec un perso ")".
Le problème c'est que les "o" passent au travers de mon perso et qu'ils ne s'enchainent pas (il y en a qu'un seul qui apparait) MAIS le score est pris en compte sauf qu'on ne gagne jamais !
Voici le code :
Code
ClrHome
Output(4,4,"BY XDREAMS
Pause
10üdim(áFALLS
Lbl 0
ClrHome
Menu("FALLS 1.0","JOUER",1,"M.SCORES",2,"QUITTER",3
Lbl 1
1üN
0üS
15üX
5üY
0üA
0üB
randInt(1,16üA
randInt(1,8üB
While 1
For(A,1,16
Output(B,A,"ô
Output(Y,X,")
69!
getKeyüK
69!
If K
Output(Y,X," "
Y-(K=25)+(K=34)üY
Output(B,A," "
If Y=0:1üY
If Y=9:8üY
If B=Y and A=X
S+1üS
End
If Iø15
Output(1,1,"PERDU !
Pause
ClrHome
Disp "SCORE=",S
Pause
Goto 0
(je mettrais les meilleurs scores et la sortie après ce problème)
Merci de votre aide et de votre patience
xDreams.
---------------------- Reprise du dev Ti-Basic !
( mais passé à html5/css3 et c#)
Autorisation : Membre
Nb de messages : 30
Inscrit le : Mer 14 Déc 2011, 20:42
Posté le : Lun 19 Déc 2011, 19:02
Il manque un end pour le for : probablement avant le output(Y,X,")
On ne peut pas gagner car le while fait une boucle infinie : pas de condition de victoire (qui, je suppose, devrait etre p ex Repeat S=100 (repeat est mieux))
Donc :
Code
ClrHome
Output(4,4,"BY XDREAMS
Pause
10üdim(áFALLS
Lbl 0
ClrHome
Menu("FALLS 1.0","JOUER",1,"M.SCORES",2,"QUITTER",3
Lbl 1
1üN //sert a quoi ???
0üS
15üX //inutile
5üY
0üA //inutile
0üB //inutile
randInt(1,16üA
randInt(1,8üB
While 1 //a remplir avec conditions de victoire : p ex Repeat S=100
For(A,1,16
Output(B,A,"ô
Output(Y,X,") //X ne varie pas donc met 15 et pas X
69!
getKeyüK
69!
If K //si tu retire c est plus leger
Output(Y,X," " //le X ne varie pas donc met 15 et pas X
Y-(K=25)+(K=34)üY
Output(B,A," " //met le juste avant le for : IL RESTERa pus longtemps a l ecran
If Y=0:1üY
If Y=9:8üY
If A=17
Then
randInt(1,8->B
randInt(1,6->A
End
If B=Y and A=X //et A=15
Then
S+1üS
randInt(1,8->B
randInt(1,16->A
End
End //le end qui manque
End
If Iø15
Output(1,1,"PERDU !
Pause
ClrHome
Disp "SCORE=",S
Pause
Goto 0
---------------------- Il y a 11 sortes de personnes. Ceux qui connaissent le unaire et ceux qui ne le connaissent pas.