PC-E500 (et autres écrans 4 lignes) jeu Tirs Croises

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Répondre
Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

PC-E500 (et autres écrans 4 lignes) jeu Tirs Croises

Message par Paul Tergeist » 26 nov. 2007 19:33

Bonjour,

Vous trouverez-ci-dessous une adaptation d'un programme paru dans
l'ancienne revue Jeux&Stratégie n°7.

Dans le jeu de Tirs Croisés, vous affrontez votre calculatrice
dans un carré de 5 unités. Les valeurs constituant ce carré sont
prises au hasard.

Le premier joueur tire sur une case du carré.

Son total est augmenté d'autant et c'est au second joueur de tirer
une case. Mais elle doit être dans la même ligne ou la même colonne
que le tir précédent.

Et ainsi de suite...

Le jeu est terminé lorsqu'on ne peut plus tirer de case.
(cela peut arriver en moins de 25 coups, car le PC-E500
a tendance a écourter les parties, vous comprendrez en jouant)

Le programme gère une variable "HANDICAP" que l'on attribue au
PC-E500. Cet handicap est un nombre de point qui est affecté au
PC-E500 en début de partie.

Présentation de l'interface:
1) après une courte présentation vous aurez un menu principal
proposant les options suivantes:
1:Règles : vous énonce de manière succinte les règles du jeu
2:Jouer : permet d'entrer dans la phase de jeu (et de ne plus en sortir)
3:Quitter : pour quitter le menu
S:pour avoir du son ou pas
+ et - : pour augmenter ou baisser le handicap accordé au PC-E500
A:pour permettre la régulation automatique du handicap
(selon le résultat de la partie, le handicap accordé au PC-E500
augmente ou baisse)

Pendant la partie, un petit smiley vous indiquera l'humeur du PC-E500.

Vous déplacez le curseur avec les flèches
directionnelles et vous validez votre coup avec la touche CR.

Une fois la partie terminée, votre PC-E500 n'attend que la pression
d'une touche avant de démarrer une nouvelle partie. Il est insatiable.
Et bien sur, il alterne le joueur qui démarre la partie. Si vous laissez
l'autorégulation du handicap vous aurez forcément des parties
avec de fantastiques finales. (oui fantastiques, il m'arrive de faire
10 parties de suite)

Jusqu'à quelle valeur de handicap irez-vous ? Le défi est lancé !!!
(moi pour l'instant c'est 7 mon maximum)

Dernier point : il se peut fort que vous vous retrouviez dans des
situations où l'ordinateur ne vous laisse que des mauvais coups
et lui des bons. C'est normal, c'est fait exprès... :-)

Amusez-vous bien...

Paul - tireur de case depuis 1943

P.S. : le graphisme du zéro est rangé dans la variable d$(0) en ligne 70.
Je l'ai réduit à un point pour "aérer" le tableau mais si vous
désirez voir un petit zéro, vous pouvez mettre d$(0)="1F111F".

Code : Tout sélectionner

