僕は今、アクションゲームを作っています。
それで、自キャラにライフを作りたいと思って、以下の文を書きました。
struct Enemy{
int life; //生命力
int temp1; //自由に使える変数
//判定用変数
int hantei; //自由に使える変数
};
const int HANTEI = 3000; //敵と自キャラの判定間隔
int jiki_life; //前の自キャラ生命力
//敵と自キャラの当たり判定
Ball2D m = { g_jikipos, 18 };
g_jiki_life = 2;
while(ProcessMessage == 0 && g_jiki_life > jiki_life){
if ( g_enemies.hantei < (GetNowCount() + HANTEI) ){
if (HitTestBallAndBall( b, m ) == TRUE ){
g_jiki_life--;
}
}
}
if (g_jiki_life == 0){
return TRUE;
}ですが、当たり判定がなくなったり、1回当たったらすぐゲームオーバーになってしまいます。
なぜそうなるか、どこが間違っているかを教えてください。