実現したいこと
DXLIBにてシューティングゲームを作っているが…連射させたい。
前提
初心者でDXLIBにてシューティングゲームをつくっているのですが、初歩的な質問になると思います。
C++で組んでいます。キャラクターから上の方向に連射させるための処理を書いていますが。連射しません。zボタンを押して連射させたいと
思っているのですが、zボタンを押している間に画像がプレイヤーの上に表示されて、zボタンを離すと消える処理になってしまいます。因みに画像は固定されたままで動きません。
ソースコード(処理部のみ)
void image::DrawBulletsImage() { static int fireCount = 0; const int fireRate = 30; SHOT shot; shot.visible = false; shot.g_handle = imgB; if (CheckHitKey(KEY_INPUT_Z)==1 && fireCount % fireRate==0) { shot.visible = true; shot.x = sizeX; shot.y = sizeY; } if (shot.visible) shot.y -= 20; if (shot.y < -10)shot.visible = false; if (shot.visible)DrawGraph(shot.x, shot.y, shot.g_handle, TRUE); }
別にヘッダーファイルにtypedefしている。 typedef struct SHOT//弾の構造体、視覚、x、y及び高さ、幅の一つ一つの情報体 { bool visible; int x; int y; int g_handle; int width, height; };
C++
試したこと・説明
typedefでSHOTの構造体を作り呼び出しでSHOT shotを宣言している。shotはそれぞれvisibleは見えるかどうか、x,yは座標、g_handleは
グラフィックを表示させる。widthやheightは書いていますが使ってません。それぞれ画像の幅と高さを表しています。
shot[]のようにして配列を入れたりしてforループをかけたりしましたが、うまくいきませんでした。
下記のサイトを参考にしたりしました。
https://dixq.net/s/
補足情報(FW/ツールのバージョンなど)
visualstudio2022
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/05/16 01:36
2023/05/16 02:03
2023/05/16 04:44 編集
2023/05/16 02:27
2023/05/16 05:57