10 CLS :CLEAR :HANDICAP=5:SON=10:REG=1:RANDOMIZE
20 SM1$="60100C042271210101217122040C1060
30 SM2$="07083024489090909090904824300807
40 SM3$="07083020408084848484804020300807
50 SM4$="07083020488484848484844820300807
60 DIM E(4,4):LOCATE 11,0:PRINT "* TIRS CROISES *":PRINT "Un jeu strategique paru dans le magazine"
70 DIM D$(9)*6:D$(0)="000400":D$(1)="00001F":D$(2)="1D1517":D$(3)="11151F":D$(4)="07041E":D$(5)="17151D":D$(6)="1F151D":D$(7)="011D03":D$(8)="1F151F":D$(9)="17151F"
80 LOCATE 10,2:PRINT "Jeux&Strategie no 7":LOCATE 7,3:WAIT 20:PRINT "Adaptation : Paul Tergeist"
90 A$=INKEY$ :IF A$=""THEN 90
100 CLS :WAIT 0:LOCATE 10,0:PRINT "* MENU PRINCIPAL *"
110 LOCATE 5,1:PRINT "Regles....1  Son.......S:";:IF SON>0 PRINT "Oui" ELSE PRINT "Non"
120 LOCATE 5,2:PRINT "Jouer.....2  Handicap.+-:";HANDICAP:LOCATE 5,3:PRINT "Quitter...3  Autoregul.A:";:IF REG=1PRINT "Oui"ELSE PRINT "Non"
130 A$=INKEY$ :IF A$="" THEN 130
140 BEEP 1,80,SON
150 IF A$="1" THEN 240
160 IF A$="2" THEN 380
170 IF A$="3" THEN 370
180 IF A$="+"LET HANDICAP=HANDICAP+1:GOTO 100
190 IF A$="-"LET HANDICAP=HANDICAP-1:GOTO 100
200 IF A$="S"LET SON=10-SON:GOTO 100
210 IF A$="A"LET REG=1-REG:GOTO 100
220 GOSUB 750
230 GOTO 130
240 CLS :PRINT "Le but de ce jeu est de marquer plus":PRINT "de points que la machine en tirant"
250 PRINT "sur un carre de 25 cases contenant":WAIT 20:PRINT "des chiffres entre 1 et 9
260 A$=INKEY$ :IF A$=""THEN 260
270 BEEP 1,80,SON
280 CLS :WAIT 0:PRINT "Les joueurs ne peuvent tirer que dans lameme ligne ou la meme colonne que":PRINT "l'adversaire au coup precedent.
290 WAIT 20:PRINT "Alors choisissez bien votre case...
300 A$=INKEY$ :IF A$=""THEN 300
310 BEEP 1,80,SON
320 WAIT 0:CLS :PRINT "Pendant le jeu vous pouvez egalement":PRINT "utiliser la touche (R) pour demarrer
330 WAIT 20:PRINT "une nouvelle partie"
340 A$=INKEY$ :IF A$=""THEN 340
350 BEEP 1,80,SON
360 GOTO 100
370 CLS :PRINT "A bientot...":END
380 CLS :WAIT 30:PRINT "C'est ";R$;"parti..."
390 FOR X=0TO 4:FOR Y=0TO 4:E(X,Y)=RND 9:NEXT Y:NEXT X
400 C=0:VT=0:MT=0:CX=0:CY=0:IF TJ>0 LET TJ=3-TJ:T=TJ:GOTO 470
410 CLS :WAIT 0:PRINT "Qui commence ?
420 PRINT "1:L'Etre Humain
430 PRINT "2:Le PC-E500
440 INPUT "Quel est votre choix ? ";T
450 IF T<>1 AND T<>2 THEN 440
460 BEEP 1,80,SON:TJ=T
470 LX=-1:LY=-1:MT=HANDICAP
480 CLS :WAIT 0:FOR X=0TO 4:FOR Y=0TO 4
490 GCURSOR (X*8+4,Y*6+7):GPRINT D$(E(X,Y))
500 NEXT Y:NEXT X
510 C=C+1:LOCATE 10,0:PRINT "Coup no";C:LOCATE 27,0:PRINT "Handicap";HANDICAP
520 LOCATE 10,1:PRINT "Votre total ";VT
530 LOCATE 10,2:PRINT "Mon total   ";MT
540 LOCATE 10,3
550 IF T=1 PRINT "A vous de jouer "
560 IF T=2 PRINT "A moi de jouer  "
570 GCURSOR (180,18):GPRINT SM1$:GCURSOR (180,25)
580 IF VT<MT GPRINT SM2$
590 IF VT=MT GPRINT SM3$
600 IF VT>MT GPRINT SM4$
610 IF LX=-1 THEN 630
620 S=0:FOR I=0TO 4:S=S+E(I,LY)+E(LX,I):NEXT I:IF S=0 THEN 1000
630 IF T=1 GOSUB 720 ELSE 820
640 A$=INKEY$ :IF A$=""THEN 640
650 IF A$=CHR$ (14) AND CX<4 GOSUB 720:CX=CX+1:GOSUB 720:BEEP 1,8,SON:GOSUB 750
660 IF A$=CHR$ (15) AND CX>0 GOSUB 720:CX=CX-1:GOSUB 720:BEEP 1,8,SON:GOSUB 750
670 IF A$=CHR$ (5) AND CY<4 GOSUB 720:CY=CY+1:GOSUB 720:BEEP 1,8,SON:GOSUB 750
680 IF A$=CHR$ (4) AND CY>0 GOSUB 720:CY=CY-1:GOSUB 720:BEEP 1,8,SON:GOSUB 750
690 IF A$="R"LET R$=R$+"Re-":GOTO 380
700 IF A$=CHR$ (13) BEEP 1,20,SON:GOTO 770
710 GOTO 640
720 Y=CY*6+5:FOR X=CX*8+3 TO CX*8+7
730 IF POINT (X,Y)=0 PSET (X,Y) ELSE PRESET (X,Y)
740 NEXT X:RETURN
750 B$=INKEY$ :IF B$<>""THEN 750
760 RETURN
770 IF LX=-1 THEN 800
780 IF E(CX,CY)=0 LOCATE 10,3:PRINT "Non deja joue...":BEEP 1,100,3*SON:GOTO 640
790 IF CX<>LX AND CY<>LY LOCATE 10,3:PRINT "Lig";LY+1;" ou Col";LX+1;"  ":BEEP 1,100,3*SON:GOTO 640
800 GOSUB 720:GOSUB 750
810 VT=VT+E(CX,CY):E(CX,CY)=0:T=3-T:LX=CX:LY=CY:GOTO 480
820 IF LX=-1 THEN 1050
830 CJ$="":SV$="":MV=0:FOR X=0TO 4:IF E(X,LY)>MV LET MV=E(X,LY)
840 NEXT X
850 FOR Y=0TO 4:IF E(LX,Y)>MV LET MV=E(LX,Y)
860 NEXT Y:IF MV=0 THEN 1000
870 FOR X=0TO 4:IF E(X,LY)>0 LET EX=X:EY=LY:GOSUB 910
880 NEXT X
890 FOR Y=0TO 4:IF E(LX,Y)>0 LET EX=LX:EY=Y:GOSUB 910
900 NEXT Y:GOTO 960
910 S=E(EX,EY):V=0:FOR I=0TO 4:IF E(I,EY)>V AND I<>EX LET V=E(I,EY)
920 NEXT I
930 FOR J=0TO 4:IF E(EX,J)>V AND J<>EY LET V=E(EX,J)
940 NEXT J:S=S-V
950 CJ$=CJ$+CHR$ (EX*10+EY):SV$=SV$+CHR$ (20+S):RETURN
960 MV=0:IM=0:FOR I=1TO LEN (SV$):IF ASC (MID$ (SV$,I,1))>MV LET MV=ASC (MID$ (SV$,I,1)):IM=I
970 NEXT I:I=ASC (MID$ (CJ$,IM,1)):MX=INT (I/10):MY=I-10*MX
980 CX=MX:CY=MY:GOSUB 720:LOCATE 10,3:WAIT 80:BEEP 1,20,SON:PRINT "Je joue en ";MY+1;",";MX+1:LX=MX:LY=MY
990 MT=MT+E(MX,MY):E(MX,MY)=0:T=3-T:GOTO 480
1000 GOSUB 720:LOCATE 10,3:WAIT 50:IF MT>VT PRINT "Vous avez perdu!":BEEP 3,10,SON:IF REG=1 LET HANDICAP=HANDICAP-1
1010 IF MT<VT PRINT "Vous avez gagne!":BEEP 3,100,SON:IF REG=1 LET HANDICAP=HANDICAP+1
1020 IF MT=VT PRINT "Egalite!        ":BEEP 1,10,SON
1030 A$=INKEY$ :IF A$=""THEN 1030
1040 R$=R$+"Re-":GOTO 380
1050 CJ$="":SV$="":MV=0
1060 FOR X=0TO 4:FOR Y=0TO 4:IF E(X,Y)>MV LET MV=E(X,Y):MX=X:MY=Y
1070 NEXT Y:NEXT X:GOTO 980

