こどもの頃の思い出。お買い物について行く楽しみ、ゲームコーナーのメダルゲーム。メダルを入れて「ジャンケン」「ポン」「フィーバー」としゃべるゲームが好きでした。
今回は雰囲気から入ろうとドット絵で、ぐー、ちょき、ぱーを作成。
10 POKE#700,0,0,0,124,170,129,66,60
20 POKE#708,108,84,84,84,130,129,66,60
30 POKE#710,60,34,225,161,129,129,66,60
40 ?CHR$(224),CHR$(225),CHR$(226)
表示してみました。なかなかかわいくできました。8x8のドット絵、下3行、129,66,60は全部共通です。
まずはシンプルにジャンケンゲームにします。作成したパターンに続けます。
40 INPUT"JANKEN(0-2)?",Y
50 C=RND(3)
60 ?"PON! YOU:";CHR$(224+Y),"COM:";CHR$(224+C)
70 IF Y=C INPUT"AIKODE(0-2)?",Y:GOTO50
80 IF (Y-C+3)%3=2 ?"WON!" ELSE ?"LOST..."
0、1、2でジャンケンの手を決めて勝負!
続いて、所持コインを10枚から初めて、買ったら倍になるゲームに改造してみます。
35 M=10
36 ?:?"COIN:";M
37 INPUT"BET?",N:IF N=0 OR N>M CONT ELSE M=M-N
80 IF (Y-C+3)%3=2 ?"WON!":M=M+N*2 ELSE ?"LOST..."
90 IF M=0 ?"GAMEOVER":END ELSE GOTO 36
変数Mが所持コイン数。80行の勝ったとき処理がポイントです!
懐かしい!音声合成ボードを加えて、しゃべるような改造も良いですね!
更に続いて、買ったら、フィーバーモードになって、0倍から3倍にランダムになるゲームに改造!
80 IF (Y-C+3)%3=2 ?"WON!":GSB100 ELSE ?"LOST..."
100 ?"FEVER! ...";:WAIT30
110 R=RND(4):?R
120 ?N*R;" COIN GET!":M=M+N*R
130 RTN
ややこしい処理を追加するときには、GOSOB(ゴーサブ、短縮形GSB)/RETURN(リターン、短縮形RTN)が便利です。
今回はプログラムでズルをしていません。どうすると楽しくなるか、いろいろ試行錯誤してみるのも楽しいですよ!
じゃんけんゲーム、全プログラム
10 POKE#700,0,0,0,124,170,129,66,60
20 POKE#708,108,84,84,84,130,129,66,60
30 POKE#710,60,34,225,161,129,129,66,60
35 M=10
36 ?:?"COIN:";M
37 INPUT"BET?",N:IF N=0 OR N>M CONT ELSE M=M-N
40 INPUT"JANKEN(0-2)?",Y
50 C=RND(3)
60 ?"PON! YOU:";CHR$(224+Y),"COM:";CHR$(224+C)
70 IF Y=C INPUT"AIKODE(0-2)?",Y:GOTO50
80 IF (Y-C+3)%3=2 ?"WON!":GSB100 ELSE ?"LOST..."
90 IF M=0 ?"GAMEOVER":END ELSE GOTO 36
100 ?"FEVER! ...";:WAIT30
110 R=RND(4):?R
120 ?N*R;" COIN GET!":M=M+N*R
130 RTN