以前に投稿したRough Drivin'をIchigoJam Basic 1.3.1で動かしてみたら、速すぎでゲームバランスが悪くなっていました。1.3.1用に少し修正しました。
再ゲームはエンターキーです。
-------- -------- -------- --------
最高速でぶっ飛ばせ!って感じの荒っぽい3D(?)ドライブゲームです。
操作は左右キー。スペースキーがアクセルです。
ブレーキなんてありません!
タイムが0になる前に距離(D)100 走ると次ステージにいけます。
このとき、画面がフラッシュしてタイム加算します。残っているタイム分ちょっとボーナスタイムも加算されます。
VIDEO 3のときって、画面のメモリ4分の1しか使ってないっぽいので、残り4分の3のところ使えるんじゃないの?と思って試したら使えました。
ここを使って、画面の表示切替を速くしています。
プログラムで言うと、行番号30から80のところであらかじめ道路のパターン(左急カーブ、左カーブ、直線、右カーブ、右急カーブの5パターン)を描いて、使っていないメモリのところにコピーしています。
これを行番号170のところで使っています。
「A=16*(T%2)」では、わざと画面をちらつかせるようにしています。スピード感を出したかったんです。
VIDEO 3の大きな文字の画面なので、もとに戻すときは VIDEO 1(F8キー)で戻してください。
行番号60のスペースは9個です。
けっこう楽しいゲームなのでやってみてください!
10 'Rough Drivin'(1.3.1) 20 CLV:VIDEO 3 30 FOR I=0 TO 4:CLS:BEEP 100 40 FOR C=0 TO 111:PRINT CHR$(#8D-C/10+RND(3));:NEXT 50 Z=30:FOR J=9 TO 3 STEP -1 60 LOCATE Z/10,J-3:PRINT "-";STR$(" ",J);"-"; 70 Z=Z+5+(I-2)*5:NEXT 80 COPY #9C0+I*112,#900,112:NEXT 90 'Main 100 CLS:X=70:H=2:S=20:T=700 110 G=G+1:LOCATE 0,1:PRINT "STAGE ";G;:VIDEO 4:BEEP 4,30 120 T=T+400+T/5:D=0:WAIT 20:VIDEO 3 130 D=D+S/10:W=W+S/30:WAIT 2 140 IF W<200 THEN GOTO 170 150 W=0:R=RND(3)-1 160 H=H+R+(H+R<0)*2-((H+R)>4)*2 170 A=16*(T%2):COPY #940,#9C0+H*112+A,112-A 180 B=BTN(SPACE):S=S+B-(1-B)*2*(S>20):BEEP (274-S)*(S<274)+1 190 V=(BTN(RIGHT)-BTN(LEFT))*500-(H-2)*S*2 200 X=X+V/100 210 POKE #9A0+X/10,#86,#8F,#89 220 T=T-1:LOCATE 0,0:PRINT "TIME:";T;" D:";(G-1)*100+D/100;" "; 230 LOCATE 5,11:PRINT S;"km/h "; 240 IF D>10000 THEN GOTO 110 250 IF T=0 THEN GOTO 280 260 IF X/10>2 AND X/10<12 THEN GOTO 130 270 SCROLL 0:WAIT 4:SCROLL 2:WAIT 4:S=S-S/3*(S>30):GOTO 130 280 WAIT 60:LOCATE 3,5:PRINT "GAME OVER";:CLK 290 IF INKEY()=10 THEN RUN ELSE CONT