Dernière édition par Paul Tergeist le 05 déc. 2007 16:39, édité 1 fois.
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
pstriolo
Modérateur
Modérateur
Messages : 3477
Inscription : 22 mai 2002 07:05
Localisation : Dans ton cul... au fond à gauche

Message par pstriolo » 26 nov. 2007 21:00

smague sors de ce corps, on t'a reconnu.

Philou
Tout près de la Garonne
Non loin des Pyrénées
Il existe une ville
Toulouse où je suis né
Toulouse et son équipe
Son stade des 7 deniers
Les toulousains arrivent
Ils vont tout remporter

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Message par Paul Tergeist » 27 nov. 2007 14:58

Excellent Philou !

Je suis en train de regarder et en fait la ligne 70 DIM...
s'est fait coupée... Elle est trop longue à mon avis.

Sale habitude que j'ai...

Paul - Mauvais habitudeur depuis 1834
Dernière édition par Paul Tergeist le 28 nov. 2007 18:00, édité 1 fois.
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Message par charognard » 27 nov. 2007 20:19

je viens de le downloader sur mon 1600
je teste cela
et je te tiens au courant

merci paul

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Message par Paul Tergeist » 27 nov. 2007 22:42

charognard a écrit :je viens de le downloader sur mon 1600
je teste cela
et je te tiens au courant

