Herramientas de usuario

Herramientas del sitio


es:poker_folies

POKER FOLIES

Ficha

Autor Logi'Stick
Computadora Amstrad PCW 8256 / 8512 / 9512
Año 1986
Género Cartas
Controles Teclado
Lenguajes Francés y Español
Estado Preservado

Capturas

Descripción

El juego del POKER es totalmente simple. Una baraja de 52 cartas en las que se titulan y muestran cinco cartas que no se pueden volver a jugar. Tan pronto como se muestran, tiene la opción de eliminarlas todas para reemplazarlas por otras nuevas. Luego sigue la evaluación de tu juego y las ganancias correspondientes según las combinaciones ganadoras descritas.

Listado

  • Listado - POKERFR.BAS
1 REM ********************************************
3 REM *               POKER FOLIES               *
4 REM *            Made by Logi'Stick            *
5 REM *        COPYRIGHT L'ECHO DU PCW 86        *
7 REM ********************************************
10 CLEAR:OPTION RUN:PRINT CHR$(27);"E";CHR$(27);"f":DIM C$(12),Z(14):CAP=100:'cls et initialisation
20 RESTORE 1090:FOR I=0 TO 12:READ C$(I):NEXT:GOSUB 550:'valeur des cartes
30 GOSUB 660:GOSUB 850:GOSUB 750:x=98:Y=56:GOSUB 880:PRINT "Pressez <ESPACE>":Y=58:GOSUB 880:PRINT " pour continuer";
40 U1=U1+1:I$=INKEY$:IF I$<>" " THEN 40
50 GOSUB 60:GOTO 80
60 GOSUB 890
70 X=34:Y=51:GOSUB 880:PRINT " DE <1> A <5> POUR SUPPRIMER LES CARTES - I+I POUR REDISTRIBUER - <ESPACE> POUR ANNULER ":RETURN
80 RANDOMIZE(U1)
90 M=0:Z=0:RO=RO+1:GOSUB 1160
100 X=98:Y=61:GOSUB 880:PRINT CHR$(164);" L'{cho du PCW 86":GOSUB 740
110 ON ERROR GOTO 1150:X=50:Y=48:GOSUB 880:PRINT SPACE$(70):Y=50:GOSUB 880:PRINT CHR$(27);"e";"ENTREZ UNE MISE INFERIEURE AU CAPITAL...";SPACE$(30):X=91:GOSUB 880:INPUT MISE$:MISE=VAL(MISE$)
120 IF MISE>cap OR MISE<1 THEN 110 ELSE CAP=CAP-INT(MISE):PRINT CHR$(27);"f":GOSUB 740
130 X=50:GOSUB 880:PRINT SPACE$(54):GOSUB 1160
140 FOR I=0 TO 4:IF Z(10+I)=1 THEN 170
150 B1=INT(RND(U1)*13):Y1=INT(RND(U1+5)*4):U1=U1+3:B1=B1+Y1/10:GOSUB 190:Z(I)=B1:Z(I+U*5)=B1:'tirage des cartes
160 IF C=1 THEN I=I-1:C=0 ELSE GOSUB 820
170 NEXT I:IF U=0 THEN 210
180 GOTO 290
190 FOR Q=0 TO 9:IF B1<>Z(Q) THEN NEXT Q:RETURN:'test si d{ja tir{e
200 B1=0:C=1:RETURN
210 FOR X1=10 TO 14:Z(X1)=1:NEXT X1:PRINT CHR$(27);"p":GOSUB 70:PRINT CHR$(27);"q"
220 U1=U1+1:A2$=INKEY$:IF A2$="" THEN 220 ELSE A=ASC(A2$):IF A>48 AND A<54 THEN A=VAL(CHR$(A))-1:GOTO 270:'{change de cartes
230 IF A=22 THEN U=1:GOSUB 70:GOTO 140:'pression de I+I
240 IF A<>32 THEN 220
250 FOR I=0 TO 4:IF Z(10+I)=0 THEN GOSUB 820:Z(10+I)=1:Z=0:'annulation par <ESPACE>
260 NEXT I:GOTO 220
270 IF Z(10+A)=1 THEN Z(10+A)=0:Y=33:X=32+18*A:GOSUB 880:PRINT C$:FOR J=0 TO 11:Y=Y+1:GOSUB 880:PRINT A$:NEXT:GOSUB 880:PRINT E$:'affichage des cartes annul{es
280 GOTO 220
290 FOR I=5 TO 9:IF Z(I)<>0 THEN Z(I-5)=Z(I)
300 NEXT I:N=0:GOSUB 610
310 REM **** EVALUATION DU TIRAGE
320 T=0:FOR I=0 TO 4:T=T+Z(I)-INT (Z(I)):NEXT I:T=ROUND(T,1)
330 FOR I=0 TO 4:IF ROUND(Z(I)-INT(Z(I)),1)=T/5 THEN NEXT I:W=1
340 IF S=1 AND W=1 THEN L=20:M$="une QUINTE ROYALE":GOTO 500
350 V=0:I=0:GOSUB 400:IF M>3 THEN L=M*5
360 IF W=1 THEN L=7:M$="une COULEUR":GOTO 500
370 IF S=1 THEN L=5:M$="une QUINTE":GOTO 500
380 IF M>0 THEN L=M:GOTO 500
390 L=0:M$="PERDU":GOTO 500
400 IF INT(Z(I))=INT(Z(I+1)) THEN V=V+1:I=I+1:IF I<4 THEN 400 ELSE GOSUB 590
410 IF V=3 THEN M=15:M$="un CARRE":RETURN
420 IF V=2 THEN P=2:V=0:I=I+1:IF I<4 THEN 400
430 IF P=2 AND K=1 THEN M=10:M$="un FULL":RETURN
440 IF P=2 THEN M=4:M$="un BRELAN":RETURN
450 IF V=1 AND K=0 AND I<3 THEN K=1:V=0:I=I+1:IF I<4 THEN 400
460 IF V=1 AND K=1 THEN M=3:M$="une DOUBLE PAIRE":GOTO 490
470 IF I<3 THEN I=I+1:GOTO 400
480 IF K=1 OR V=1 THEN M=1:M$="une PAIRE"
490 RETURN
500 X=50:Y=48:GOSUB 880:U=0:IF L>0 THEN PRINT "Vous avez ";M$;" et vous gagnez ";L;"x";MISE;" soit:";L*MISE;"$":CAP=CAP+L*MISE ELSE PRINT SPACE$(9);"Je suis d{sol{, mais vous avez perdu";mise;"$":'r{sultat et cumul
510 X=50:Y=50:GOSUB 880:PRINT CHR$(27);"p";" PRESSEZ <ESPACE> POUR CONTINUER OU <EXIT> POUR ARRETER ";CHR$(27);"q"
520 BA$=INKEY$:IF BA$="" THEN 520
530 IF BA$<>" " THEN IF ASC(BA$)=27 THEN FOR I=0 TO 4:PRINT CHR$(7):NEXT:PRINT CHR$(27)+"E":X=67:Y=48:GOSUB 880:PRINT "Adieu ingrat !":FOR I=1 TO 5000:NEXT:PRINT CHR$(27);"e";CHR$(27);"E";CHR$(27);"H":END:'fin par <EXIT>
540 GOSUB 550:GOTO 90
550 W=0:N=0:M=0:K=0:P=0:FOR I=1 TO 14:Z(I)=0:NEXT I:IF CAP>0 THEN RETURN
560 GOSUB 890:X=60:Y=47:GOSUB 880:PRINT "Ah Ah, je vous ai plum{ en";RO;"tours":X=48:Y=49:GOSUB 880:PRINT "Avez-vous assez de courage pour m'affronter encore une fois ?":X=70:Y=51:GOSUB 880:PRINT "(O)ui ou (N)on"
570 A2$=UPPER$(INKEY$):IF A2$="O" THEN CAP=100:RO=0:GOSUB 890:RETURN
580 IF A2$="N" THEN BA$=CHR$(27):GOTO 530 ELSE 570
590 IF V=1 AND K<>1 THEN K=1:V=0
600 RETURN
610 FOR I=0 TO 3:IF INT(Z(I))>Z(I+1) THEN Q=Z(I+1):Z(I+1)=Z(I):Z(I)=Q:R=1:'tri des cartes
620 NEXT I:IF R=1 THEN R=0:GOTO 610:'test d'une {ventuelle modification
630 S=0:FOR I=N TO 3:IF INT(Z(I+1))-INT(Z(I))=1 THEN NEXT I:S=1:RETURN
640 IF INT(Z(0))=0 AND N=0 AND INT(Z(4))=12 THEN N=1:GOTO 630:'test de l'as
650 RETURN
660 REM **** VARIABLES ET GRAPHISMES DES CARTES
670 RESTORE 1110:FOR I=0 TO 3:READ LO:FOR J=1 TO LO:READ KY:CO$(I)=CO$(I)+STRING$(KY,32+312*((J-1)/2-INT((J-1)/2))):NEXT J:FOR L=0 TO 6:A$(I,L)=MID$(CO$(I),1+7*l,7):NEXT L:NEXT I
680 C$="  "+CHR$(134)+STRING$(13,142)+CHR$(140)+" ":D$=C$+c$+c$+c$+c$
690 C1$=CHR$(134)+STRING$(13,138)+CHR$(140)
700 E$="  "+CHR$(131)+STRING$(13,139)+CHR$(137)+" ":F$=e$+e$+e$+e$+e$
710 E1$=CHR$(131)+STRING$(13,138)+CHR$(137)
720 A$="  "+CHR$(135)+STRING$(13,143)+CHR$(141)+" ":B$=a$+a$+a$+a$+a$
730 A1$=CHR$(133)+SPACE$(13)+CHR$(133)
740 PRINT CHR$(27);"H";:PRINT D$;:FOR I=1 TO 11:PRINT b$;:NEXT:PRINT f$:RETURN:'retourne les 5 cartes
750 RESTORE 910:X=32:y=47:GOSUB 880:FOR J=1 TO 12:READ MES$:FOR I=1 TO LEN(MES$):H$=MID$(MES$,I,1):'lecture et affichage des explications
760 IF H$="*" THEN PRINT CHR$(13):GOTO 800:'retour @ la ligne
770 IF H$="%" THEN h$=":" ELSE IF H$="+" THEN 860
780 IF H$="#" THEN 870 ELSE IF H$="-" THEN h$=CHR$(149)
790 PRINT h$;
800 NEXT I:NEXT J:X=0:Y=52:GOSUB 880:PRINT CHR$(27);"r":PRINT SPACE$(90):PRINT CHR$(27);"u":RETURN:'trace la ligne horizontale
810 REM **** DISTRIBUTION DES CARTES
820 Z1=INT(Z(I)):X=34+I*18:GOSUB 830:Y=35:X=X+2:GOSUB 880:PRINT C$(Z1):X=X+2:FOR KY=36 TO 42:Y=KY:GOSUB 880:PRINT A$(10*(Z(I)-INT(Z(I))),KY-36):NEXT KY:X=X+3:Y=43:GOSUB 880:PRINT SPACE$(6-LEN(C$(Z1)));C$(Z1);CHR$(7):RETURN 
830 Y=33:GOSUB 880:PRINT C1$:FOR L=34 TO 44:Y=L:GOSUB 880:PRINT A1$:NEXT L:Y=L:GOSUB 880:PRINT E1$:RETURN 
840 REM **** DESSIN DE POKER
850 RESTORE 1040:FOR I=1 TO 5:READ J:FOR KY=1 TO J:READ M,L:Y=36+I:X=35+M:GOSUB 880:PRINT STRING$(L,188):NEXT KY:NEXT I:RETURN
860 PRINT CHR$(27);"p":GOTO 800:' inversion on
870 PRINT CHR$(27);"q";:GOTO 800:' inversion off
880 PRINT CHR$(27);"Y";CHR$(Y);CHR$(X);"";:RETURN:'positionnement du curseur
890 X=0:FOR Y=46 TO 52:GOSUB 880:PRINT CHR$(27);"K":NEXT:X=91:FOR Y=54 TO 61:GOSUB 880:PRINT CHR$(27);"K":NEXT:RETURN
900 REM **** EXPLICATIONS
910 DATA Bienvenue @ Las V{gas! Je m'appelle Bill et je suis votre croupier favori...*
920 DATA Malgr{ ma ferme intention de vous plumer je vais tout de meme vous expliquez les r}gles%**
930 DATA Le jeu se fait sur 2 tours avec 5 cartes que je vous donne. Apr{s le premier tour vous*avez la possibilit{ de changer une ou plusieurs cartes en indiquant leur num{ro.*
940 DATA Le but {tant de r{aliser les combinaisons qui rapportent le plus.... En voici le d{tail%*
950 DATA +PAIRE%# 2 cartes de meme valeur.............1 fois la mise-
960 DATA +DOUBLE PAIRE%# 2 paires.....................3 fois la mise-
970 DATA +BRELAN%# 3 cartes de meme valeur............4 fois la mise-
980 DATA +QUINTE%# 5 cartes se suivant................5 fois la mise-
990 DATA +COULEUR%# 5 cartes de la meme couleur.......7 fois la mise-
1000 DATA +FULL%# Une paire et un brelan..............10 fois la mise-
1010 DATA +CARRE%# 4 cartes identiques................15 fois la mise-
1020 DATA +QUINTE ROYALE%# Quinte et couleur..........20 fois la mise-
1030 REM **** CODES DE POKER
1040 DATA 6,4,5,22,5,40,1,44,1,58,5,76,5
1050 DATA 9,4,1,8,1,22,1,26,1,40,1,43,1,58,1,76,1,80,1
1060 DATA 6,4,5,22,1,26,1,40,3,58,3,76,5
1070 DATA 8,4,1,22,1,26,1,40,1,43,1,58,1,76,1,79,1
1080 DATA 7,4,1,22,5,40,1,44,1,58,5,76,1,80,1
1090 DATA AS,2,3,4,5,6,7,8,9,10,VALET,DAME,ROI
1100 REM **** CODES DES GRAPHISMES DES COULEURS 
1110 DATA 12,1,2,1,2,1,21,1,5,3,3,5,1:'coeur
1120 DATA 14,3,1,5,3,3,5,1,7,1,5,3,3,5,1:'carreau
1130 DATA 16,3,1,5,3,3,5,1,9,1,1,1,2,3,1,5,3:'pique
1140 DATA 18,2,3,4,3,2,2,1,1,1,11,1,1,1,2,3,1,5,3:'trefle
1150 RESUME 110
1160 X=100:Y=55:GOSUB 880:PRINT "CAPITAL:";USING "#####";CAP;:PRINT "$"
1170 Y=57:GOSUB 880:PRINT "Nb DE TOURS:";USING "###";RO:RETURN

Controles

     Teclado numérico (1-5) = Seleccionar carta para cambiar
                    Tecla + = Cambiar cartas seleccionadas
                    ESPACIO = Cancelar partida
                     RETURN = Selección

Carga del programa

1.- Introducir el disco CP/M por la cara 2
2.- Escribir BASIC y esperar a que cargue
3.- Retirar el disco CP/M e introducir el disco que contiene el juego Poker Folies
4.- Teclear run "POKERFR" para francés y "POKERES" para español y pulsar la tecla "ENTER"

Extras

  • Listado del programa en revista de gran tirada de la época

poker_folies_01.jpg poker_folies_02.jpg poker_folies_03.jpg

Descarga

es/poker_folies.txt · Última modificación: 2022/07/04 23:43 por jevicac