AWARI.BAS, Jeu en PC-Basic
Jeux en GW-Basic (PC-Basic)

PC-BASIC

AWARI.BAS

Awari est un ancien jeu africain joué avec sept bâtons et trente-six pierres ou haricots disposés comme indiqué ci-dessus.

Le plateau est divisé en six compartiments ou fosses de chaque côté. De plus, il y a deux stands spéciaux aux extrémités. Un mouvement est effectué en prenant tous les haricots de n'importe quelle fosse (non vide) de votre côté.

En partant de la fosse à droite de celle-ci, ces fèves sont « semées » une dans chaque fosse en travaillant autour de la planche dans le sens inverse des aiguilles d'une montre.

Un tour consiste en un ou deux mouvements.

Si le dernier haricot de votre mouvement est semé dans votre propre maison, vous pouvez effectuer un second mouvement.

Si le dernier haricot semé lors d'un mouvement atterrit dans une fosse vide, à condition que la fosse opposée ne soit pas vide, tous les haricots de la fosse opposée, ainsi que le dernier haricot semé, sont «capturés» et déplacés vers la maison du joueur.

Lorsque l'un ou l'autre côté est vide, le jeu est terminé.

Le joueur avec le plus de haricots dans sa maison a gagné. Dans la version informatique, le tableau est imprimé en 14 chiffres représentant les 14 fosses.

Les fosses de votre côté (inférieur) sont numérotées de 1 à 6 de gauche à droite.

Les fosses de mon côté (de l'ordinateur) sont numérotées à partir de ma gauche (votre droite).

Pour effectuer un mouvement, vous tapez le numéro d'une fosse. Si le dernier haricot atterrit chez vous, l'ordinateur tape "ENCORE ?" et vous tapez ensuite votre deuxième coup.

Le mouvement de l'ordinateur est tapé, suivi d'un schéma du plateau dans son nouvel état. L'ordinateur vous offre toujours le premier coup. Ceci est considéré comme un léger avantage.

Il existe un mécanisme d'apprentissage dans le programme qui améliore le jeu de l'ordinateur à mesure qu'il joue à plus de jeux. Cette version d'Awari est adoptée à partir d'une version écrite à l'origine par Geoff Wyvill de Bradford, Yorkshire, Angleterre.

1 CLS
5 PRINT TAB(34);"AWARl"
7 PRINT TAB(15);"CREATIVE COMPUTING MQRRISTOWN, NEW JERSEY"
10 DATA 0
15 DIM B(13),G(13),F(50):READ N
20 PRINT:PRINT:E=0
25 FOR I=0 TO 12:B(I)=3:NEXT I
30 C=0:F(N)=0:B(l3)=0:B(6)=0
35 GOSUB 500
40 PRINT "YOUR MOVE";:GOSUB 110
45 IF E=0 THEN 80
50 IF M=H THEN GOSUB 100
55 IF E=0 THEN 80
60 PRINT "MY MOVE IS ";:GOSUB 800
65 IF E=0 THEN 80
70 IF M=H THEN PRINT ",";:GOSUB 800
75 IF E>0 THEN 35
80 PRINT:PRINT"GAHE OVER"
85 D=B(6)-B(13):IF D<0 THEN PRINT "I WIN BY";-D;"POINTS":GOTO 20
90 N=N+1:IF D=0 THEN PRINT "DRAWN GAME":GOTO 20
95 PRINT "YOU WIN BY";D;"POINTS":GOTO 20
100 PRINT "AGAIN";
110 INPUT M:IF M<7 THEN IF M>0 THEN M=M-1:GOTO 130
120 PRINT "ILLEGAL M0VE":GOTO 100
130 IF B(M)=0 THEN 120
140 H=6:GOSUB 200
150 GOTO 500
200 K=M:GOSUB 600
205 E=0:IF K>6 THEN K=K-7
210 C=C+1:IF C<9 THEN F(N)=F(N)*6+K
215 FOR I=0 TO 5:IF B(I)<>0 THEN 230
220 NEXT I
225 RETURN
230 IF B(I+7)<>0 THEN E=1
235 GOTO 220
500 PRINT:PRINT" ";
505 FOR I=12 TO 7 STEP -1:GOSUB 580
510 NEXT I
515 PRINT:I=13:GOSUB 580
520 PRINT " ";:PRINT B(6):PRINT " ";
525 FOR I=0 TO 5:GOSUB 580
530 NEXT I
535 PRINT:PRINT:RETURN
580 IF B(I)<10 THEN PRINT " ";
585 PRINT B(I);:RETURN
600 P=B(M):B(M)=0
605 FOR P=P TO 1 STEP -1:M=M+1:IF M>13 THEN M=M-14
610 B(M)=B(M)+1:NEXT P
615 IF B(M)=1 THEN IF M<>6 THEN IF M<>13 THEN IF B(12-M)<>0 THEN 625
620 RETURN
625 B(H)=B(H)+B(12-M)+1:B(M)=0:B(12-M)=0:RETURN
800 D=-99:H=13
805 FOR I=0 TO 13:G(I)=B(I):NEXT I
810 FOR J=7 TO 12:IF B(J)=0 THEN 885
815 G=0:M=J:GOSUB 600
820 FOR I=0 TO 5:IF B(I)=0 THEN 845
825 L=B(I)+I:R=0
830 IF L>13 THEN L=L-14:R=1:G0T0 830
835 IF B(L)=0 THEN IF L<>6 THEN IF L<>13 THEN R=B(12-L)+R
840 IF R>Q THEN Q=R
845 NEXT I
850 Q=B(13)-B(6)-Q:IF C>8 THEN 875
855 K=J:IF K>6 THEN K=K-7
860 FOR I=0 TO N-1:IF F(N)*6+K=INT(F(I)/6^(7-C)+.1) THEN Q=Q-2
870 NEXT I
875 FOR I=0 TO 13:B(I)=G(I):NEXT I
880 IF Q>=D THEN A=J:D=Q
885 NEXT J
890 M=A:PRINT CHR$(42+M);:GOTO 200
900 FOR I=0 TO N-1:PRINT B(I):NEXT I
999 END

 

 

 

 

 

 

 

Recherche personnalisée