merci paul
Oui sur un PC-1600 ça devrait marcher à condition de changer les valeurs
des LOCATE et des GCURSOR car l'écran du PC-1600 fait 26 caractères
de large alors que celui du PC-E500 en fait 40...

Je pense que ta version pour PC-1600 peut intéresser des gens...

Tu noteras que j'ai fais un effort au niveau graphismes...

;-)
Image
Image

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Message par charognard » 28 nov. 2007 22:03

Adaptation faite... sympa le jeu !!!

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Message par Paul Tergeist » 29 nov. 2007 11:04

Merci Charo.

J'ai été surpris de voir que le programme faisait des petits coups vaches.
(après les moutons, les vaches ;-)

C'est toujours un peu frustrant de se faire battre par une machine alors
voila un cheat mode en exclusivité sur ce jeu :
Pendant une partie faites Break (touche ON)
tapez :
VT=1000 (Enter)
CONT (Enter)
Et là vous gagnerez la partie contre le PC-E500.
Gnark gnark gnark !!!

Paul Tergeist - Gnarkeur de 10h à 10h10
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Message par charognard » 29 nov. 2007 19:39

La version PC1600 rapidement modifié
Image
Image
et une flou
Image

au lieu de pset un line ()_(),X,,BF
et j'ai viré un CLS et quelques autres modifs pour que l'écran ne soit pas rafraichi à chaque fois
plus deux ou trois autres modifs.
j'utilise les touches 8,4,6,2 pour la direction

J'ai gardé ton bohomme qui fait la gueule lorsqu'il perd !!! :wink:

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Message par Paul Tergeist » 30 nov. 2007 10:13

charognard a écrit : au lieu de pset un line ()_(),X,,BF
et j'ai viré un CLS et quelques autres modifs pour que l'écran ne soit pas rafraichi à chaque fois
plus deux ou trois autres modifs.
j'utilise les touches 8,4,6,2 pour la direction

J'ai gardé ton bohomme qui fait la gueule lorsqu'il perd !!! :wink:
Génial !

1) J'avais essayé de faire une inverse vidéo mais j'avais pas pensé au BF.
Du coup pixel par pixel c'était trop lent alors je l'avais viré.
Mais maintenant avec ton idée ça va être immédiat. Excellent!
2) Oui j'avais remarqué que le CLS était un peut trop présent, c'est de la
faineantise de ma part...
3) Pour les touches j'avais hesité entre les fleches et les 2,4,6,8 et
effectivement je pense que cela donne une meilleure ergonomie.

Bon alors, quand-est-ce que tu postes ta version améliorée, que je
reporte les modifs dans celle du PC-E500 ?
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Message par charognard » 30 nov. 2007 22:31

adaptation fait vite fait, l'aide n'est pas adaptée (pas eu le temps)
mais ça marche nickel sur pc 1600.
l'adaptation sur PC1350/60 ne devrait pas poser de problème
quelques instruction line à changer, sinon les accents ne sont pas passés

