10 'Ringo-Man 20 VIDEO0:CLV:PC.RESET:PC.SSTART #15 30 FORI=0TO5:PC.SCREATE I,#5E:NEXT 40 PC.SCREATE 8,#1F 50 PC.SROTATE 9,2 60 PC.SCREATE 10,#59 70 PC.SCREATE 11,#3E 80 PC.SCREATE 12,#3E 90 FORI=0TO2:PC.SMOVE 13+I,#38+I*8,0:NEXT 100 PC.MSCORE 0,0,#12,"C~>>>G~" 110 PC.MSCORE 1,0,#12,"CDC~" 120 PC.MSCORE 2,0,#12,">GAC~~" 130 PC.MSCORE 3,0,#12,">>>A~B~" 200 X=40:Y=32:C=8:D=8:E=32:F=40:S=8 210 LET[80],88,16,-4,0,0,2,-8 220 POKE#800+21,1,1,1:POKE#800+64,1,1,1 300 ' 310 A=PEEK(#800+(X-1)/8+(Y+8-Z)/8*10):B=PEEK(#800+(X-1)/8+(Y+15-Z)/8*10) 320 IF(BTN(28)=1)&(X>0)&(A=0)&(B=0) X=X-2:H=1 330 A=PEEK(#800+(X+8)/8+(Y+8-Z)/8*10):B=PEEK(#800+(X+8)/8+(Y+15-Z)/8*10) 340 IF(BTN(29)=1)&(X<72)&(A=0)&(B=0) X=X+2:H=0 350 A=PEEK(#800+X/8+(Y+16-Z)/8*10):B=PEEK(#800+(X+7)/8+(Y+16-Z)/8*10) 360 IF(J=0)&(A=0)&(B=0) J=1:Q=0 370 IF(J>0)&((A=1)|(B=1)) J=0:Q=0:Y=(Y-Z)/8*8+Z 380 IF(K=1)&(BTN(32)=0) K=0 390 IF(J=0)&(K=0)&(BTN(32)=1) K=1:J=1:Q=-400:PC.MPLAY 1,1 400 IF J>0 W=Y+Q/100:Q=Q+100 410 A=PEEK(#800+X/8+(W+6-Z)/8*10):B=PEEK(#800+(X+7)/8+(W+6-Z)/8*10) 420 IF J>0 IF(Q<0)&((A=1)|(B=1)) Q=0 ELSE Y=W 430 IF(G=0)&(J=2) G=1:PC.MPLAY 1,3 500 ' 510 [80]=[80]+[82]:IF(([80]=0)&([82]<0))|(([80]=72)&([82]>0)) [82]=-[82] 520 [83]=[83]+[85]:IF(([83]=0)&([85]<0))|(([83]=72)&([85]>0)) [85]=-[85] 530 IF U=1 [86]=[86]+[88]:[87]=[87]+[89]/100:[89]=[89]+250:IF(([86]<-8)|([86]>80)|([87]<-16)|([87]>48)) U=0:[86]=-8 600 ' 610 FORI=0TO2:PC.SMOVE I,C+I*8,D:PC.SMOVE I+3,E+I*8,F:NEXT 620 L=(L+1)%8:O=O^1:P=O+3:IFJ>0 N=0 ELSE N=O 630 IF J=2 P=1:V=X ELSE V=-8 640 PC.SMOVE 7,X,Y-N:PC.SCREATE 7,P:PC.SFLIP 7,H 650 PC.SMOVE 8,X,Y-4-N:PC.SFLIP 8,!H 660 PC.SMOVE 9,V,Y+6:PC.SCREATE 9,#40+O 670 PC.SMOVE 10,[80],[81] 680 PC.SMOVE 11,[83],[84]-L>>2 690 PC.SMOVE 12,[86],[87]:PC.SROTATE 12,M 700 PC.SCREATE 13,#A6+R/100:PC.SCREATE 14,#A6+R/10%10:PC.SCREATE 15,#A6+R%10%10 800 ' 810 IF((X-[80])*(X-[80])+(Y-[81])*(Y-[81])<64) J=2:Q=-750:PC.MPLAY 1,2:[81]=[81]-32:[82]=-[82]:IF[82]>0 [80]=-8 ELSE [80]=80 820 IF((X-[83])*(X-[83])+(Y-[84])*(Y-[84])<32) IF J<2 GOTO1000 ELSE U=1:PC.MPLAY 1,0:[86]=[83]:[87]=[84]:[88]=[83]-X:[89]=-750:[84]=[84]-64:[85]=-[85]:IF[85]>0 [83]=-8 ELSE [83]=80 830 IF[88]<0 M=3 ELSE M=1 840 IF Y>63 GOTO1000 850 WAIT S:IF G=0 GOTO300 900 ' 910 D=D+1:F=F+1:Y=Y+1:[81]=[81]+1:[84]=[84]+1:[87]=[87]+1:Z=(Z+1)%8 920 IF Z=0 COPY#85A,#800,70:COPY#800,#850,80:R=R+1 930 IF(R%5=0)&(S>0)&(T=0) S=S-1:T=1:PC.MPLAY 1,3 940 IF R%5=1 T=0 950 IF D>55 C=RND(8)*8:D=-8:POKE#800+C/8,1,1,1 960 IF F>55 E=RND(8)*8:F=-8:POKE#800+E/8,1,1,1 970 IF [81]>55 [81]=-8 980 IF [84]>55 [84]=-8 990 GOTO300 1000 ' 1010 PC.MSCORE 3,1,#12,"<GFEDC~~":VIDEO1:CLS 1020 ?"Game Over":?:?"Result:";R;"m":?:?"Push [Enter]" 1030 IF INKEY()=10 RUN ELSE CONT
これは楽しい! スクロールも滑らかで、まさしくアクションゲーム。火の玉を取るタイミングが勝負所ですね。足場が見えていないのに取ってしまうとどこにも降りれない、かといって待ちすぎるとスクロールに追いつかれる……。ガイコツもいるのでなかなかの難易度。それだけに何度も挑戦したくなります。