ページ 11

敵キャラが動かない

Posted: 2009年4月18日(土) 16:38
by shalot
void enemy_pattern0(int i){
if(enemy.count<60){
enemy.y+=12;
}
if(enemy.count>60+240){
enemy.y-=12;
}
}


void EnemyMove(){
//敵データの登録
if(stage_count=100){
enemy[0].count=0;
enemy[0].x=FIELD_X+FIELD_MAX_X/2;
enemy[0].y=100;
enemy[0].flag=1;
enemy[0].muki=1;
enemy[0].pattern=0;
}
;//敵の行動制御
int i;
for(i=0;i<=100;i++){
if(enemy.flag==1){//その敵のフラグがオンになってたら
enemy_pattern0(i);
enemy.count++;
DrawRotaGraphF(enemy.x,enemy.y,1.0f,0.0f,img_zako[enemy.muki],TRUE);
//敵が画面から外れたら消す
if(enemy.x<FIELD_X||FIELD_X+FIELD_MAX_X<enemy[i].x
||enemy[i].y<FIELD_Y||FIELD_Y+FIELD_MAX_Y<enemy[i].y)
enemy[i].flag=0;
}
}
printfDx("count=%d stage=%d",enemy[0].count,stage_count);
}

このソースコードなのですが敵が初期位置に配置されてから動きません。(敵は1体enemy[0]のみです)
printfDx関数で調べてみるとenemy[0].count=1,stage_count=100が繰り返されています。(最後のコードです)
mainのソースコードの一部を以下に貼らせていただきます。stage_countはこちらで加算しています。

case 99:
Ini();
game_state++;
              stage_count=1;
break;

case 100://ゲーム本編
MycharaMove();
MyshotMove();
EnemyMove();
stage_count++;
break;

どうかよろしくお願いします。

Re:敵キャラが動かない

Posted: 2009年4月18日(土) 16:49
by yu
stage_countに100を毎回代入していますね。



//敵データの登録 
if(stage_count=100){

を

if(stage_count==100){ 


に直してみてください。

後、ソースコードはpreタグで囲んでください。

Re:敵キャラが動かない

Posted: 2009年4月18日(土) 17:03
by shalot
お早いレスありがとうございます。解決できました。

タグの件申し訳ありませんでした。次回からは気をつけます。