検索結果 10 件

by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ ホーミングがうまくできない
返信数: 4
閲覧数: 4819

Re: DXライブラリ ホーミングがうまくできない

すみません、自分がやりたいことを調べてみたらホーミングではなく自機狙いでした。自機狙いはまあまあできているのですが、(画面の上下に自機を移動させると自機狙いの弾が届かないことを除いて)自機狙いをする敵にある程度近づくと弾を撃ってこなくなります。とりあえずこれを解決したいです。
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ ホーミングがうまくできない
返信数: 4
閲覧数: 4819

Re: DXライブラリ ホーミングがうまくできない

下のように変更したら、何となく(本当に何となく)ホーミングしてくれるようになりましたが、精度が低いです。自機が画面の真ん中当たりにあるときはちゃんと弾が自機の方向に飛んでいくのですが、画面の上か下に自機があるときは自機からずれてしまいます。 for (j = 6; j < ENEMY; j++) { //敵の弾の座標を格納(ホーミング) if (EbulletCounter[j] == 60) { if (enemySFlag[j] == 0) { enemyB_x[j] = enemy_x[j]; enemyB_y[j] = enemy_y[j] + 15; angle[j] = atan2...
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ ホーミングがうまくできない
返信数: 4
閲覧数: 4819

DXライブラリ ホーミングがうまくできない

前のトピックが終わったばかりで申し訳ないのですが、分からないところがあったので質問します。 敵がホーミング弾を撃ってくるようにしたいのですが、全然違う方向に撃ってきます。色々なサイトを参考にしましたが、頭がこんがらがってしまいました。このまま自分で考えていても埒があかないと思うので、教えて欲しいです。 for (j = 6; j < ENEMY; j++) { //敵の弾の座標を格納(ホーミング) if (EbulletCounter[j] == 60) { if (enemySFlag[j] == 0) { enemyB_x[j] = enemy_x[j]; enemyB_y[j] = en...
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

直してみたら、敵1体につき弾を1発しか撃ってくれなくなってしまいましたが、バグもなく正常に動作しているのでこのままにしておこうと思います。
みけCATさん、質問に丁寧に答えてくださりありがとうございました!
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

すみません、間違えてました… これです↓ for (j = 0; j < ENEMY; j++) { //敵の弾の座標を格納 if (EbulletCounter[j] == 60) { if (enemySFlag[j] == 0) { enemyB_x[j] = enemy_x[j]; enemyB_y[j] = enemy_y[j] + 15; enemySFlag[j] = 1; break; } } } for (j = 0; j < ENEMY; j++) { if (enemySFlag[j] == 1) { //敵の弾のフラグが1なら enemyB_x[j] -= 6; //敵...
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

これはどうですか!直しました! for (i = 0; i < SHOT; i++) { for (j = 0; j < ENEMY; j++) { //自機の弾と敵の当たり判定 if (bulletFlag[i] == 1) { if (enemyFlag[j] == 1) { if (((bullet_x[i] > enemy_x[j] && bullet_x[i] < enemy_x[j] + enemy_w) || (enemy_x[j] > bullet_x[i] && enemy_x[j] < bullet_x[i] + bullet_w)) && ((bullet_y[i] > ...
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

敵が画面上に現れてから60フレームごとに1発弾を撃つようにしたいです。弾を出したらカウンターを0にすればいけるかなと思ったのですが、全然できませんね… 図を使っての説明、ありがとうございました!とても分かりやすかったです。確かに自分のコードだと当たり判定が正常に動くわけがないですよね… コードを下のように変更してみたら、とりあえず出てきた敵は倒せるようになったのですが、これであっているでしょうか? for (i = 0; i < SHOT+j; i++) { for (j = 0; j < SHOT; j++) { //自機の弾と敵の当たり判定 if (bulletFlag[i] == 1) ...
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

最初に出てくる敵の弾はちゃんと意図した通りに動きますが、そのあとの弾が正常に動作しません!2体目は弾を1発撃ったらそのあと撃たず、3体目は敵が画面から消える直前に撃ってきます…(;-;)どういうことでしょうか…
画面に敵を1体しか表示できないという問題は指摘していただいた場所を直したら無事解決しました。敵の当たり判定がおかしいです。弾が当たったり当たらなかったり…
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

Re: DXライブラリ 画面に敵を1体しか表示できない

他の箇所は指摘していただいた通りに直しましたが、配列上で同じ位置にある敵と弾しか見ていないというのがよく分かりません。詳しく教えていただけないでしょうか?

それと、今まで更新処理はシーン変更のみと思い込んでいたのですが、画面に表示させる以外の処理は全て更新処理ということですか?よくないというのは、見づらくてよくないということでしょうか。動作に影響はありますか?
by くろのま
3年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリ 画面に敵を1体しか表示できない
返信数: 11
閲覧数: 21827

DXライブラリ 画面に敵を1体しか表示できない

初心者です。 DXライブラリを使ってシューティングゲームを作っています。敵を決まったタイミングで表示して動かそうとしました。すると、ちゃんと表示されて動きもするんですが、次の敵が現れたら前に表示された敵は消えてしまいます。それと、敵を倒したら当たり判定が残る?ような現象も発生しています。原因が全く分からないので、教えて頂きたいです。ごちゃごちゃしててすみません。 環境は Windows10、 Visual Studio 2019です。 #include "Game.h" #include "SceneMgr.h" #include "DxLib.h" #include "keyboard.h"...

詳細検索ページへ移動する