Récemment, j'ai découvert un autre de ces jeux à la con horriblement addictifs qui servent juste à passer le temps : le Cubefield.
Et donc j'en ai fait une version TI, que je vous poste ici.
L'avantage c'est qu'il est tout léger puisqu'il ne prend que 495 ko.
Alors pour éviter que vous ne recopiiez (oui oui il faut bien 2 "i" j'ai pas fait de faute )pour rien, j'ai vérifié et il marche.
Attention ici [A] est une matrice, que vous obtiendrez en faisant 2nde + x-1 (Donc Matrice) + 1.
Sto c'est la touche juste au-dessus de "On".
[THETA] c'est Alpha + 3.
Le [INFERIEUR A] se trouve en faisant 2nde + math + 5 et le [DIFFERENT DE] se trouve en faisant la même chose mais en remplacant le 5 par un 2.Puis pour le [SUPERIEUR A], pareil avec un 3. Et pour le =, pareil mais avec un 1. Non ,je ne vous prend pas pour des cons , mais c'est pour si y a des débutants qui veulent taper ce prog sur leur calto (on sait jamais, c'est beau de rêver )
prgmCUBEFILD
Code
Lbl [THETA]
Meny ("CUBEFIELD","JOUER",J,"SCORES",S,"QUITTER",Q
Lbl J
Clrhome
1[STO]Z
Delvar [A]
{8,16[STO]dim([A]
50[STO]N
0[STO]M
8[STO]X
For(W,1,7
Disp " "
End
Lbl 0
If Z/20=iPart(Z/20
N-10[STO]N
If M[INFERIEUR A]15 and Z/30=iPart(Z/30
M+1[STO]M
Disp " "
For(V,0,M
randInt (1,16[STO]S
Output(8,S,"[2NDE + 0 + [13 FOIS VERS LE BAS] (le petit carré de 9 pixels)]
1[STO][A](8,S
End
Output(1,X,"V
Output(1,1,Z
getKey[STO]K
X+(K=26 and X[DIFFERENT DE]16)-(K=24 and X[DIFFERENT DE]16)[STO]X
For(W,1,7
rowSwap([A],W,W+1)[STO][A]
End
For(W,1,16
0[STO][A](8,W
End
Z+1[STO]Z
For(W,0,N
End
If [A](1,X)=0
Goto 0
ClrHome
Output(1,X,"V
Output(8,S,"[2NDE + 0 + [13 FOIS VERS LE BAS] (le petit carré de 9 pixels)]
Output(1,1,Z
Output(4,4,"GAME OVER
Pause
ClrHome
Disp "SCORE : "
Output(1,9,Z
If Z[SUPERIEUR A]L6(11
Then
Z[STO]L6(11
Output(4,1,"RECORD BATTU !"
Pause
Goto [THETA]
Lbl S
ClrHome
Output(1,1,"VOTRE HIGH SCORE EST : "
Output(2,8,L6(11
Pause
Goto [THETA]
Lbl Q
ClrHome
Output(1,1,"
Mais je ne t'en veux pas : si tu l'as amélioré, c'est que tu as bossé toi-même.
Une mention de l'origine aurait tout-de-même été plus transparente.
---------------------- 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)
Excuse-moi Linkakro. C'est bien toi qui a fait ce prog
Mais je l'ai amélioré avec un menu, un mode scores, des petits carrés qui te foncent dessus au lieu des X, l'affichage du score en direct pendant la partie, le game over qui s'affiche dès que tu as perdu et quelques autres encore.
Mais le prog original vient effectivement de toi.
Autorisation : Membre
Nb de messages : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 24 Fév 2011, 13:19
Je compte appliquer tes améliorations de présentation (v2.3) à ma v4.2 pour faire la 4.3. J'en profiterai pour adopter "cubefield" plutôt que "fly".
---------------------- 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 : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 10 Mar 2011, 21:23
CUBEFIELD 4.3
Bien plus puissante et avec l'affichage en plus.
Je savais faire la présentation mais j'étais flemmard.
Vous pouvez remplacer les lFLY par la liste L6 pour les ti82basiques.
Code
"NOYAU CONCU PAR LINKAKRO
"PRESENTATION PAR F/X=X2
1->dim(lFLY
Lbl A
Menu("CUBEFIELD","JOUER",J,"SCORES",S,"QUITTER",Q
Lbl J
DelVar [A]
{7,16}->dim([A]
8->X
0->A
1->N
ClrHome
For(W,1,8
Disp ""
End
Lbl 1
A+1->A
A+1-7iPart(A/7)->B
getKey->K
min(16,max(1,X-(K=24)+(K=26->X
min(15,1+iPart(A/20->N
Disp ""
Output(1,X,"V
If [A](B,X
Goto Z
*row(0,[A],B)->[A] // *row = *ligne : matrice+droite+E
For(W,1,N
randInt(1,16->D
Output(8,D,"Ð // le petit carré du catalogue
1->[A](B,D
End
Goto 1
Lbl Z
Pause
ClrHome
Disp "GAME OVER
Disp "SCORE=",A
If lFLY(1)<A
Then
Disp "NOUVEAU RECORD
{A->lFLY
End
Lbl S
Disp "RECORD=",lFLY
DelVar [A]
Pause
Goto A
Lbl Q
---------------------- 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 : 80
Inscrit le : Jeu 24 Fév 2011, 19:12
Posté le : Lun 14 Mar 2011, 17:06
T'es gentil de me citer , mais j'ai changé de nom depuis (mais c'est pas grave).
Alors, j'ai essayé ca et c'est vrai que c'est plus rapide, mais on peut faire mieux:
Remplace:
Citer
Lbl Q
Par:
Citer
Lbl Q
ClrHome
Output(1,1," <- 1 espace
Remplace:
Citer
Disp "GAME OVER
Disp "SCORE=",A
If lFLY(1)<A
Then
Disp "NOUVEAU RECORD
{A->lFLY
End
Par:
Citer
Output(1,X,"V
Output(8,D,"Ð //le petit carré du catalogue
Output(4,4,"GAME OVER
Pause
ClrHome
Output(1,1,"SCORE="
Output(1,7,A
If lFLY(1)<A
Then
Output(2,1,"NOUVEAU RECORD !
A->lFLY
End
Pause
Goto A
Et autres encore, mais là j'ai la flemme de chercher, donc voilà.
---------------------- Aussi connu sous le nom de f/x=x².
Implosion Invité
Posté le : Mer 30 Nov 2011, 23:12
j'aime ce programme. Question du noob juste comme ça : C"EST QUOI LES TOUCHES POUR DEPLACER LE VAISSEAUUUUUUUUUUUUUUUUUUUU !!!!!!!!!???????
Merci de vos futures reponses.
Autorisation : Membre
Nb de messages : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mer 30 Nov 2011, 23:50
droite et gauche
---------------------- 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 : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 01 Déc 2011, 17:10
Les déplacements sont gérés dans cette partie :
Code
getKey->K
X-(K=24)+(K=26)->X
min(max(1,X),16->X
Ce code est conçu dans un éditeur 83 et testé sur ma 82statfr.
---------------------- 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 : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 01 Déc 2011, 17:16
Oui, je ne pensais pas à ça à l'époque.
J'édite.
---------------------- 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)
mh...j'ai utilisé le programme donné tout en haut moi, pas le tien...
Sinon a part ça j'ai remplacé la partie concernant le déplacement et ça marche toujours pas ..
Autorisation : Membre
Nb de messages : 3772
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 01 Déc 2011, 18:01
J'espère que tu as appliqué ce changement dans ma version 4.3 et non la 2.3 sinon c'est sûrement normal.
max et min sont dans le menu math
Les parenthèses et virgules doivent être rigoureusement respectées.
Sinon je ne vois pas... surtout que j'y ai joué.
---------------------- 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)