現在C++でシューティングゲームを作成中なのですが敵を上下に移動させて下画面に衝突したら上へ移動、上画面に衝突したら下へ移動させるプログラムを作成したいのですが方法がわかりません
現在このようなプログラムで作成しているのですがどのように作成したら良いでしょうか
#include "EnemyBlue.h" #include "IWorld.h" #include "Field.h" #include "EnemyBeam.h" #include "TextureID.h" #include "Explosion.h" //コンストラクタ EnemyBlue::EnemyBlue(IWorld* world, const GSvector2& position) { world_ = world; tag_ = "EnemyTag"; name_ = "EnemyBlue"; position_ = position; velocity_ = GSvector2{ -2.0f, -2.0f }; collider_ = BoundingRectangle{ 0.0f, 32.0f, 32.0f, 32.0f }; texture_ = TextureEnemy2; } void EnemyBlue::update(float delta_time) { //座標の更新 position_ += velocity_ * delta_time; //発射タイマの更新 timer_ += delta_time; //2秒経過したか? if (timer_ > 120.0f) { Actor* player = world_->find_actor("Player"); if (player != nullptr) { GSvector2 velocity = (-position() - position_).normalized() * 4.0f; world_->add_actor(new EnemyBeam{ world_, position_, velocity }); } timer_ = 0.0f; } }
あなたの回答
tips
プレビュー