summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--battles/include/kurator/battles/Battle.h1
-rw-r--r--battles/src/Battle.cpp11
-rw-r--r--kurator/src/Battle.cpp3
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));
}