summaryrefslogtreecommitdiff
path: root/sim/src/TeamManager.cpp
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2023-02-13 00:48:43 +0100
committerAki <please@ignore.pl>2023-02-13 00:48:43 +0100
commit6f8db05c02f941ce75da34e3c50c987d03c23e54 (patch)
tree43dfefb9c45b2d48dc55695bcea16b42e491e7d3 /sim/src/TeamManager.cpp
parent4f2f2d329aeee7e45198cfc6e46f7648cedf1707 (diff)
downloadkurator-6f8db05c02f941ce75da34e3c50c987d03c23e54.zip
kurator-6f8db05c02f941ce75da34e3c50c987d03c23e54.tar.gz
kurator-6f8db05c02f941ce75da34e3c50c987d03c23e54.tar.bz2
Extracted scenario setup from BaseBattle constructor
Diffstat (limited to 'sim/src/TeamManager.cpp')
-rw-r--r--sim/src/TeamManager.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/sim/src/TeamManager.cpp b/sim/src/TeamManager.cpp
index 7252acb..778cd18 100644
--- a/sim/src/TeamManager.cpp
+++ b/sim/src/TeamManager.cpp
@@ -8,7 +8,9 @@
#include <entt/entity/registry.hpp>
#include <kurator/engine/Context.h>
+#include <kurator/sim/components.h>
#include <kurator/sim/events.h>
+#include <kurator/universe/ShipType.h>
namespace kurator
@@ -25,6 +27,15 @@ TeamManager::TeamManager() :
void
+TeamManager::extend(entt::registry& registry)
+{
+ auto ships = registry.view<universe::ShipType, sim::Team>();
+ for (const auto& [entity, type, team] : ships.each())
+ add(team.id, entity);
+}
+
+
+void
TeamManager::add(int team, entt::entity entity)
{
for (int i = teams.size(); i < team + 1; ++i)