シューティングゲームの敵弾について

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

シューティングゲームの敵弾について

#1

投稿記事 by UN » 18年前

たびたびお世話になっております。
サンプルを参考にしつつ敵の弾まで実装できたわけですがその際の処理で敵弾発射中にプレイヤー側が攻撃を開始すると敵が消滅しているのにもかかわらずタイムラグが発生して消滅した敵の付近から残りの弾だけが発射されています。これを解消したいのですがどうすれば良いのでしょうか?

Justy

Re:シューティングゲームの敵弾について

#2

投稿記事 by Justy » 18年前

敵が消滅しているのにもかかわらずタイムラグが発生して消滅した
敵の付近から残りの弾だけが発射されています
 どういうソースを書かれているのかわからないので、正確には答えられませんが、
敵が死んでいるかどうか見分けて、死んでいるなら敵から弾の発射をしなければ
いいのではないでしょうか?

UN

Re:シューティングゲームの敵弾について

#3

投稿記事 by UN » 18年前

回答誠にありがとうございます。
敵弾のソースはここのサンプルプログラムと現在の所同一です。
フラグで死んでいるならファルス、生きているならトルーといった感じで指定をしたいのですが細かいところが不明でして。

Justy

Re:シューティングゲームの敵弾について

#4

投稿記事 by Justy » 18年前

 ざっくりとサンプルプログラムを修正してみました。

http://up.img5.net/index.html
up9070.zip

 です。


 このプログラム構造からすると、一番簡単な方法は
弾の構造体に発射したエネミーの番号を入れて(構造体のメンバに enemy_idを追加)、
弾の発射開始処理をするところで、そのエネミーの番号からエネミーが生きているかどうかを
調べて、発射をするかどうか決めます。

 一応その処理は IsAliveEnemy()という関数にしてあります。


 オリジナルとの差分は添付の pngファイルを参照してください。

UN

Re:シューティングゲームの敵弾について

#5

投稿記事 by UN » 18年前

誠にありがとうございました。
参考にしてみます。

閉鎖

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