Poster un nouveau sujet Poster une réponse
(15) Memory
Auteur Message
Belvar



Autorisation : Membre
Nb de messages : 57
Inscrit le : Lun 09 Fév 2009, 15:46
Posté le : Dim 07 Jui 2009, 11:15   Citer 

Voici un petit jeu de memory que j'ai fait dernièrement.
Pour ceux qui ne connaissent pas le memory, le but est de trouver deux cartes similaires, en piochant les cartes deux par deux.

Dans cette version sur calculatrice, on choisi les cartes avec un curseur et on appuie sur [Enter] ou [2nd] pour sélectionner la carte. Une fois sélectionné deux cartes, si elles sont différentes, appuyez sur [enter] pour les remettre face cachées et recommencer avec d'autres cartes, et si elles sont identiques, continuez à chercher des paires.
Le mode un joueur permet de jouer en essayant de faire le moins de coups possibles, le score étant indiqué pendant et en fin de partie.
En mode deux joueur, le J1 commence à jouer, et, si les cartes sont différentes, il passe la calculatrice à l'autre joueur, si elles sont identiques, le joueur gagnera un point et continuera de jouer.

Le mode un joueur pèse 645 octets, le mode deux joueur pèse 772 octets.
Le "launcher" qui permet de choisir entre les deux modes pèse 108 octets.

Voici tous les programmes en .83p

Et les voici en texte :

Mode un joueur :

Code

ClrHome
{5,4}->dim([A]
Fill(0,[A]
0->X:0->Y
Output(4,1,"CHARGE LA GRILLE
Output(5,7,"...
For([Téta],0,19
([Téta]+1)*5->N
Output(6,5,N
Output(6,8,"/100
Lbl 0
randInt(1,4->X
randInt(1,5->Y
If [A](Y,X)[Différent de]0:Goto 0
If [Téta]≤9:[Téta]->[A](Y,X)
If [Téta]>9:[Téta]-10->[A](Y,X
End
ClrHome
For([Téta],1,5
For(I,1,4
Output([Téta],2I,"L
End:End
2->X:3->Y:0->C
0->M:0->T:0->S
0->E
Lbl 1
Output(8,1,"COUPS :
Output(8,9,E
Output(Y,2X-1,">
0->K
While K=0
getKey->K
End
If K=105 or K=21:Goto 2
Output(Y,2X-1,"
If K=24:X-1->X
If K=25:Y-1->Y
If K=26:X+1->X
If K=34:Y+1->Y
If X=0:4->X
If X=5:1->X
If Y=0:5->Y
If Y=6:1->Y
Goto 1
Lbl 2
If M=1 and X=S and T=Y:Goto 1
If [A](Y,X)=(-)1:Goto 1
Output(Y,2X,[A](Y,X
If M=0:Then
X->S:Y->T:1->M
Goto 1:End
If [A](Y,X)[Différent de][A](T,S):Then
E+1->E
0->K
Pause
Output(T,2S,"L
Output(Y,2X,"L
Else:C+1->C
(-)1->[A](Y,X
(-)1->[A](T,S
End
0->M
If C=10:Goto G
Goto 1
Lbl G
ClrHome
Output(2,1,"BRAVO !         TU A FINI LE    MEMORY EN       COUPS
Output(4,11,E
Pause :ClrHome



Le mode deux joueur :


Code

ClrHome
{5,4}->dim([A]
Fill(0,[A]
0->X:0->Y
Output(4,1,"CHARGE LA GRILLE
Output(5,7,"...
For([Téta],0,19
([Téta]+1)*5->N
Output(6,5,N
Output(6,8,"/100
Lbl 0
randInt(1,4->X
randInt(1,5->Y
If [A](Y,X)[Différent de]0:Goto 0
If [Téta]≤9:[Téta]->[A](Y,X)
If [Téta]>9:[Téta]-10->[A](Y,X
End
ClrHome
For([Téta],1,5
For(I,1,4
Output([Téta],2I,"L
End:End
2->X:3->Y
0->B:0->C:1->J
0->M:0->T:0->S
0->E:0->F
Output(7,1,"POINTS J1 :
Output(8,1,"POINTS J2 :
Output(2,12,"TOUR
Output(3,14,"DE
Lbl 1
If J=1:Output(4,14,"J1
If J=(-)1:Output(4,14,"J2
Output(7,13,E
Output(8,13,F
Output(Y,2X-1,">
0->K
Pause
If K=105 or K=21:Goto 2
Output(Y,2X-1,"
If K=24:X-1->X
If K=25:Y-1->Y
If K=26:X+1->X
If K=34:Y+1->Y
If X=0:4->X
If X=5:1->X
If Y=0:5->Y
If Y=6:1->Y
Goto 1
Lbl 2
If M=1 and X=S and T=Y:Goto 1
If [A](Y,X)=(-)1:Goto 1
Output(Y,2X,[A](Y,X
If M=0:Then
X->S:Y->T:1->M
Goto 1:End
If [A](Y,X)[Différent de][A](T,S):Then
Pause
Output(T,2S,"L
Output(Y,2X,"L
(-)J->J
Else
C+1->C
If J=1:E+1->E
If J=(-)1:F+1->F
(-)1->[A](Y,X
(-)1->[A](T,S
End
0->M
If C=10:Goto G
Goto 1
Lbl G
ClrHome
If E=F:Then:Output(2,1,"EX-AEQUO
Else
Output(3,1,"LE JOUEUR       GAGNE LA PARTIE
If E>F:Output(3,11,1
If F>E:Output(3,11,2
Pause :ClrHome



Et le launcher :


Code
ClrHome
Lbl 0
Menu("MEMORY","1 JOUEUR",1,"2 JOUEUR",2,"QUITTER",3
Lbl 1
prgmMEMORY
Goto 0
Lbl 2
prgmMEMORY2J
Goto 0
Lbl 3
ClrHome
Output(1,1,"



 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