前提・実現したいこと
ここに質問の内容を詳しく書いてください。
c++でインベーダーゲームのようなものを作っています。
当たり判定機能を実装中にどう書いてよいのか分からなくなってしまいました。
発生している問題・エラーメッセージ
エラーメッセージなし
該当のソースコード
c++
1// 衝突判定 2 if (CollisionCircle(pEnemy->vPos.x, 3 pEnemy->vPos.y, ENEMY_RADIUS, fX, fY, fR)) { 4 // 座標を返す 5 if (pfX) { 6 *pfX = pEnemy->vPos.x; 7 } 8 if (pfY) { 9 *pfY = pEnemy->vPos.y; 10 } 11 // 消滅 (仮) 12 if (fDamage > 0.0f) {//敵が1キャラ分まで近づいたら入れたい処理 13 pEnemy->nStat = 0; 14 StartEffect(&pEnemy->vPos, EEFECT_DEAD000); 15 AddScore(100); 16 } 17 return i; // 0以上なら当たり 18 }
試したこと
c++当たり判定当たっていなくてもできるとかを調べてみましたが当たった時の判定しかわかりませんでした。ノートに書きだしてみましたが、もし敵のポリゴンの下端とプレイヤーのポリゴンの上端が例えば38px以下になったら行う処理という感じです。
補足情報(FW/ツールのバージョンなど)
Visualc++です。Windows10で動作確認済
ifで分岐させる条件式が知りたい
敵が1キャラ分まで近づいたら消滅ではなく画面の色を変えるなどしたい
必要な単語があれば返信ください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/09 11:13