principaux changements :
longueur des lignes
longueur nom des variables
longueur variable
décalage à gauche du graphisme des chiffres
gestion des beep ,,0
pset en LINE
pause inkey$
menu .....

Code : Tout sélectionner

10 CLS :CLEAR :HA=5,SO=1,RE=1:RANDOM :DIM SM$(4)*32,E(4,4),D$(10)*6
   20 SM$(1)="60100C042271210101217122040C1060 
   30 SM$(2)="07083024489090909090904824300807 
   40 SM$(3)="07083020408084848484804020300807 
   50 SM$(4)="07083020488484848484844820300807 
   60 CURSOR 6,0:PRINT "TIRS CROISES":PRINT " Un jeu stratgique paru      dans le magazine
   70 D$(0)="000800",D$(1)="00003E",D$(2)="3A2A2E",D$(3)="2A2A3E",D$(4)="0E083C
   80 D$(5)="2E2A3A",D$(6)="3E2A3A",D$(7)="020A3E",D$(8)="3E2A3E",D$(9)="2E2A3E
   85 D$(10)="123A12"
   90 CURSOR 2,3:PRINT "Jeux & Stratgie no 7"
  100 LINE (30,0)-(112,6),X,,BF
  110 A$=INKEY$ :IF A$=""THEN 110
  120 CLS :WAIT 0:CURSOR 6,0:PRINT "MENU PRINCIPAL"
  130 CURSOR 0,1:PRINT "Rgles    Son       : ";
  140 CURSOR 0,2:PRINT "Jouer      Handicap :":CURSOR 0,3
  145 GCURSOR 61,16:GPRINT D$(10)
  150 PRINT "Quitter   Autoregul :
  160 LINE (30,0)-(122,6),X,,BF
  170 LINE (0,7)-(4,31),X,,BF
  180 LINE (60,7)-(64,31),X,,BF
  190 CURSOR 22,1:IF SO>0PRINT "Oui"ELSE PRINT "Non"
  200 CURSOR 21,2:PRINT HA
  210 CURSOR 22,3:IF RE>0PRINT "Oui"ELSE PRINT "Non"
  215 IF INKEY$ THEN 210
  220 A$=INKEY$ :IF A$=""THEN 220
  230 BEEP SO,80,10
  240 IF A$="R"THEN 330
  250 IF A$="J"THEN 470
  260 IF A$="Q"THEN 460
  270 IF A$="+"LET HA=HA+1:GOTO 200
  280 IF A$="-"LET HA=HA-1:GOTO 200
  290 IF A$="S"LET SO=1-SO:GOTO 190
  300 IF A$="A"LET RE=1-RE:GOTO 210
  310 GOSUB 840
  320 GOTO 215
  330 CLS :PRINT "Le but de ce jeu est de marquer plus de points que la machine en tirant
  340 PRINT "sur un carre de 25 cases contenant":WAIT 20:PRINT "des chiffres entre 1 et 9 
  350 A$=INKEY$ :IF A$=""THEN 350
  360 BEEP SO,80,10
  370 CLS :WAIT 0:PRINT "Les joueurs ne peuvent tirer que dans lameme ligne ou la meme colonne
  380 PRINT " que l'adversaire au coup precedent Alors choisissez bien votre case...
  390 A$=INKEY$ :IF A$=""THEN 390
  400 BEEP SO,80,10
  410 WAIT 0:CLS :PRINT "Pendant le jeu vous pouvez egalement":PRINT "utiliser la touche (R) pour 
  420 WAIT 20:PRINT "une nouvelle partie"
  430 A$=INKEY$ :IF A$=""THEN 430
  440 BEEP SO,80,10
  450 GOTO 120
  460 CLS :PRINT "A bientot...":END 
  470 CLS :WAIT 30:PRINT "C'est ";R$;"parti..."
  480 FOR X=0TO 4:FOR Y=0TO 4:E(X,Y)=RND 9:NEXT Y:NEXT X
  490 C=0:VT=0:MT=0:CX=0:CY=0:IF TJ>0LET TJ=3-TJ:T=TJ:GOTO 560
  500 CLS :WAIT 0:PRINT "Qui commence ? 
  510 PRINT "1:L'Etre Humain 
  520 PRINT "2:Le PC-1600 
  530 LINE (0,7)-(4,23),X,,BF
  535 A$=INKEY$ :IF A$<>"1"AND A$<>"2"THEN 535
  540 T=1:IF A$="2"LET T=2
  550 BEEP SO,80,10:TJ=T
  560 LX=-1,LY=-1,MT=HA:CLS 
  570 WAIT 0:FOR X=0TO 4:FOR Y=0TO 4
  580 GCURSOR X*8,Y*6:GPRINT "00";D$(E(X,Y));"00"
  590 NEXT Y:NEXT X
  600 C=C+1:CURSOR 10,0:PRINT "Coup";C:CURSOR 18,0:PRINT "Handi";HA
  610 CURSOR 10,1:PRINT "Score";VT
  620 CURSOR 10,2:PRINT "Pc   ";MT
  630 CURSOR 10,3
  640 IF T=1PRINT "A vous de jouer "
  650 IF T=2PRINT "A moi de jouer  "
  660 GCURSOR 120,8:GPRINT SM$(1):GCURSOR 120,15
  670 IF VT<MTGPRINT SM$(2)
  680 IF VT=MTGPRINT SM$(3)
  690 IF VT>MTGPRINT SM$(4)
  700 IF LX=-1THEN 720
  710 S=0:FOR I=0TO 4:S=S+E(I,LY)+E(LX,I):NEXT I:IF S=0THEN 1100
  720 IF T=1GOSUB 810ELSE 910
  730 A$=INKEY$ :IF A$=""THEN 730
  740 IF A$="6"AND CX<4GOSUB 810:CX=CX+1:GOSUB 810:BEEP SO,8,10:GOSUB 840
  750 IF A$="4"AND CX>0GOSUB 810:CX=CX-1:GOSUB 810:BEEP SO,8,10:GOSUB 840
  760 IF A$="2"AND CY<4GOSUB 810:CY=CY+1:GOSUB 810:BEEP SO,8,10:GOSUB 840
  770 IF A$="8"AND CY>0GOSUB 810:CY=CY-1:GOSUB 810:BEEP SO,8,10:GOSUB 840
  780 IF A$="R"LET R$=R$+"Re-":GOTO 470
  790 IF A$=CHR$ (13)BEEP SO,20,10:GOTO 860
  800 GOTO 730
  810 Y=CY*6,X=CX*8
  820 LINE (X,Y)-(X+4,Y+6),X,,BF
  830 RETURN 
  840 B$=INKEY$ :IF B$<>""THEN 840
  850 RETURN 
  860 IF LX=-1THEN 890
  870 IF E(CX,CY)=0CURSOR 10,3:PRINT "Non deja joue...":BEEP SO,100,30:GOTO 730
  880 IF CX<>LXAND CY<>LYCURSOR 10,3:PRINT "Lig";LY+1;" ou Col";LX+1;"  ":BEEP SO,100,30:GOTO 730
  890 GOSUB 810:GOSUB 840
  900 VT=VT+E(CX,CY),E(CX,CY)=0,T=3-T,LX=CX,LY=CY:GOTO 570
  910 IF LX=-1THEN 1150
  920 CJ$="",SV$="",MV=0:FOR X=0TO 4:IF E(X,LY)>MVLET MV=E(X,LY)
  930 NEXT X
  940 FOR Y=0TO 4:IF E(LX,Y)>MVLET MV=E(LX,Y)
  950 NEXT Y:IF MV=0THEN 1100
  960 FOR X=0TO 4:IF E(X,LY)>0LET EX=X,EY=LY:GOSUB 1000
  970 NEXT X
  980 FOR Y=0TO 4:IF E(LX,Y)>0LET EX=LX,EY=Y:GOSUB 1000
  990 NEXT Y:GOTO 1050
 1000 S=E(EX,EY),V=0:FOR I=0TO 4:IF E(I,EY)>VAND I<>EXLET V=E(I,EY)
 1010 NEXT I
 1020 FOR J=0TO 4:IF E(EX,J)>VAND J<>EYLET V=E(EX,J)
 1030 NEXT J:S=S-V
 1040 CJ$=CJ$+CHR$ (EX*10+EY),SV$=SV$+CHR$ (20+S):RETURN 
 1050 MV=0,IM=0:FOR I=1TO LEN (SV$):IF ASC (MID$ (SV$,I,1))>MVLET MV=ASC (MID$ (SV$,I,1)),IM=I
 1060 NEXT I:I=ASC (MID$ (CJ$,IM,1)),MX=INT (I/10),MY=I-10*MX
 1070 CX=MX,CY=MY:GOSUB 810:CURSOR 10,3:WAIT 80:BEEP SO,20,10:PRINT "Je joue en ";MY+1;",";MX+1:LX=MX
 1080 LY=MY
 1090 MT=MT+E(MX,MY),E(MX,MY)=0,T=3-T:GOTO 570
 1100 GOSUB 810:CURSOR 10,3:WAIT 50:IF MT>VTPRINT "Vous avez perdu!":BEEP 3*SO,10,10:IF RE=1LET HA=HA-1
 1110 IF MT<VTPRINT "Vous avez gagne!":BEEP SO*3,100,10:IF REG=1LET HA=HA+1
 1120 IF MT=VTPRINT "Egalite!        ":BEEP SO,10,10
 1130 A$=INKEY$ :IF A$=""THEN 1130
 1140 R$=R$+"Re-":GOTO 470
 1150 CJ$="",SV$="",MV=0
 1160 FOR X=0TO 4:FOR Y=0TO 4:IF E(X,Y)>MVLET MV=E(X,Y),MX=X,MY=Y
 1170 NEXT Y:NEXT X:GOTO 1070
