Poster un nouveau sujet Poster une réponse
(JEU) BOUGE! (JEU)
Auteur Message
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Sam 03 Sep 2011, 14:18   Citer 

Bonjour à tous voici mon premier jeu que je vous propose de tester et de m'en dire des nouvelles. Le but du jeu est d'attraper le plus de "*" avec un "0" dans une durée de temps limité.

Nom: BOUGE!
Taille: 555 octets
Auteur: S.L

-> : flèche sto
[-] : signe négatif qui se trouve en dessous du 3
>= : signe plus grand ou égal (2nde puis math puis 4)
TETA : signe teta (alpha+3)
TI Stats.fr (fonctions en Français)

Code
PROGRAM:BOUGE
:EffEcr
:Output(1,1,"----------------           //16 tirets
:Output(2,6,"BOUGE!
:Output(4,3,"GAME BY S.L
:Output(5,2,"(C) 2011
:Output(7,1,"POUR TI 82/83
:Output(8,1,"----------------          //16 tirets
:Pause
:entAléat(0,6)->X
:entAléat(0,14)->Y
:100->F:0->E:4->A:8->B:3->Q:3->R
:EffEcr
:Lbl 5
:R-O.1->R
:If R=2:2->Q
:If R=1:1->Q
:If R=0:0->Q
:If R=[-]O.2:Output(4,7,"GO!
:If R=[-]1:Goto 1
:Output(4,8,Q
:Goto 5
:Lbl 1
:F-1->F
:Output(8,9,"TEMPS:
:Output(8,15,F
:If Y=16:Y-1->Y
:If A<1:A+7->A
:If A>7:A-7->A
:If B<1:B+16->B
:If B>16:B-16->B
:Output(A,B,"O
:codeTouche->K
:If K=25:A-1->A
:If K=34:A+1->A
:If K=24:B-1->B
:If K=26:B+1->B
:If K>=24:EffEcr
:If K=45:Stop
:If X+1=A et Y+1=B
:Then
:E+1->E
:entAléat(0,6)->X
:entAléat(0,14)->Y
:End
:Output(8,7,E
:If E>TETA
:E->TETA
:If F=0:EffEcr
:If F=0:Disp "TERMINE!","SCORE:",E,"HI SCORE:",TETA
:If F=0:Stop
:Goto 1


Pour quitter en cours de partie, faîtes "annul".
Voilà, j'ai juste 3 questions:
-Comment ralentir le temps?
-Comment faire pour ne pas laisser les traces du "0" et du "*" lorsqu'ils changent de place (ici j'utilise EffEcr mais sa fait clignoter le jeu à chaque fois que l'on se déplace)?
-Comment créer un hi score avec une liste (ici je prend la valeur de TETA mais il m'arrive que je m'en serve et sa redéfinit tout le temps sa valeur)?
Merci et bon jeu, je vais peut être traduire d'ici peu le jeu en anglais.

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 Adresse email Haut de page Bas de page 
 
Gorman14
Invité
Posté le : Sam 03 Sep 2011, 19:48   Citer 

Il faut que tu créés 1 fonction d'effacement par example


Code

:If K=25:Then
:A-1->A
:B->U
:End
:If K=34:Then
:A+1->A
:B->U
:End
:If K=24:Then
:B-1->B
:A->H
:End
:If K=26:Then
:B+1->B
:A->H
:End
:OutputU,H," [1espace]// ou tu mets H,U en fonction que ton A et ton B soient l'bscisse ou l'ordonnée



  Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 03 Sep 2011, 20:02   Citer 

Pour la sauvegare du meilleur score, modifie le programme de la manière suivante :
1) ajoute au tout début :
Code
:1->dim(lBOUGE)


le "dim(" est dans [2nde][stats][droite][3]
le "l" de "lBOUGE" représente le L que tu optient avec [2nde][stats][droite][alpha][matrice]

2) modifie la fin comme suit :

Code
:If E>lBOUGE
:E->lBOUGE(1
:If F=0:EffEcr
:If F=0:Disp "TERMINE!","SCORE:",E,"HI SCORE:",lBOUGE(1
:If F=0:Stop
:Goto 1






Pour ralentir, rajoute :

Code
:For(M,1,20:End


(20 peut être remplacé par n'importe quelle autre valeur, le ralentissement est environt proportionnel au nombre qui remplace 20).

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Gorman 14
Invité
Posté le : Sam 03 Sep 2011, 20:45   Citer 

Désolé je me suis trompé; il faut mettre


Code
:If K=25:Then
:A->U
:A-1->A
:End
:If K=34:Then
:A->U
:A+1->A
:End
:If K=24:Then
:B->H
:B-1->B
:End
:If K=26:Then
:B->H
:B+1->B
:End
:OutputU,H," [1espace]// ou tu mets H,U en fonction que ton A et ton B soient l'bscisse ou l'ordonnée



Voila, ça devrait marcher pour effacer le caractère qu'on déplace

  Haut de page Bas de page 
 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Sam 03 Sep 2011, 20:54   Citer 

Merci sandro, mais sa ne serais pas E>lBOUGE(1 au lieu de E>lBOUGE? J'ai aussi fait le ralentissement, sa ne ralentit pas que le temps mais tout le jeu, tu connaitrais pas un moyen de ralentir que le temps?
Merci d'avance.

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 Adresse email Haut de page Bas de page 
 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Sam 03 Sep 2011, 21:08   Citer 

Désolé Gorman 14, mais sa ne marche je sais si c'est due au ralentissement mais sa n'efface qu'une sur sept traces. karate.gif

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 03 Sep 2011, 21:19   Citer 


Citer
sa ne serais pas E>lBOUGE(1 au lieu de E>lBOUGE?


Si, désolé.

Sinon pour le temps, je n'ai pas bien compris le problème : le temps doit il ressembler à la seconde? n'évoluer qu'une execution de la boucle sur 5?

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Sam 03 Sep 2011, 22:27   Citer 

Je voudrais que ce soit des secondes, sans pour autant ralentire le jeu. godgrace.gif

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 Adresse email Haut de page Bas de page 
 
Gorman 14
Invité
Posté le : Sam 03 Sep 2011, 22:49   Citer 

Si tu as la Ti 84 +, tu peux utiliser la variable Actminutr pour les secondes

  Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Sam 03 Sep 2011, 23:52   Citer 

Merci de ta précision Gorman 14 mais c'est HS puisque ce forum est consacré aux modèles 82/STATS/FR donc sans horloge.

Sangohan38

 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 : Dim 04 Sep 2011, 2:46   Citer 

J'ai bricolé ça selon mes habitudes. Mais pas testé.
Il ne résoud pas de problème de temps.


Code
1->dim(lBOUGE
entAléat(1,7->X
entAléat(1,15->Y
DelVar E100->F:4->A:8->B
EffEcr

For(Q,3,0,-1
Output(4,8,Q
69!
End
Output(4,7,"GO!
69!

EffEcr
Output(4,8,"O
Output(Y,X,"*
While F
F-1->F
Output(8,9,"TEMPS:
Output(8,15,F
codeTouche->K
If somme(K={24,25,26,34    // sert seulement à éviter un clignotement de "O"
Output(A,B," "
A-(K=25)+(K=34->A
B-(K=24)+(K=26->B
A+7(A<1)-7(A>7->A
B+16(B<1)-16(B>16->B
Output(A,B,"O
If K=45:Stop
If X=A et Y=B
Then
E+1->E
entAléat(1,7->X
entAléat(1,15->Y
Output(Y,X,"*
End
Output(8,7,E
End

EffEcr
If E>lBOUGE(1
{E->lBOUGE
Disp "TERMINE!","SCORE:",E,"HI SCORE:",lBOUGE



----------------------
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 
 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Dim 04 Sep 2011, 12:19   Citer 

Super linkakro, mais tu ne pourrais pas écrire ton nouveau code en entier? Car je ne sais pas quoi enlever... Merci d'avance.

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 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 : Dim 04 Sep 2011, 13:44   Citer 

Mon code est déjà entier ahh.gif
J'ai réécris des lignes mais surtout changé l'ordre de certaines comandes.

----------------------
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 
 
Google_AdSense



Publicité    



 
S.L



Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
Posté le : Dim 04 Sep 2011, 15:59   Citer 

Ah, pourtant j'ai l'impression qu'il manque des choses, il y a des trous et un moment il y a marqué 69! (qu'est ce c'est?). Donc tu es sure que si je recopie exactement ton code il n'y aura pas de probleme mis a part du temps? beer.gif

----------------------
L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël

SL-TIProg :site en cours de création.
 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 : Dim 04 Sep 2011, 17:18   Citer 

Les vides dans mon code servent à distinguer des parties.

69! est un des moyens efficaces pour temporiser un programme. C'est la factorielle 69, calcul lourd pour les calculatrices.
Si 69! ralentit trop, réduit le nombre 69. (51! par exemple)
Les factorielles sont moins précises que les For pour temporiser (ralentir) mais plus légères.

----------------------
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 
 
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