★あそびかた
上から降ってくるものを受け取ってください。ただし、ウンコや岩を受け取ってしまうとゲームオーバーになってしまいます。
ステッキを取ると色に応じて画面に出ているキャラが全部変わります。以下にステッキを取ったときの効果を示します。
青いステッキ → 全てコインに変化
赤いステッキ → 全てウンコに変化
黄色いステッキ → 全てケーキに変化
灰色ステッキ → 全て岩に変化
★プログラムで使用している変数および関数
プログラムで使用している変数の役割(用途)と関数の一覧です。
◆変 数
BG |
仮想画面(背景データ格納用) |
TFLAG |
落下物の種類(バッファ) |
TX |
落下物のX座標位置(バッファ) |
TY |
落下物のY座標位置(バッファ) |
flag |
ゲーム中かどうかのフラグ |
x |
プレイヤーのX座標 |
sc |
スコア |
max |
一度に動かす落下物の最大数 |
initPat |
タイトル画面データ |
gPat |
ゲーム画面データ |
tID |
タイマー割り込み用 |
◆関 数
init() |
初期化処理 |
draw() |
プレイヤーを描画 |
erase() |
プレイヤーを消去 |
left() |
プレイヤー左移動 |
right() |
プレイヤー右移動 |
hantei() |
プレイヤーと落下物の判定処理 |
toSet(n) |
画面上のキャラを全て変更する |
stTeki2(n) |
落下物出現 |
move() |
落下物移動 |
drawTeki(c) |
落下物表示 |
eraseTeki(c) |
落下物消去 |
main() |
メイン処理 |
start() |
ゲーム開始処理 |
このゲームは普通のゲームに使用されている「バッファ」を使っています。そのため、速度的に遅い部分があります。高速化(無駄な部分を省いて処理速度を上げること)すれば、ちらつきもすくなくなります。
先頭の方にあるmaxという変数を変更すれば、一度に出現するものの数を変更できます。配列で確保してあるので、32以上出現させる場合は、配列の確保の数値も変えてください。
★注意事項
落下物の数を変更したりアルゴリズムを工夫してちらつかないようにしたりするといいでしょう。