Dernière édition par charognard le 10 déc. 2007 11:02, édité 4 fois.

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Message par Paul Tergeist » 01 déc. 2007 21:37

Bon ben je vais tester toutes ces améliorations.

Merci Charo !
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Message par charognard » 02 déc. 2007 10:54

j'ai une vague impression qu'appart nous deux ça n'interresse quand même pas grand monde :wink:

Avatar de l’utilisateur
Pocket
Administrateur
Administrateur
Messages : 5813
Inscription : 24 mai 2002 16:55
Localisation : Toulouse
Contact :

Message par Pocket » 02 déc. 2007 11:13

Salut,
charognard a écrit :j'ai une vague impression qu'appart nous deux ça n'interresse quand même pas grand monde :wink:
Si, si, les masses silencieuses vous lisent :)

Perso, je manque juste de temps.

A+
Pocket, voit tout, sait tout, lit l'avenir dans les entrailles d'une base phpBB ...
Image

Avatar de l’utilisateur
pstriolo
Modérateur
Modérateur
Messages : 3477
Inscription : 22 mai 2002 07:05
Localisation : Dans ton cul... au fond à gauche

Message par pstriolo » 02 déc. 2007 11:21

Tu dors trop.

philou
Tout près de la Garonne
Non loin des Pyrénées
Il existe une ville
Toulouse où je suis né
Toulouse et son équipe
Son stade des 7 deniers
Les toulousains arrivent
Ils vont tout remporter

jmplinux
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1286
Inscription : 15 oct. 2006 23:11
Localisation : Dans le Jurassique, au fond à gauche

Message par jmplinux » 02 déc. 2007 12:15

Je suis lecteur également :D

Et je me réjouis de constater qu'il y a encore des fans de prog sur nos pockets d'antan, avec une optimisation comme on en fait plus 8)

Pour le moment, je suis plutôt occupé à la restauration électronique qu'à la programmation, mais ça viendra :P
Recherche active :
Dispos : Casio PB-700, CC-40
Don : Ti LCD Programmer (j'ai acheté ça 25€ et franchement ... je n'arrive même pas à ouvrir une huitre avec)
PC3000 en cours de réparation(jxano)

Répondre

Revenir vers « Tous les Pockets »