Poster un nouveau sujet Poster une réponse
Bomberman graphique incomplet
Auteur Message
Gwénaël
Invité
Posté le : Mer 06 Avr 2011, 18:26   Citer 

J'ai décidé de refaire 1 bomberman car c'est trop petit sur 1 écran de 8*16 cases. Voilà où j'en suis

Le programme qui gère l'arène


Code

0->Xmin
94->Xmax
0->Ymin
62->Ymax
EffDessein
AxesNaff
FonctNaff
For(A,0,62
Ligne(5,A,88,A,0
Ligne(5,A-1,88,A-1,0
Ligne(5,A-2,88,A-2,0
Ligne(5,A-3,88,A-3,0
Ligne(5,A-4,88,A-4,0
Ligne(5,A-5,88,A-5,0
End
For(A,9,94,10
Ligne(A,2,A,57,0
Ligne(A-1,2,A-1,57,0
Ligne(A-2,2,A-2,57,0
Ligne(A-3,2,A-3,57,0
Ligne(A-4,2,A-4,57,0
Ligne(A-5,2,A-5,57,0
End
prgmXXXXXXXXX



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

  Haut de page Bas de page 
 
Gwénaël
Invité
Posté le : Mer 06 Avr 2011, 18:28   Citer 

J'ai oublié: il faut mettre 2 end à la fin du 2e programme pour qu'il tourne en boucle correctement

  Haut de page Bas de page 
 
godzlove



Autorisation : Membre
Nb de messages : 44
Inscrit le : Sam 16 Oct 2010, 10:29
Posté le : Mer 06 Avr 2011, 20:25   Citer 

je connais pas mais alors pas du tout les ti-84, en revanche tu peux économiser pas mal d'octets avec des "for" :


Code
0->Xmin
94->Xmax
0->Ymin
62->Ymax
EffDessein
AxesNaff
FonctNaff
For(A,0,62
For(B,0,5
Ligne(5,A-B,88,A-B,0
End:End
For(A,9,94,10
For(B,0,5
Ligne(A-B,2,A-B,57,0
End:End
prgmXXXXXXXXX



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)

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Gwénaël
Invité
Posté le : Mer 06 Avr 2011, 21:07   Citer 

Vu la taille très courte, l'économie doit être considérable (le programme prenant 265 octets avec 1 nom de 2 lettres), le 2e en prend 309 tel qu'el

  Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 07 Avr 2011, 1:11   Citer 


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)

exemple : snake de Vibra

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)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
ld
Avatar

Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Jeu 07 Avr 2011, 8:39   Citer 

C'est vrai çà ? Pense tu que cela aura un effet positif si je découpe mon Labigénérateur en deux prgm ?
Merci d'avance...

----------------------
Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 07 Avr 2011, 19:06   Citer 

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)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
ld
Avatar

Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Ven 08 Avr 2011, 10:43   Citer 

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 ?

----------------------
Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie
 Adresse email Haut de page Bas de page 
 
Gwénaël
Invité
Posté le : Ven 08 Avr 2011, 15:35   Citer 

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.

  Haut de page Bas de page 
 
Persalteas



Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
Posté le : Sam 09 Avr 2011, 9:06   Citer 


Citer

j'ai la Ti-84+ donc il est possible d'introduire les notions de temps pour les explosions.




tu sais utiliser getTime et les listes ?

 Adresse email Haut de page Bas de page 
 
Akmdad



Autorisation : Membre
Nb de messages : 717
Inscrit le : Mar 22 Jui 2010, 21:03
Posté le : Sam 09 Avr 2011, 20:49   Citer 

ca a l'air sympa winkle.gif bonne chance.

----------------------
retrouvez moi sur twitter!!!


j'ai une ti 82 stats fr et une ti89 titanium happy.gif
 Adresse email Haut de page Bas de page 
 
Gwénaël



Autorisation : Membre
Nb de messages : 3
Inscrit le : Ven 08 Avr 2011, 15:54
Posté le : Lun 11 Avr 2011, 19:51   Citer 

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.

 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink