PC-8801mkIISRゲーあれこれ Part16
100 DIM MP(22,22),C$(7),N(256),RP(999)
110 C$(0)=" ":C$(1)="~":C$(2)="F":C$(3)="H":C$(4)="O":C$(5)="E":C$(6)="M"
120 N(32)=0:N(126)=1:N(70)=2:N(72)=3:N(79)=4:N(69)=5:N(77)=6
130 CLS:F=0:D=0:H=0:RESTORE
140 INPUT"STAGE";ST:INPUT"1PLAY 2DEMO";MD:
150 I=1:IF ST=1THEN 180
160 READ A$:IF A$="e" THEN I=I+1
170 IF ST>I THEN 160
180 FOR Y=1 TO 12
190 READ A$
200 FOR X=1 TO 20
210 A=N(ASC(MID$(A$,X,1)))
220 IF A=2 THEN F=F+1
230 IF A=6 THEN MX=X:MY=Y
240 GOSUB 500
250 NEXT
260 NEXT
270 FOR I=0 TO 22:MP(0,I)=4:MP(21,I)=4:MP(I,13)=4:NEXT
280 IF MD=1 THEN 320
290 READ A$:J=0
300 FOR I=1 TO LEN(A$):RP(I+J-1)=ASC(MID$(A$,I,1)):NEXT
310 J=J+LEN(A$):READ A$:IF A$<>"e" THEN 300
320 A$=INPUT$(1):IF A$="g" THEN 130
330 IF MD=2 THEN A$=CHR$(RP(D))
340 XM=(A$="4")-(A$="6")
350 YM=(MP(MX,MY-1)=3 AND H=3 AND A$="8")-(A$="2")
360 B=MP(MX+XM,MY+YM)
370 IF B=5 AND F=0 THEN 600
380 IF B>3 THEN XM=0:YM=0
390 IF XM=0 AND YM=0 THEN 320
400 IF MD<>2 THEN RP(D)=ASC(A$)
410 CX=MX:CY=MY:D=D+1
420 IF B=2 THEN F=F-1
430 X=MX:Y=MY:A=H:GOSUB 500
440 IF B=3 THEN H=3 ELSE H=0
450 MX=MX+XM:MY=MY+YM
460 X=MX:Y=MY:A=6:GOSUB 500
470 IF MP(CX,CY-1)=4 THEN I=0:J=0:GOSUB 560
480 IF MP(MX,MY+1)=0 THEN GOSUB 510
490 GOTO 320
500 MP(X,Y)=A:LOCATE X-1,Y-1:PRINT C$(A);:RETURN
510 CX=MX:CY=MY:X=MX:Y=MY:A=0:GOSUB 500
520 MY=MY+1:IF MP(MX,MY+1)=0 THEN 520
530 X=MX:Y=MY:A=6:GOSUB 500
540 IF MP(CX,CY-1)=4 THEN I=0:J=0:GOSUB 560
550 RETURN
560 I=I+1:IF MP(CX,CY-I-1)=4 THEN 560
570 J=J+1:IF MP(CX,CY+J)=0 THEN 570
580 FOR K=1 TO I:X=CX:Y=CY-K:A=0:GOSUB 500:X=CX:Y=CY-K+J:A=4:GOSUB 500:NEXT
590 RETURN
600 LOCATE 0,14:FOR I=0 TO D:PRINT CHR$(RP(I));:NEXT:PRINT A$
610 INPUT"CLEAR";A$:GOTO 130
148 :
141:2007/03/08(木) 00:13:06 ID:???
>>142 プログラム部分は別のトラックを
読み込んでるんだよ。
共用するのはデータ部分。
620 DATA "~~~~~~~~~~~~~M~~~~~~"
630 DATA "~~~~~~~H~~~~~~~~~~~~"
640 DATA "~~O~~~~H~~~~~~~FFF~~"
650 DATA "~~~~~F~H~~~O~~~~~~~~"
660 DATA "~~~~~~~H~~~~~~~~~~~~"
670 DATA "~~O~~~~H~F~~~~~OOO~O"
680 DATA "~~~~~~~H~F~~~~~~~~~~"
690 DATA "~~~O~~~H~~FFF~~~~ ~~"
700 DATA "~~~~~~~H~~~~~~~~~ ~~"
710 DATA "~ ~H~~~H~~~~OOO~~ ~~"
720 DATA "~~EH~~~H~~~F~~~~~~~~"
730 DATA "~~~~~~~H~~~~~~OOOO~~"
740 DATA "666622444244244444844666622626624226244444844444","e"
サンプル面
リプレイ機能付です
クリアするとリプレイデータはくので最後の行にDATAにして入れて,"e"で締めくくります
テンキーで操作
'g'でギブアップ
エディットDATA文 空白 ~土 Fフルーツ Hはしご O岩 E出口
各種ツールで88に読み込んでください BASICならなんでも動きます