準備するもの
| 名前 | 個数 |
| IchigoJam T | 1個 |
| ディスプレイ(4.3inch 自動車のバックモニター用 amazonで1,075円で購入しました) | 1台 |
| ディスプレイ用ACアダプター12V | 1個 |
| ビデオケーブル | 1個 |
| microUSBケーブル 5V (Android用のものが利用可能) | 1個 |
| USB電源アダプタ | 1個 |
| PS/2対応キーボード | 1台 |
第4回 ドライブゲームを作ってみよう
準備するもの
| 名前 | 個数 |
| IchigoJam T | 1個 |
| ディスプレイ(4.3inch 自動車のバックモニター用 amazonで1,075円で購入しました) | 1台 |
| ディスプレイ用ACアダプター12V | 1個 |
| ビデオケーブル | 1個 |
| microUSBケーブル 5V (Android用のものが利用可能) | 1個 |
| USB電源アダプタ | 1個 |
| PS/2対応キーボード | 1台 |
第1回Lチカを試してみるに書いてますのでそちらを確認してください
車を操作(矢印キー)してひたすら道路を走るゲーム
道路がランダムで左右にずれる
徐々に道幅が狭くなる
道路の端にぶつかるとゲームオーバー
ゲームオーバー時にスコアが表示される
① 電源スイッチを入れると、下図のような画面が表示されます
② 下記を入力してください (各行の//以降はコマンドの説明です入力しないでください)
10 CLS:CLP:X=16:Y=23:R=8:H=17:T=0:S=0 //画面消去、車の座標、道路のX座標と幅、スコアの初期値を設定
20 SCROLL 2 //画面全体を下スクロール
30 S=S+1 //スコアを増やす
40 C=SCR(X,Y) //車の座標に書かれた文字コードを呼び出す
50 LOCATE X,Y:PRINT "A"; //車(Aの文字)を表示
60 T=T+1:D=(T&7)>3 //道路の端に設置する文字を決めるため計算式
70 LOCATE R, 0:PRINT CHR$(2+D) //道路の端に文字を表示します
80 LOCATE R+H, 0:PRINT CHR$(2+D) //道路の端に文字を表示します
90 LOCATE R+H/2+1, 0:PRINT CHR$(2+D) //センターラインの表示、非表示の切り替え
100 K=INKEY():X=X-(K=28 AND X>0)+(K=29 AND X<28) //キーの入力に応じて車を移動
110 IF T%64=0 THEN H=H-1:IF H<3 THEN H=3 //スクロール64回に1回道路の幅を狭くする条件式
120 IF T%16<>0 THEN GOTO 160 //スクロール16回に1回道幅をずらす条件式
130 R=R+RND(3)-1 //道路をずらす
140 IF R<3 THEN R=3 //道路の端のX座標の条件式
150 IF R+H>26 THEN R=26-H //道路の端のX座標の条件式
160 IF C=0 OR C=124 THEN GOTO 20 //衝突判定
170 LOCATE X,Y:PRINT CHR$(244) //ゲームオーバー時爆発の文字
180 LOCATE 4,13:PRINT "Game Over. Score = ";S //ゲームオーバー時 Game Over、スコアの表示
変数の意味
| 変数 | 意味 |
| X | 車のX座標 |
| Y | 車のY座標 |
| R | 道路のX座標 |
| H | 道路の幅 |
| T | カウンタ。進んだ距離 |
| S | スコア |
| D | 一時的な計算用に使用 |
| C | 読みだした画面の文字 |
| K | 入力されたキーコード |
③ 入力後、下図のようになっていればOKです
① RUNと入力してEnterキーを押してください
② 車を矢印キーで動かして、道路端にあたらないようにします
③ 道路の端にぶつかったら終了です。(当たらないかぎり続きます)