J'ai un nouveau projet de programme en cours, et le voici.
Il s'agit d'un jeu de dames, ou "CHECKERS" en anglais.
Le jeu est en projet, il n'est pas du tout finit, et pas du tout optimisé
Voici le code:
- Code:
:ClrHome
:DelVar [A]DelVar L1DelVar Z
:
:StoreGDB 1
:0→Xmin:1→∆X
:0→Ymax:‾62→Ymin
:ClrDraw
:Text(10,10,"Please wait
:Text(20,40,"a moment
:Shade(‾62,0
:Line(3,‾2,92,‾2,0
:Line(92,‾3,92,‾60,0
:Line(92,‾60,3,‾60,0
:Line(2,‾2,2,‾60,0
:Line(92,‾1,2,‾1,0
:For(A,4,46,14
: For(B,4,88,22
: Text(A,B," "
: End:End
:For(A,10,60,14
: For(B,15,92,22
: Text(A,B," "
: End:End
:Lbl 1
:Disp "CREATING LVL...
:{8,8}→dim([A]
:DelVar ADelVar B
:For(C,8,85,11
: A+1→A:C→L1(A
:End
:For(C,7,56,7
: B+1→B:‾C→L2(B
:End
:For(C,1,8
: 2→[A](1,C
: 2→[A](2,C
: 1→[A](7,C
: 1→[A](8,C
:End
:StorePic 1
:Lbl 2
:For(B,1,8
: For(A,1,8
: If [A](B,A)=2 and Pxl-Test(‾L2(B),L1(A:Pt-Off(L1(A),L2(B),2
: If [A](B,A)=2 and not(Pxl-Test(‾L2(B),L1(A:Pt-On(L1(A),L2(B),2
: If [A](B,A)=1 and Pxl-Test(‾L2(B),L1(A:Pt-Off(L1(A),L2(B),3
: If [A](B,A)=1 and not(Pxl-Test(‾L2(B)+1,L1(A)+1:Pt-On(L1(A),L2(B),3
: End:End
NB: Pour une raison que j'ignore, sur l'émulateur les personnes J1 (carré) et les J2 (croix) ne sont pas placés au centre de la case, ce qui est pourtant le cas sur ma vrai calculatrice
Les carrés jouent le rôles des pièces noires sur un vrai jeu de dame, et les croix au pièces blanches.
Le plateau est réduit à 8*8, ce qui est suffisant je pense pour pouvoir jouer correctement ( si je met 10*10, ce sera trop petit (la tailles des cases) ? J'attend vos avis )
La matrice [A] contient les cases: si la valeur vaut 0 , la case est libre. Si elle vaut 1, elle appartient au joueur 1 =, et elle vaut 2 , pareil
EDIT: J'ai commis une erreur dans l'agencement des pièce, je me suis pris sur un jeu d'échec :p Je corrige sa dès que possible
Infos: http://www.ffjd.fr/Web/index.php?page=reglesdujeu