第二章「実戦!SDLでゲーム作り@〜某宇宙人〜」第四話


ここまでやってきて、サンプルができるのが最後になりそうだったので、道筋を考えました。

前回まで、プログラム初期化、キー入力処理、描画処理、ゲーム初期処理をやってきましたので、
今回自機の動作の部分と、次回メイン部分を完成部分まで仕上げて、テスト動作するようにします。

そして、問題なく進めば、ミサイル部分、敵、当たり判定、敵ミサイル、ブロック、スコアの順で
一つずつ増やして行こうと思います。

では、その自機の動作部分をやっていこうと思います。
自機の動作は、キー入力を呼び出し、その返り値を使ってx座標を変化し、描画を呼び出してできあがり。





Game.hに追加分のソース

void MoveChara(void); //自機移動処理 #define CHARAMAXX 590 //自機のx座標の限界 #define CHARAMINX 20

CHARA.cppのソース

#define __CHARA_CPP__ #include "Def.h" static int CharaX; //各変数を宣言 static int CharaY; static int CharaN; void InitChara() //キャラの初期化 { CharaX = CHARAX; //各変数に初期値代入。 CharaY = CHARAY; CharaN = CHARAN; } void MoveChara() { Uint8 key = KeyCode(); if((key % 2) == 1) CharaX += 10; if((key % 4) >= 2) CharaX -= 10; if(CharaX > CHARAMAXX) CharaX=CHARAMAXX; //自機がx座標の限界なら、限界値に設定 if(CharaX < CHARAMINX) CharaX=CHARAMINX; DrawImg(0,0,64,64,CharaX,CharaY); //自機の座標を引数にして描画へ。画像の座標設定は後日解説。 } 〜〜以下省略〜〜



〜〜第五話へ〜〜