Título: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Jon_Cortazar en 15 de Mayo de 2007, 07:56:38 pm :D :D :D :D :D :D :D :D :D :D :D
Otro juego terminado presentado al concurso!. Mr. dvik, presentando un juego que hizo en 1986!. Está listo para descargar en la web del concurso ;) http://msxdev.msxblue.com Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Pypo en 15 de Mayo de 2007, 08:19:06 pm :D :D :D :D :D :D :D :D :D :D :D Otro juego terminado presentado al concurso!. Mr. dvik, presentando un juego que hizo en 1986!. Está listo para descargar en la web del concurso ;) http://msxdev.msxblue.com Ueeee! Mas juegos! ;D Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: pitpan en 15 de Mayo de 2007, 08:21:59 pm Pues no he probado el juego aún, pero o me equivoco mucho o el YAHTZEE es el mismo juego que el GNIFFEL que presentó Dioniso en la edición de 2004 de MSXdev.
Ahora lo pruebo, a ver qué tal está esta versión (aunque no soy muy fan de los juegos de dados para ordenador, los juegos de dados son para los bares, kinito fever!). Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Dioniso en 15 de Mayo de 2007, 09:02:41 pm Pues no he probado el juego aún, pero o me equivoco mucho o el YAHTZEE es el mismo juego que el GNIFFEL que presentó Dioniso en la edición de 2004 de MSXdev. Pues sí ... es el mismo juego ... Por cierto, hay algo de BASIC en este programa? Enhorabuena a DVIK. Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Konamito en 15 de Mayo de 2007, 09:03:30 pm Buenísima noticia.
Recuerdo que había un juego de mesa con el mismo nombre :D Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: dvik en 15 de Mayo de 2007, 09:08:26 pm Yes its 100% MSX Basic using screen 1. I did a lookup in the generation msx database and found only one Yahtzee game but I totally forgot about your version Dioniso.
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Dioniso en 15 de Mayo de 2007, 09:13:43 pm It's OK. Why not.
It's strange; there are not many dice games for MSX and now ... two which are the very same :D Anyway, as I said in Spanish: Congratulations. Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: S0Y en 15 de Mayo de 2007, 09:20:54 pm Pues sí, es Basic, aunque la verdad está muy bien conseguido. :)
Ehm... También he conseguido el source... por el mismo método con nlMSX. Lo digo por si a alguien le interesa ver rutinillas y tal, en Basic se pueden conseguir cosas muy muy decentes... Ya colgaré en mi web algunos .dsk de juegos solamente hechos en Basic MSX-1, la mayoría japoneses, para que veáis la de cositas tan buenas que se pueden hacer. Congratulations, dvik! Saludos! Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Jos'b en 15 de Mayo de 2007, 09:27:12 pm Felicidades al creador, otra ROM para la saca, y este año palizón del BASIC al ASM 2-0.
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: dvik en 15 de Mayo de 2007, 11:15:03 pm So here is the quiz of the day: From what game (made before 1986 obviously) is the 'digital' font inspired?
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Dioniso en 15 de Mayo de 2007, 11:20:38 pm Alien 8?
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Konamito en 15 de Mayo de 2007, 11:28:28 pm Lo he probado y me ha encantado. Llamadme raro pero es que a mí los juegos de dados me gustan mucho.
La verdad es que en MSX no se prodiga demasiado este tipo de juego pero se agradece cuando aparece uno. Enhorabuena al creador. En Konamito.com (http://www.konamito.com/modules/news/article.php?storyid=267) he publicado lo siguiente con respecto al juego: He jugado unas cuantas partidas y de verdad me ha enganchado. Los gráficos son sencillos y cumplen a la perfección su cometido, que no es más que mostrar la información en pantalla. Los efectos de sonido son pocos pero cada evento en el juego tiene el suyo. Quizá se podría haber cambiado el sonido del BEEP por algún otro más elaborado. El teclado responde correctamente a las pulsaciones lo que mejora la jugabilidad. No hay más vuelta de hoja: Si te gustan los juegos de dados te gustará Yahtzee, si no, no le encontrarás la gracia y te resultará hasta aburrido. Lo mejor de todo es poder jugar hasta un máximo de tres jugadores, lo que aumenta la adicción. Aquí se podría decir eso de: "Mejor acompañado que solo" Por cierto que me ha dado problemas el juego al introducir el nombre de los jugadores. No se ven los caracteres ??? ¿Os ha pasado también a vosotros? Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: dvik en 15 de Mayo de 2007, 11:33:17 pm Alien 8 was made in 1987 so that's not the right answer. Looks very similar though.
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Dioniso en 15 de Mayo de 2007, 11:54:21 pm Alien 8 was made in 1987 so that's not the right answer. Looks very similar though. I think that the cassette version was in 1985 (Ultimate - Paly The Game) and the cartridge in 1986 (Jaleco) - though in Generation-MSX (http://www.generation-msx.nl/msxdb/softwareinfo/901) there's a screenshot of the cartridge version (later published than the cassette version) with the year 1986 but they say it was published in 1987. Anyways ... Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Dioniso en 16 de Mayo de 2007, 12:06:21 am "Paly The Game" ... I'm a bit tired, sorry: Play The Game. The Speecy version is from 1984.
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: dvik en 16 de Mayo de 2007, 12:35:55 am Citar Ehm... También he conseguido el source... por el mismo método con nlMSX. How did you do this? Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: mesiasmsx en 16 de Mayo de 2007, 05:59:48 pm Por que no hace nadie un parchis ::) ?
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: S0Y en 16 de Mayo de 2007, 07:54:53 pm Citar How did you do this? Digamos a que "fuerzo" un error en la rom que me permite listarlo... y por supuesto después grabarlo como un .bas. Si quieres más detalles, házmelo saber, aunque no sé si por aquí se puede explicar eso... ;) Supongo que algunos lo considerarán una técnica de "hacking", aunque no es NADA del otro mundo, no lo sé... ::) Que me dice el moderador del foro? Lo explico por aquí o se lo hago saber al interesado por privado? Hay algún problema? Saludos! Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: Jon_Cortazar en 17 de Mayo de 2007, 05:55:46 am Pues yo creo que explicarlo lo puedes explicar, siempre y cuando no publiques el código del juego de nadie sin su permiso ;)
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: dvik en 17 de Mayo de 2007, 06:52:41 am Yes, describing the process is ok. Even creating tools to do it would be ok.
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: S0Y en 17 de Mayo de 2007, 09:17:10 am Citar Pues yo creo que explicarlo lo puedes explicar, siempre y cuando no publiques el código del juego de nadie sin su permiso Bueno... No veo yo la diferencia entre pasar el código a alguien y decirle a todo el mundo como hacerse con él, pero bueno, ya que se me ha dado permiso, os digo cómo hacerlo ;D - Cargo en nlMSX la rom. - Me me voy a editar los detalles de la rom y la configuro de la siguiente manera: * Image Length -> 0x4000 (si es d 16 kb) * Start Address -> 0x8000 - Una vez se ha ejecutado la rom, vuelvo otra vez a editar los detalles de la misma: * Image Start -> 0x1 - Gracias al paso anterior, "produzco" un error típico del MSX-Basic de la rom del juego, y éste se "rompe". - Si hacemos un List ahora, sólo obtendremos basura, por lo que volvemos a editar los detalles de la rom: * Image Start -> 0x0 - Al volver al juego, ya podemos listar el código del juego con List (aunque no podréis pararlo hasta el final) y grabarlo a disco como un .bas con el comando Save. En fin, como véis, MUY sencillote, nada del otro mundo. Uno, que le gusta mucho investigar, jeje... ;) Saludos!! Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: nerlaska en 17 de Mayo de 2007, 11:28:29 am Que rebuscao! jajajajaa .. pero que total!
Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: pitpan en 17 de Mayo de 2007, 11:30:18 am Hay un camino más directo: eliminar la cabecera de la ROM completa e incluir el byte de tipo BASIC. Con eso, puedes cargarlo directamente con LOAD y obtienes el programa en BASIC completo.
Eso sí, implica utilizar un debugger o alguna otra herramienta (asMSX: INCBIN "fichero" SKIP nn). Título: Re: MSXdev'07 - Yahtzee (juego terminado!) Publicado por: mars2000you en 17 de Mayo de 2007, 01:24:00 pm I prefer pitpan's method ... WinHex is my friend !!!
Here's the BASIC code (thanks also to ASCII mode saving !) Código: 10 GOSUB5000 500 CLS 510 FORF=8204TO8207!:VPOKEF,161:VPOKEF-4,33:NEXTF:PUTSPRITE1,(0,0),0,0:PUTSPRITE0,(0,0),0,1 520 FORF=8208TO8209:VPOKEF,209:VPOKEF+2,97:VPOKEF+4,65:NEXTF:G$=CHR$(32) 530 LOCATE4,3:PRINTSTRING$(25,123) 540 LOCATE4,4:PRINT"yahtzee{{yahtzee{{yahtzee" 550 LOCATE5,6:PRINTT$(1);G$;T$(2);G$;T$(2);G$;T$(3);G$;T$(3);G$;T$(3) 560 LOCATE5,7:PRINTT$(5);G$;T$(4);G$;T$(5);G$;T$(4);G$;T$(5);G$;T$(6) 570 LOCATE5,8:PRINTT$(7);G$;T$(8);G$;T$(8);G$;T$(9);G$;T$(9);G$;T$(9) 580 LOCATE4,9:PRINTSTRING$(25,123) 585 VPOKE8198,161:VPOKE8199,161 590 LOCATE4,10:PRINT"copyright{1986{daniel{vik" 598 IFPLAY(1)<>0THEN599 599 LOCATE3,18:PRINT"PRESS SPACE TO START A GAME" 600 LOCATE3,20:PRINT" OR ESC FOR INSTRUCTIONS" 601 IFINKEY$<>""THEN601 602 PLAY"T150S0M6000O3L4CCCCO2A-A-A-A-FFFFGGGG","T150S0O2L4CCCCO1A-A-A-A-FFFFGGG","T150V13O5L8CO4GB-O5L2E-R8L8E-DE-L2CR8O4L8A-GA-L4F.O5CL1D" 603 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN610ELSEIFPLAY(2)THEN603 604 PLAY"T150S0M6000O2L4A-A-A-A-O3CCCCO2B-B-B-B-O3E-E-DD","T150S0O1L4A-A-A-A-O2CCCCO1B-B-B-B-O2E-E-D","T150V13L8O5E-DE-L2CR8L8E-DE-L2CR8L8DCDL2O4B-R8L4O5GFE-D" 605 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN610ELSEIFPLAY(2)THEN605 606 PLAY"T150S0M6000O3L4CCO2B-B-A-A-GGA-A-B-B-O3M10000L1C","T150S0O2L4CCO1B-B-A-A-GGA-A-B-B-O2L1C","T150V13L4O5E-DCO4B-O5CE-DO4B-O5CE-DO4B-O5S0L1C" 607 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN610ELSEIFPLAY(0)THEN607 608 GOTO602 610 BEEP:IFA$=CHR$(27)THENGOSUB7000 614 PLAY"T150S0M3000L16O3DGBO4DGBO5DGBO6DL1M10000B","T150S0R8R16O3L16DGBO4DGEO5DL1G","T150S0R8L16O3DO4DGEO5L1D" 616 FORF=1TO100:NEXT 620 VPOKE8223,18:VPOKE8198,161:VPOKE8199,161:FORF=8200TO8203:VPOKEF,65:NEXTF 630 CLS:LOCATE4,3:PRINTSTRING$(24,123) 640 LOCATE4,4:PRINT"how{many{players{{{max{3" 650 A$=INPUT$(1) 660 IFA$<"0"ORA$>"3"THEN650 670 SP=VAL(A$) 680 LOCATE29,4:PRINTCHR$(ASC(A$)+81) 681 BEEP:IFSP=1THENPLAY"S0M6000L4O3GO4L2M10000G","S0L2O4R8F","S0L2O4R8D" 682 IFSP=2THENPLAY"S0M6000L4O3GO4L2M10000G","S0L2O4R8E","S0L2O4R8C" 683 IFSP=3THENPLAY"S0M6000L4O3GO4L2M10000G","S0L2O4R8D","S0L2O3R8B" 690 B=0:POKE64683!,1:FORF=1TOSP 700 LOCATE4,4+2*F:PRINT"{{{{{{" 710 LOCATE4,5+2*F:PRINT"name{";RIGHT$(STR$(F),1) 720 A=0:NM$(F)=STRING$(8,32) 730 A=A+1:LOCATE10+A,5+2*F:A$=INPUT$(1):IFB=0THENBEEP:B=1 740 IFA$=CHR$(8)ORA$=CHR$(29)THENA=A-1:IFA<0THENA=0 750 IFA$=CHR$(13)THEN820 760 IFA$=CHR$(32)THEN780 770 IFA$<CHR$(65)ORA$>CHR$(93)THENA=A-1:GOTO730 780 MID$(NM$(F),A,1)=A$ 790 LOCATE11,5+2*F:PRINTNM$(F) 800 IFA=8THENA=A-1 805 PLAY"S0M1000L32O2G" 810 GOTO730 820 NEXTF 830 CLS:FORF=8200TO8203:VPOKEF,161:VPOKEF+4,28:NEXTF:FORF=8198TO8199:VPOKEF,28:VPOKEF+10,65:NEXTF:VPOKE8223,81 840 PRINT"{{{{{{{{|{{{|{{{|{{{}" 850 PRINT"aces{{{{|{{{|{{{|{{{}" 860 PRINT"twos{{{{|{{{|{{{|{{{}" 870 PRINT"threes{{|{{{|{{{|{{{}" 880 PRINT"fours{{{|{{{|{{{|{{{}" 890 PRINT"fives{{{|{{{|{{{|{{{}" 900 PRINT"sixes{{{|{{{|{{{|{{{}" 910 PRINT"{{{{{{{{{{{{{{{{{{{{}" 920 PRINT"total{{{|{{{|{{{|{{{}" 930 PRINT"bonus{{{|{{{|{{{|{{{}" 940 PRINT"{{{{{{{{{{{{{{{{{{{{}" 970 PRINT"3{a{kind|{{{|{{{|{{{}" 980 PRINT"4{a{kind|{{{|{{{|{{{}" 990 PRINT"full{hse|{{{|{{{|{{{}" 991 PRINT"small{st|{{{|{{{|{{{}" 992 PRINT"large{st|{{{|{{{|{{{}" 993 PRINT"chance{{|{{{|{{{|{{{}" 994 PRINT"yahtzee{|{{{|{{{|{{{}" 995 PRINT"{{{{{{{{{{{{{{{{{{{{}" 996 PRINT"bonus{{{|{{{|{{{|{{{}" 997 PRINT" " 998 PRINT"total{{{|{{{|{{{|{{{}" 1000 FORF=1TOSP:LOCATE5+4*F,0:PRINTRIGHT$(STR$(F),1);"up":NEXTF 1500 ' B™RJA SPELA 1505 ONKEYGOSUB,,,,,,,,,1600:KEY(10)ON 1510 E=166:R=10:PUTSPRITE1,(E+1,R+1),4,0:PUTSPRITE0,(E,R),1,1:FORF=1TO15:FORG=1TOSP:O(F,G)=-1:O(15,G)=0:NEXTG,F:FORF=1TOSP:O(16,F)=0:X(F)=0:NEXTF 1520 FORUQS=1TO13:FORD=1TOSP:LOCATE22,0:PRINT"{";RIGHT$(STR$(D),1);"up{":LOCATE22,1:PRINTNM$(D) 1525 FORF=1TO5:W(F)=0:NEXTF:FORF=3TO22:LOCATE22,F:PRINTSTRING$(8,32):NEXT 1530 T=5:FORP=1TO3:Y=T 1535 BEEP:PLAY"S0M3000L2O4G","S0L2O4B-","S0L2O5C" 1540 GOSUB2000 1545 IFINKEY$<>""THEN1545 1550 GOSUB2100 1580 NEXTP 1590 NEXTD,UQS 1600 KEY(10)OFF:BEEP:FORF=0TO22:LOCATE21,F:PRINTSTRING$(9,32):NEXT 1610 IFSP=1THEN1700 1620 IFSP=2THEN1660 1630 FORF=1TO3:FORG=1TO2:IFQ(G)<Q(G+1)THENR=Q(G):R$=NM$(G):Q(G)=Q(G+1):NM$(G)=NM$(G+1):Q(G+1)=R:NM$(G+1)=R$ 1640 NEXTG,F 1650 GOTO1700 1660 IFQ(1)>Q(2)THEN1700 1670 R=Q(1):R$=NM$(1):Q(1)=Q(2):NM$(1)=NM$(2):Q(2)=R:NM$(2)=R$ 1700 ' GAME OVER 1710 FORF=1TOSP 1720 LOCATE21,3*F-3:PRINTCHR$(ASC(RIGHT$(STR$(F),1))+81);" ";NM$(F) 1730 T$="":FORG=2TOLEN(STR$(Q(F))):T$=T$+CHR$(ASC(MID$(STR$(Q(F)),G,1))+81):NEXT 1740 LOCATE23,3*F-2:PRINTT$:NEXTF 1741 PLAY"S0M5000T150O5L16EO4GO5CO4EGCEO3GO4CO3EGCEGO4CO3GO4CECEGEGO5CO4GO5CECO4GEGO5CO4EM10000L1C" 1743 IFPLAY(1)<>0THEN1743 1750 LOCATE3,22:PRINT"PRESS SPACE TO CONTINUE..." 1760 AA$="O4L1CO3A-B-G" 1770 B$="V12L8O5E-O4GO5CO4GO5E-O4GO5CO4GO5E-O4A-O5CO4A-O5E-O4A-O5CO4A-O5DO4FB-FO5DO4FB-FO5DO4GB-GO5DO4B-O5DG" 1780 C$="V13L4O4CCCDE-E-E-GFFFDGGG" 1790 D$="V11L1O5CO4A-B-L2GL4G" 1795 E$="V1L1O5CO4A-B-L2GL4G" 1797 PLAY"S14M500T150","T150","T150" 1800 PLAYAA$,E$,E$ 1805 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(3)THEN1805 1810 PLAYAA$,B$,E$ 1815 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(3)THEN1815 1820 PLAYAA$,B$,D$ 1825 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(3)THEN1825 1830 PLAYAA$,B$,C$ 1835 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(3)THEN1835 1840 PLAYAA$,C$,D$ 1845 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(3)THEN1845 1850 PLAYAA$,B$,C$ 1855 A$=INKEY$:IFA$=CHR$(32)ORA$=CHR$(27)THEN1900ELSEIFPLAY(0)THEN1855 1860 GOTO 1800 1900 BEEP 1910 GOTO 500 2000 ' KASTA TŽRNING 2010 FORF=1TOT 2015 IFF<>1THEN2025 2020 IFINKEY$=""THEN2020 2022 IFF=1THENBEEP 2025 SOUND8,16:SOUND13,8:SOUND1,1:SOUND12,2:SOUND0,0 2027 FORED=0TO8 2030 A=INT(RND(-TIME)*6)+1 2040 ONAGOSUB4500,4550,4600,4650,4700,4750 2050 NEXTED 2055 SOUND8,0 2060 V(F)=A:NEXTF 2070 RETURN 2100 ' FLYTTA PIL 2110 A=STICK(0):IFA>0THEN2150 2120 A$=INKEY$ 2130 IFA$=CHR$(13)THEN2200 2140 IFA$=CHR$(32)THEN2400ELSE2110 2150 IFA=2ORA=3ORA=4THENE=E+4:IFE>234THENE=234 2160 IFA=6ORA=7ORA=8THENE=E-4:IFE<10THENE=10 2170 IFA=8ORA=1ORA=2THENR=R-4:IFR<8THENR=8 2180 IFA=4ORA=5ORA=6THENR=R+4:IFR>180THENR=180 2190 PUTSPRITE1,(E+1,R+1),4,0:PUTSPRITE0,(E,R),1,1:GOTO2110 2200 'RETURN 2210 B=INT(E/8):C=INT(R/8) 2220 IFP=3ANDB>21THEN2110 2230 IFB<21THEN2500 2240 IFB>21ANDB<25THEN2700 2250 IFB>25THEN2900 2260 GOTO2110 2400 ' SPACE 2410 IFP=3THEN2110 2420 T=5:FORF=5TO1STEP-1:IFW(F)>0THENW(T)=W(F):V(T)=W(F):T=T-1 2430 NEXT:FORF=TTO1STEP-1:W(F)=0:NEXT 2440 FORF=3TO22:LOCATE22,F:PRINTSTRING$(8,32):NEXTF 2450 FORA=5TOT+1STEP-1:ONW(A)GOSUB4000,4050,4100,4150,4200,4250:NEXT 2460 RETURN 2500 ' SŽTTA POŽNG 2510 B=INT(R/8):IFB<1ORB>6ANDB<11ORB>19THEN2110 2515 IFB>10THENB=B-4 2520 IFO(B,D)>-1THEN2110 2530 IFB<7THEN2560 2540 ONB-6GOSUB3200,3300,3600,3400,3500,3700,3800 2550 GOTO2600 2560 O(B,D)=0:FORF=1TO5:IFV(F)=BTHENO(B,D)=O(B,D)+B:NEXTELSENEXT 2565 GOSUB 3960 2570 H$=RIGHT$(STR$(O(B,D)),LEN(STR$(O(B,D)))-1):K=LEN(H$):LOCATE8+D*4-K,B:PRINTH$ 2580 X(D)=0:FORF=1TO6:IFO(F,D)=-1THENNEXTELSEX(D)=X(D)+O(F,D):NEXT 2585 H$=RIGHT$(STR$(X(D)),LEN(STR$(X(D)))-1):K=LEN(H$):LOCATE8+D*4-K,8:PRINTH$ 2590 IFX(D)>62THENO(16,D)=35:LOCATE6+D*4,9:PRINT"35" 2595 GOTO 2605 2600 H$=RIGHT$(STR$(O(B,D)),LEN(STR$(O(B,D)))-1):K=LEN(H$):LOCATE8+D*4-K,B+4:PRINTH$ 2605 Q(D)=0:FORF=7TO16:IFO(F,D)=-1THENNEXTELSEQ(D)=Q(D)+O(F,D):NEXT 2610 Q(D)=Q(D)+X(D) 2620 H$=RIGHT$(STR$(Q(D)),LEN(STR$(Q(D)))-1):K=LEN(H$):LOCATE8+D*4-K,21:PRINTH$ 2621 IFO(15,D)=0THEN2625 2622 H$=RIGHT$(STR$(O(15,D)),LEN(STR$(O(15,D)))-1):K=LEN(H$):LOCATE8+D*4-K,15+4:PRINTH$ 2625 IFO(B,D)=0THENPLAY"S0M4000L4O2C"ELSEPLAY"S0M4000L4O4C" 2626 FORF=1TO50:NEXT 2630 RETURN1590 2700 ' FLYTTA TŽRNING 2710 A=0:FORF=1TOT:IFC>F*4-2ANDC<F*4+2THENA=F:NEXTELSENEXT 2720 IFA=0THEN2110 2730 IFW(A)=0THENY=Y-1:BEEP:PLAY"T150S0M1000O4L32CO5C" 2740 W(A)=V(A):GOSUB4800 2750 ONW(A)GOSUB4000,4050,4100,4150,4200,4250 2760 IFY=0THEN2900 2770 GOTO2110 2900 ' FLTTA TILLBAKA 2905 FORF=1TO5:IFW(F)>0THENBEEP:PLAY"T150S0M6000O3L8CCL4M8000C","T150S0O3L8CE-L4E-","T150S0O3L8CCL4B-"ELSENEXT:GOTO2110 2910 FORF=3TO22:LOCATE26,F:PRINT" ":NEXT 2920 FORF=1TO5:ONV(F)GOSUB4500,4550,4600,4650,4700,4750:NEXT 2930 T=5:Y=5:FORF=1TO5:W(F)=0:NEXT 2940 GOTO2110 3000 'ETT PAR 3010 FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3020 NEXTG:IFS>1THENGOTO3040 3030 NEXTF:O(B,D)=0:RETURN 3040 O(B,D)=2*F:RETURN 3050 M=F:NEXTF:O(B,D)=0:RETURN 3060 O(B,D)=2*F+2*M:RETURN 3100 'TV PAR 3110 N=0:FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3120 NEXTG:IFS>1THENGOTO3140 3130 NEXTF:O(B,D)=0:RETURN 3140 N=N+1:IFN=2THEN3160 3150 M=F:NEXTF:O(B,D)=0:RETURN 3160 O(B,D)=2*F+2*M:RETURN 3200 ' TRETAL 3210 FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3220 NEXTG:IFS>2THENGOTO3240 3230 NEXTF:O(B,D)=0:RETURN 3240 GOTO 3700 3300 ' FYRTAL 3310 FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3320 NEXTG:IFS>3THENGOTO3340 3330 NEXTF:O(B,D)=0:RETURN 3340 GOTO 3700 3400 'LITEN STRIGHT 3405 BV=30:GOSUB3900:IFO(B,D)>0THENRETURN 3410 S=0:FORF=1TO4:FORG=1TO5:IFV(G)=FTHENS=S+1ELSENEXTG 3420 NEXTF:IFS=4THENO(B,D)=BV:RETURN 3430 S=0:FORF=2TO5:FORG=1TO5:IFV(G)=FTHENS=S+1ELSENEXTG 3440 NEXTF:IFS=4THENO(B,D)=BV:RETURN 3450 S=0:FORF=3TO6:FORG=1TO5:IFV(G)=FTHENS=S+1ELSENEXTG 3460 NEXTF:IFS=4THENO(B,D)=BV:RETURN 3470 O(B,D)=0:RETURN 3500 'STOR STRIGHT 3505 BV=40:GOSUB3900:IFO(B,D)>0THENRETURN 3510 S=0:FORF=1TO5:FORG=1TO5:IFV(G)=FTHENS=S+1ELSENEXTG 3520 NEXTF:IFS=5THENO(B,D)=BV:RETURN 3530 S=0:FORF=2TO6:FORG=1TO5:IFV(G)=FTHENS=S+1ELSENEXTG 3540 NEXTF:IFS=5THENO(B,D)=BV:RETURN 3550 O(B,D)=0:RETURN 3600 ' KK 3605 BV=25:GOSUB3900:IFO(B,D)>0THENRETURN 3610 FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3620 NEXTG:IFS=3THENM=F:GOTO3640 3630 NEXTF:O(B,D)=0:RETURN 3640 FORF=6TO1STEP-1:S=0:FORG=1TO5:IFV(G)=FTHENS=S+1 3650 NEXTG:IFS=2THEN3670 3660 NEXTF:O(B,D)=0:RETURN 3670 O(B,D)=BV:RETURN 3700 ' CHANS 3710 O(B,D)=0:FORF=1TO5:O(B,D)=O(B,D)+V(F):NEXT 3720 GOSUB 3960 3730 RETURN 3800 ' YATZY 3810 S=0:FORF=1TO5:IFV(F)=V(1)THENS=S+1 3820 NEXTF:IFS=5THENO(B,D)=50:GOTO3840 3830 O(B,D)=0:RETURN 3840 PLAY"T150S0M6000O4L8CCL4CEGO5L2M10000C","S0O3T150L8GGL4CCEL2C","S0T150L8O4CCL4CO3GO4EL2G" 3850 IFPLAY(0)<>0THEN3850ELSERETURN 3900 ' CHECK WILDCARD YATZY 3910 IFO(13,D)<=0THENRETURN 3920 S=0:FORF=1TO5:IFV(F)=V(1)THENS=S+1 3930 NEXTF:IFS<5THENRETURN 3940 IFO(V(1),D)<0THENRETURN 3950 O(15,D)=O(15,D)+100:O(B,D)=BV:RETURN 3960 ' CHECK BONUS YATZY 3965 IFO(13,D)<=0THENRETURN 3970 S=0:FORF=1TO5:IFV(F)=V(1)THENS=S+1 3980 NEXTF:IFS<5THENRETURN 3990 O(15,D)=O(15,D)+100:RETURN 4000 ' TŽRNING 1 4010 LOCATE26,A*4-1:PRINTP$(1) 4020 LOCATE26,A*4:PRINTP$(5) 4030 LOCATE26,A*4+1:PRINTP$(7) 4040 RETURN 4050 ' TŽRNING 2 4060 LOCATE26,A*4-1:PRINTP$(2) 4070 LOCATE26,A*4:PRINTP$(4) 4080 LOCATE26,A*4+1:PRINTP$(8) 4090 RETURN 4100 ' TŽRNING 3 4110 LOCATE26,A*4-1:PRINTP$(2) 4120 LOCATE26,A*4:PRINTP$(5) 4130 LOCATE26,A*4+1:PRINTP$(8) 4140 RETURN 4150 ' TŽRNING 4 4160 LOCATE26,A*4-1:PRINTP$(3) 4170 LOCATE26,A*4:PRINTP$(4) 4180 LOCATE26,A*4+1:PRINTP$(9) 4190 RETURN 4200 ' TŽRNING 5 4210 LOCATE26,A*4-1:PRINTP$(3) 4220 LOCATE26,A*4:PRINTP$(5) 4230 LOCATE26,A*4+1:PRINTP$(9) 4240 RETURN 4250 ' TŽRNING 6 4260 LOCATE26,A*4-1:PRINTP$(3) 4270 LOCATE26,A*4:PRINTP$(6) 4280 LOCATE26,A*4+1:PRINTP$(9) 4290 RETURN 4500 ' TŽRNING 1 4510 LOCATE22,F*4-1:PRINTT$(1) 4520 LOCATE22,F*4:PRINTT$(5) 4530 LOCATE22,F*4+1:PRINTT$(7) 4540 RETURN 4550 ' TŽRNING 2 4560 LOCATE22,F*4-1:PRINTT$(2) 4570 LOCATE22,F*4:PRINTT$(4) 4580 LOCATE22,F*4+1:PRINTT$(8) 4590 RETURN 4600 ' TŽRNING 3 4610 LOCATE22,F*4-1:PRINTT$(2) 4620 LOCATE22,F*4:PRINTT$(5) 4630 LOCATE22,F*4+1:PRINTT$(8) 4640 RETURN 4650 ' TŽRNING 4 4660 LOCATE22,F*4-1:PRINTT$(3) 4670 LOCATE22,F*4:PRINTT$(4) 4680 LOCATE22,F*4+1:PRINTT$(9) 4690 RETURN 4700 ' TŽRNING 5 4710 LOCATE22,F*4-1:PRINTT$(3) 4720 LOCATE22,F*4:PRINTT$(5) 4730 LOCATE22,F*4+1:PRINTT$(9) 4740 RETURN 4750 ' TŽRNING 6 4760 LOCATE22,F*4-1:PRINTT$(3) 4770 LOCATE22,F*4:PRINTT$(6) 4780 LOCATE22,F*4+1:PRINTT$(9) 4790 RETURN 4800 ' TOM 4810 LOCATE22,A*4-1:PRINT" " 4820 LOCATE22,A*4:PRINT" " 4830 LOCATE22,A*4+1:PRINT" " 4840 RETURN 4990 END 5000 ' R E A D D A T A 5010 SCREEN 1,2,0,2,0:WIDTH32:COLOR5,1,1:KEYOFF:DIMO(16,3):T=RND(-TIME) 5011 PLAY"S0M4000T150L8O4GF#M10000L1GR4M3000L16O3DGBO4DGBO5DGBO6DL1M10000B","T150S0R4R8L8O3GL2O4D.R4R8R16O3L16DGBO4DGEO5DL1G","T150S0R2R8L8O3DL2GR4R4R8L16O3DO4DGEO5L1D" 5020 FORF=65TO93:FORG=0TO7:READA:VPOKEF*8+G,A:NEXTG,F 5030 LOCATE11,11:PRINT"PLEASE WAIT" 5040 LOCATE1,20:PRINT"THE GAME STARTS IN A MOMENT..." 5042 PLAY"S13M10000O2L1G","S13O3L1D","S13O3L1G" 5043 PLAY"S0M4000L8O3GO4GO3GO4GO3GO4GO3GO4GM10000L1G","S0L8O4R8FR8FR8ER8EL1D","S0L8O4R8DR8DR8CR8CO3L1B" 5044 PLAY"S0M6000L2O4BM10000L2G.","S0L2O4GL2D.","S0L2O3BL2G." 5050 FORF=97TO125:FORG=0TO7:READA:VPOKEF*8+G,A/2:NEXTG,F 5060 FORF=48TO57:FORG=0TO7:READA:VPOKEF*8+G,A/2:NEXTG,F 5070 FORF=129TO138:FORG=0TO7:READA:VPOKEF*8+G,A:NEXTG,F 5080 FORF=145TO154:FORG=0TO7:READA:VPOKEF*8+G,A:VPOKE(F+16)*8+G,A:NEXTG,F 5090 FORF=1TO9:FORG=1TO3:READA:T$(F)=T$(F)+CHR$(144+A):P$(F)=P$(F)+CHR$(160+A):NEXTG,F 5100 FORG=0TO63:READA:VPOKE14336+G,A:NEXTG 5999 RETURN 6000 ' D A T A 6010 DATA 0,224,144,144,248,152,152,152,0,240,144,144,248,200,200,248,0,248,128,128,192,192,192,248,0,248,136,136,200,200,200,248 6020 DATA 0,248,128,128,240,192,192,248,0,248,128,128,240,192,192,192,0,248,128,128,184,152,152,248,0,136,136,136,248,200,200,200 6030 DATA 0,32,32,32,48,48,48,48,0,8,8,8,24,24,24,248,0,144,144,144,248,200,200,200,0,128,128,128,192,192,192,248 6040 DATA 0,252,148,148,212,212,212,212,0,248,136,136,200,200,200,200,0,248,136,136,152,152,152,248,0,248,136,136,136,248,192,192 6050 DATA 0,248,136,136,152,184,152,248,0,240,144,144,248,200,200,200,0,248,192,192,248,24,24,248,0,248,32,32,48,48,48,48 6060 DATA 0,136,136,136,200,200,200,248,0,152,152,152,216,80,80,112,0,148,148,148,212,212,212,252,0,136,136,136,112,200,200,200 6070 DATA 0,132,132,132,252,48,48,48,0,248,8,16,32,64,192,248,96,0,240,144,144,248,152,152,144,0,240,144,144,248,152,152,136,0,248,136,136,152,152,248 6110 DATA 0,60,102,102,126,102,0,511,0,124,102,124,102,124,0,511,0,62,96,96,96,62,0,511,0,124,102,102,102,124,0,511 6120 DATA 0,126,96,120,96,126,0,511,0,126,96,120,96,96,0,511,0,62,96,110,102,60,0,511,0,102,102,126,102,102,0,511 6130 DATA 0,60,24,24,24,60,0,511,0,126,6,6,102,60,0,511,0,102,102,124,102,102,0,511,0,96,96,96,96,126,0,511 6140 DATA 0,198,238,214,214,198,0,511,0,198,230,214,206,198,0,511,0,60,102,102,102,60,0,511,0,124,102,102,124,96,0,511 6150 DATA 0,60,102,102,100,58,0,511,0,124,102,124,102,102,0,511,0,62,96,60,6,124,0,511,0,126,24,24,24,24,0,511 6160 DATA 0,102,102,102,102,60,0,511,0,102,102,102,60,24,0,511,0,90,90,90,90,36,0,511,0,102,102,60,102,102,0,511 6170 DATA 0,102,102,60,24,24,0,511,0,126,12,24,48,126,0,511,0,0,0,0,0,0,0,511,16,16,16,16,16,16,16,511,63,63,63,63,63,63,63,511 6210 DATA 0,60,102,102,102,60,0,511,0,24,56,24,24,24,0,511,0,60,6,60,96,126,0,511,0,124,6,30,6,124,0,511,0,102,102,126,6,6,0,511 6220 DATA 0,126,96,124,6,124,0,511,0,62,96,124,102,124,0,511,0,126,6,30,12,12,0,511,0,60,102,60,102,60,0,511,0,62,102,62,6,6,0,511 6230 DATA 0,248,136,136,200,200,200,248,0,16,16,16,48,48,48,48,0,248,8,8,248,192,192,248,0,240,16,16,120,24,24,248,0,136,136,136,248,24,24,24 6240 DATA 0,248,128,128,248,24,24,248,0,248,192,192,248,200,200,248,0,248,8,8,56,24,24,24,0,120,72,72,252,196,196,252,0,248,136,136,248,24,24,24 6299 ' TŽRNING 6300 DATA 63,127,255,255,255,255,255,255,252,254,255,255,255,255,255,255,255,255,255,255,255,255,254,252,255,255,255,255,255,255,127,63 6310 DATA 63,67,129,129,129,129,195,255,252,194,129,129,129,129,195,255,255,195,129,129,129,129,194,252,255,195,129,129,129,129,67,63 6320 DATA 255,255,255,255,255,255,255,255,255,195,129,129,129,129,195,255 6400 ' TŽRNINGSDATA 6410 DATA 1,9,2,5,9,2,5,9,6,9,9,9,9,10,9,10,9,10,4,9,3,4,9,7,8,9,7 6500 ' SPRITE DATA 6510 DATA 252,248,240,248,220,142,7,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 6520 DATA 255,129,130,132,130,145,168,196,130,1,0,0,0,0,0,0,0,0,0,0,0,0,128,64,128,0,0,0,0,0,0,0 7000 ' INSTRUKTIONER 7010 CLS:FORF=8200TO8203:VPOKEF,97:NEXT 7015 SOUND8,16:SOUND13,8:SOUND1,5:SOUND0,50:SOUND11,50:SOUND12,2 7020 RESTORE8000:FORG=0TO19 7030 READA$:FORH=1TOLEN(A$):LOCATEH+3,G:PRINTMID$(A$,H,1) 7040 FORF=1TO3:NEXTF,H,G 7041 BEEP:LOCATE4,21 7042 PRINT"{{{{{{{{{{{{{{{{{{{{{{{{{" 7043 LOCATE4,22 7044 PRINT"{press{space{to{continue{" 7050 IFINKEY$<>CHR$(32)THEN7050 7060 RETURN500 7999 ' INSTRUKTIONS DATA 8000 DATA" I N S T R U C T I O N S " 8010 DATA" " 8020 DATA"WHEN ITS YOUR TURN PRESS" 8030 DATA"ANY KEY TO ROLL THE DICE." 8040 DATA"THEN YOU NEED TO DECIDE" 8050 DATA"WHAT DICE TO SAVE. MOVE" 8060 DATA"THE ARROW TO THE DICE AND" 8070 DATA"PRESS ENTER TO SAVE IT. " 8080 DATA"WHEN YOU ARE READY PRESS" 8090 DATA"SPACE TO THROW THE DICE" 8100 DATA"AGAIN. " 8110 DATA" " 8120 DATA"AFTER THROWING THE DICE" 8130 DATA"THREE TIMES YOU MOVE THE" 8140 DATA"ARROW TO THE SCOREBOARD" 8150 DATA"AND PRESS ENTER IN THE" 8160 DATA"SECTION YOU CHOOSE TO PUT" 8170 DATA"THE RESULT OF THE DICE " 8180 DATA" " 8190 DATA"F‚ CANCELS THE GAME. " |