10 CONSOLE,,0,0:PLAY"s8m5000l16t200","s8m5000l16t200" 20 screen 1,1,1:CLS 30 DIM BK$(3),DA(5,3),DA$(5,3),ST$(11),ST(3,2),TK$(6,2),TK(3,6,2) 35 DIM MN(6,2) 40 LV = 1:MOT = 4:BU=0:CD=&HED0D 50 FOR I=1 TO 3 60 READ BK$(I) 70 FOR J=0 TO 5 80 READ DA$(J,I):READ DA(J,I) 90 NEXT 100 NEXT 110 DATA "ぶき","なし",0,"こんぼう",5,"どうのつるぎ",10,"てつのつるぎ",15 115 DATA "はがねのつるぎ",20,"ほのうのつるぎ",40 120 DATA "よろい","なし",0,"ぬののふく",10,"かわのふく",20,"てつのよろい",30 125 DATA "はがねのよろい",40,"ほのうのよろい",50 130 DATA "たて","なし",0,"かわのたて",10,"どうのたて",20,"てつのたて",25 135 DATA "はがねのたて",30,"ほのうのたて",45 140 FOR I=1 TO 6 150 READ BA$(I) 160 FOR J=1 TO 2 170 READ TK$(I,J) 180 FOR K=0 TO 3:READTK(K,I,J):NEXT:READ MN(I,J) 190 NEXT 200 NEXT 210 DATA まちのそと,すらいむ,30,10,20,15,1,すらいむきんぐ,50,15,20,15,2 220 DATA まのどうくつ,こうもり,40,15,20,50,3,ばんぱいや,60,20,25,20,4 230 DATA しのやま,おーく,50,25,40,10,5,おーくきんぐ,60,30,40,15,6 240 DATA さんちょう,ひのとり,60,25,30,35,7,がるーだ,70,30,35,45,8 250 DATA まのやかた,とろーる,80,40,55,15,9,ぼすとろーる,90,45,60,5,10 260 DATA やかたのなか,がいこつ,85,50,30,10,11, まおう,350,50,80,15,12 270 FOR I=1 TO 11 280 READ ST$(I) 290 NEXT 300 DATA LV....,HP.....,ちから.....,たいりょく...,すばやさ... 310 DATA こうげき.,しゅび...,かいひ.....,ぶき.....,よろい.....,たて...... 320 REM LINE(0,48)-(317,299),1,B 330 GOSUB 1900 340 GAME = 0: 342 IF GAME <>0 THEN BU=0:SCREEN1,1,1:CLS:GOTO 350 344 GOSUB 480:GOTO 342 350 ON GAME GOTO 360,430,470 360 RESTORE362 361 READM1$,M2$:PLAY M1$,M2$ 362 DATAs0m10000t150o6e4rd+rc+ro5bg+c+ef+ag+ec+f+rd+e 363 DATAs0m10000t150o5c+4eo4bo5eo4ao5f+o4brrrrrbra+ro3bo4ae2 365 GOSUB 1800:LOCATE 1,8:PRINT "あなたはしんでしまいました..." 370 LOCATE 3,10:PRINT " G A M E O V E R" 380 LOCATE 3,11:PRINT "R E T R Y ( y / n ) ?" 385 EXEC &H1058 390 IN$=INKEY$:IF IN$="" THEN 390 400 IF IN$="n" THEN 470 410 IF IN$ <>"y" THEN 390 420 GOTO 330 430 RESTORE432:FORJ=0TO2:READM$,N$ 431 PLAYM$,N$:NEXT J 432 DATAt88l4o4g2o5rdcro4br2g2o5ro4br2 433 DATAt88l4o4c2c8o3b8ao4eo3efo4c8a8g8f8e2co3fo4c8a8g8f8 434 DATAg2rdr2g+abo5cr2ger8d8 435 DATAo3e2o4co3bo4fao3ef+g+ao4eao3go4b-c8 436 DATAco4aao5ge3d8cego6co5b3a8o5bar8g8aro4b 437 DATAo3fo4ffc-d3r8o3ao5co4gf+f3r8ee-o3ao4dao3g 439 GOSUB 1800:LOCATE 5,6:PRINT "おめでとうございます!!" 440 LOCATE 5,8:PRINT "あなたのかつやくでまちはすくわれました." 450 LOCATE 5,10:PRINT " G A M E O V E R" 460 IN$=INKEY$:IF IN$= "" THEN 460 470 CLS:END 480 REM 490 ST(0,1)=50 + LV*10:GOSUB 1630:GOSUB1800:LOCATE 13,4:PRINT "まちのなか" 500 ME = 2:DO$(1)="かいもの":DO$(2)=BA$(LV)+"へいく":GOSUB 1820 510 ON IN GOSUB 530,970 520 RETURN 530 REM 540 GOSUB 1800:LOCATE 9,6:PRINT "いらっしゃい!!" 550 LOCATE 11,4:PRINT "ぶき.ぼうぐや" 560 ME=3:DO$(1)="かう":DO$(2)="はなす":DO$(3)="でる":GOSUB 1820 570 ON IN GOSUB 600,820 580 IF IN <> 3 THEN GOSUB 1800:GOTO550 590 RETURN 600 REM 610 FOR I= 1 TO 3 620 LOCATE 5,6:PRINT BK$(I);"はどれにするんだい ? " 630 FOR J=0 TO 4 640 LOCATE 5,8+J:PRINT J+1;":";DA$(J,I); 650 IF J<>0 THEN PRINT " ";J*10;"G";SPC(3) 660 NEXT 670 GOSUB1810:LOCATE 0,15:PRINT "かね ";MOT*10;"G" 680 LOCATE 0,16:PRINT "1 - 5 ?" 685 EXEC &H1058 690 IB$=INKEY$:IF IB$="" THEN 690 700 IF IB$>"5" OR IB$ <"1" THEN 690 710 IF IB$="1" THEN LOCATE 9,15:PRINT "かわないのかい ?" 720 IF IB$>"1" THEN LOCATE 9,15:PRINT DA$(VAL(IB$) - 1,I);"でいいかい?" 730 LOCATE 0,17:PRINT "y / n ?" 735 EXEC &H1058 740 IC$=INKEY$:IF IC$="" THEN 740 750 IF IC$="n" THEN GOSUB 1810:GOTO 670 760 IF IC$<>"y" THEN 740 770 IF MOT >=VAL(IB$) - 1 THEN MOT = MOT-VAL(IB$)+1:GOTO 790 780 LOCATE 9,15:PRINT "おかねがたりないようだ":GOSUB 1910:GOTO 670 790 IF VAL(IB$)>1 THEN CH(I)=VAL(IB$)-1:GOSUB 1630 800 NEXT 810 RETURN 820 REM 830 IF LV<6 OR CH(0)=1 THEN 930 840 LOCATE 7,6:PRINT "まおうをたおしにいくのか...":GOSUB 1910 850 LOCATE 7,8:PRINT "それならこれをつかいな!" 860 FOR I=1 TO 3 870 LOCATE I*8,10:PRINT DA$(5,I) 880 CH(I)=5 890 NEXT:CH(0)=1 900 LOCATE 14,12:PRINT "を もらった! !" 910 GOSUB 1630:GOSUB 1910:GOSUB 1910 920 GOTO 950 930 IF YK<3 THEN LOCATE 9,6:PRINT"やくそうをあげるから":YK=3 940 LOCATE11,8:PRINT "がんばれよ ! !":GOSUB1910 950 REM 960 RETURN 970 REM 980 TC = 0:SN = 0 990 GOSUB 1800:LOCATE 13,4:PRINT BA$(LV) 1000 IF MOT=0 THEN 1030 1010 MOT = 0:LOCATE 5,8:PRINT "おかねをおとしてしまった!!" 1020 GOSUB 1910:GOTO 990 1030 ME = 3:DO$(1)="すすむ":DO$(2)="やくそう"+STR$(YK):DO$(3)="まちへもどる" 1040 GOSUB 1820 1050 ON IN GOSUB 1080,1550 1060 IF IN <> 3 THEN 990 1070 RETURN 1080 REM 1090 TLV = INT(TC/3)+1 1100 FOR I=0 TO 3:ST(I,2)=TK(I,LV,TLV):NEXT 1110 GOSUB 1800 1120 LOCATE 8-TLV*4,6:PRINT TK$(LV,TLV);"があらわれた ! !":GOSUB1910 1130 SCREEN 3,2,2:CLS:BU=1 1140 ME = 2:DO$(1)="こうげき":FI=INT(RND(1)*2)+1:F2=3-FI 1150 GOSUB 1800 1160 DO$(2)="やくそう":LINE(0,180)-(319,199),0,BF 1164 W=12:CC=13:FOR V=0 TO YK-1:GOSUB 2000:NEXT 1166 LINE(0,0)-(319,20),0,BF 1170 FOR I=1 TO 2 1180 REM LOCATE I*10-10,7 1190 IFTLV<>2ORI<>2THEN LINE(0,(I-1)*10)-(ST(0,I),(I-1)*10+10),I+1,BF 1200 REM IF TLV=2 AND I=2 THEN PRINT "HP=ふめい" 1210 NEXT 1215 PLAY"o4F","o4F":V=10:W=5:CC=0:GOSUB 2000 1220 V=15:W=5:CC=MN(LV,TLV):GOSUB 2000:REM LOCATE13,5:PRINT TK$(LV,TLV) 1230 GOSUB 1630 1240 IF ST(0,FI)<1 THEN 1300 1250 IF FI=1 THEN GOSUB1820 1255 IF FI<>1 THEN IN=1 1260 GOSUB 1810 1270 LOCATE FI*14-10,9:REM PRINT LEFT$(DO$(IN),6) 1280 SN=1:ON IN GOSUB 1430,1550 1290 II=FI:FI=F2:F2=II:GOTO 1160 1300 IF FI=1 THEN GAME = 1:IN=3:GOTO 1410 1310 GOSUB 1910:GOSUB 1800 1320 LOCATE5,6:PRINT TK$(LV,TLV);"をたおした!":GOSUB 1910:SCREEN 1,1,1:BU=0 1322 PLAY"o5cdef","o5fgab" 1330 IF LV=6 AND TLV=2 THEN GAME = 2:IN=3:GOTO 1410 1340 IF TLV=1 THEN TC=TC+1:SN=0:GOTO 1410 1350 LV=LV+1:LOCATE 7,8:PRINT (LV*2+2)*10;"G てにいれた!!" 1360 LOCATE 9,10:PRINT "れべるがあがった!" 1370 LOCATE 7,12:PRINT "ぶき、ぼうぐがこわれた!!" 1380 GOSUB 1910:GOSUB 1910 1390 MOT=LV*2+2:CH(1)=0:CH(2)=0:CH(3)=0 1400 GOSUB 1900:IN=3 1410 REM 1420 RETURN 1430 REM 1440 REM 1450 DM=INT(ST(1,FI)*(100-ST(2,F2))/(86+RND(1)*50)) 1460 HT=SGN(INT(RND(1)*100/ST(3,F2))) 1470 DM=DM*HT 1480 IF DM=0 THEN LOCATE F2*7,9:GOTO 1500:REM PRINT "かわした" 1490 LOCATE F2*7,9:REM PRINT DM 1500 ST(0,F2)=ST(0,F2)-DM 1510 IF ST(0,F2)<0 THEN ST(0,F2)=0 1520 GOSUB 1630:GOSUB 1910 1530 LOCATE 3,9:PRINT SPC(20) 1540 RETURN 1550 REM 1560 IF YK>0 THEN 1590 1570 LOCATE 9,14:PRINT "やくそうがありません!!" 1580 GOSUB 1910:GOTO 1610 1590 ST(0,1)=50+LV*10:YK=YK-1 1600 LOCATE 9,14:PRINT "やくそうをつかった!":GOSUB1910 1610 IF SN=0 THEN GOSUB 1630 1620 RETURN 1630 if BU=1 THEN GOTO 1790 1640 IF ST(0,1)ME THEN 1870 1890 RETURN 1900 ST(1,0)=LV*4:ST(2,0)=LV*3:ST(3,0)=LV*2:RETURN 1910 FOR WA=0 TO 300:NEXT:RETURN 2000 POKECD,CC:AD=V*4+W*600:A=USR(AD):RETURN