Voila le programme qui gère les mouvements et la pose des bombes
Code
5->V
5->W
5->X
5->Y
X->A
Y->B
While 1
codeTouch(->K
If K=24 et Y>0 et pxl-Test(X+1,Y-4)=0
Then
X->B
Y-5->Y
Y+5->A
End
If K=26 et Y<90 et pxl-Test(X+1,Y+6)=0
Then
X->B
Y+5->Y
Y-5->A
End
If K=25 et X>0 et pxl-Test(X-3,Y)=0
Then
Y->A
X-5->X
X+5->B
End
If K=34 et X<55 et pxl-Test(X+7,Y)=0
Then
Y->A
X+5->X
X-5->B
End
If X#différent de#W ou Y#différent de#V
Texte(X,Y,"#thèta#
Texte(B,A,"#3 espaces#
If K=105
Then
Y->V
X->W
Texte(W,V,"°
End
If K=105 ou W>5 et V>5
Texte(W,V,"°
If X=W et Y=V
TexteW,V,"°
remplacez le prgmXXXXXXX par le nom du programme que vous donnerez pour les mouvements
Il me reste à faire le programme pour faire exploser les bombes mais je ne sais pas comment faire
Au début ça bug car ça fait poser 1 bombe tout seul mais aprèsq ça va
Ça bug aussi quand on pose plusieures bombes et quand on retourne sur les autres ça les efface je ne sais pas comment faire
j'ai la Ti-84+ donc il est possible d'introduire les notions de temps pour les explosions.
Merci de m'aider d'avance s'il vous plait.
Dites moi si ça ne marche pas il se peut que j'ai fait des erreurs en retapant
Gwénaël Invité
Posté le : Mer 06 Avr 2011, 18:28
J'ai oublié: il faut mettre 2 end à la fin du 2e programme pour qu'il tourne en boucle correctement
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 07 Avr 2011, 1:11
Citer : "godzlove"
PS : mauvaise idée que de faire 2 programmes pour un seul jeu.
Un petit "goto" et c'est réglé (un programme vide fait 24 octets)
Détrompe toi : les progs lourds mais les plus puissants et rapide qui soient sont séparés en plusieurs codes. (car chaque goto produit un scan de tout le code, ralentissant le prog ; cela peut même faire bugguer ou saturer quand les End sont de la partie)
Toutefois la différence ne se fait pas ressentir dans tous les progs. Cela dépend du programme.
D'autre part, on peut mettre un même Lbl dans chaque prog, et on supprimme certaines contraintes de boucle.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 07 Avr 2011, 19:06
Oui si nous choisissons bien les parties à séparer. Ton laby contient d'ailleurs un goto dans un Then sans son End : c'est une de choses qui pourraient peut-être être définitivement réglé.
Mais tu connais ton code mieux que moi.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Ven 08 Avr 2011, 10:43
Humm... Voilà qui est très intéressant... Développe un peu plus sur la façon de bien séparer le prgm stp... C'est vraiment un gain de temps pour le prgm ?
Ce n'est pas forcément 1 gain de temps; c'est juste pour ne pas avoir 1 code immense. De plus, 1 fois que la création de l'arène est terminée, il n'y a plus besoin de relancer ce programme. Voilà donc pourquoi il y a 2 programmes. Le
Code
prgmXXXXXXXX
Est le programme qui gère le mouvement. Il doit être lancé à la suite de l'autre.
Autorisation : Membre
Nb de messages : 3
Inscrit le : Ven 08 Avr 2011, 15:54
Posté le : Lun 11 Avr 2011, 19:51
j'ai remodifié la fin du programme de l'arène
Code
End
5->X
5->Y
prgmXXXXXXXX
Je l'ai remodifié et j'ai introduis 1 programme des textures des exolosions
Code
Y->A
X->B
Y->V
X->W
While 1
codeTouch(->K
If K=24 et Y>0 et pxl-Test(X+1,Y-4)=0
Then
X->B
Y-5->Y
Y+5->A
End
If K=26 et Y<90 et pxl-Test(X+1,Y+6)=0
Then
X->B
Y+5->Y
Y-5->A
End
If K=25 et X>0 et pxl-Test(X-3,Y)=0
Then
Y->A
X-5->X
X+5->B
End
If K=34 et X<55 et pxl-Test(X+7,Y)=0
Then
Y->A
X+5->X
X-5->B
End
If X#différent de#W ou Y#différent de#V
Texte(X,Y,"#thèta#
Texte(B,A,"#3 espaces#
If K=105
Then
Y->V
X->W
Texte(W,V,"°
prgmYYYYYYYY
End
If K=105
Texte(W,V,"°
If X=W et Y=V
TexteW,V,"°
End
End
Le programme des textures explosives (que des textures, pas des effets)
Code
0->A
For(J,0,10
69!
69!
69!
69!
69!
69!
69!
69!
69!
69!
69!
If J=10
Then
Texte(X,Y,"0
If pxl-Test(X+2,Y+6)=0
Texte(X,Y+5,"0
If pxl-Test(X+7,Y)=0
Texte(X+5,Y,"0
If pxl-Test(X-2,Y)=0
Texte(X-5,Y,"0
Texte(W,V,"#4 espaces#
End
End
Dites-moi comment faire pour propager les explosions, les faire disparaître sans détruire les murs et sans faire d'erreur domaine car je ne sais pas faire.