敵キャラが動かない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
shalot

敵キャラが動かない

#1

投稿記事 by shalot » 16年前

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;

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

yu

Re:敵キャラが動かない

#2

投稿記事 by yu » 16年前

stage_countに100を毎回代入していますね。



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

を

if(stage_count==100){ 


に直してみてください。

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

shalot

Re:敵キャラが動かない

#3

投稿記事 by shalot » 16年前

お早いレスありがとうございます。解決できました。

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

閉鎖

“C言語何でも質問掲示板” へ戻る