diff options
-rw-r--r-- | battles/include/kurator/battles/Battle.h | 1 | ||||
-rw-r--r-- | battles/src/Battle.cpp | 11 | ||||
-rw-r--r-- | kurator/src/Battle.cpp | 3 |
3 files changed, 13 insertions, 2 deletions
diff --git a/battles/include/kurator/battles/Battle.h b/battles/include/kurator/battles/Battle.h index 0923f36..468a972 100644 --- a/battles/include/kurator/battles/Battle.h +++ b/battles/include/kurator/battles/Battle.h @@ -14,6 +14,7 @@ namespace battles struct Battle { explicit Battle(Scenario scenario); + void update(float dt); entt::registry registry; }; diff --git a/battles/src/Battle.cpp b/battles/src/Battle.cpp index e410f07..454cbfd 100644 --- a/battles/src/Battle.cpp +++ b/battles/src/Battle.cpp @@ -16,7 +16,7 @@ namespace battles Battle::Battle(Scenario scenario) { std::random_device dev; - std::uniform_real_distribution<> pos{-5.0, 5.0}; + std::uniform_real_distribution<> pos{-2.5, 2.5}; for (const auto& ship : scenario.ships) { const auto entity = registry.create(); registry.emplace<universe::ShipType>(entity, ship.type); @@ -26,5 +26,14 @@ Battle::Battle(Scenario scenario) } +void +Battle::update(const float dt) +{ + auto view = registry.view<Transform, Team>(); + for (auto&& [entity, transform, team] : view.each()) + transform.position.x += 0.1 * dt * (team.id * 2 - 1); +} + + } // namespace battles } // namespace kurator diff --git a/kurator/src/Battle.cpp b/kurator/src/Battle.cpp index 7d924b5..5aa18fe 100644 --- a/kurator/src/Battle.cpp +++ b/kurator/src/Battle.cpp @@ -28,8 +28,9 @@ Battle::Battle(std::shared_ptr<Session> _session) : void -Battle::update(const float) +Battle::update(const float dt) { + battle.update(dt); if (IsKeyPressed(KEY_SPACE)) session->set(std::make_shared<Title>(session)); } |