ship layout blueprints

This commit is contained in:
2026-05-19 21:01:10 +02:00
parent d08bf5d37b
commit d397b9969a
14 changed files with 511 additions and 7 deletions

View File

@@ -36,7 +36,7 @@ ArenaSimulation::ArenaSimulation(const GameConfig& gameConfig,
m_beltSystem,
[this]() { return allocateId(); },
[](int) {},
[](const std::string&, QVector2D) {},
[](const std::string&, QVector2D, const std::optional<ShipLayoutConfig>&) {},
m_rng);
m_shipSystem = std::make_unique<ShipSystem>(
@@ -198,7 +198,8 @@ void ArenaSimulation::spawnShips()
for (int i = 0; i < entry.count; ++i)
{
const QVector2D pos(xDist(m_rng), yDist(m_rng));
m_shipSystem->spawn(entry.schematicId, entry.level, pos, false);
m_shipSystem->spawn(entry.schematicId, entry.level, pos, false,
entry.layout);
}
}
}
@@ -214,7 +215,8 @@ void ArenaSimulation::spawnShips()
for (int i = 0; i < entry.count; ++i)
{
const QVector2D pos(xDist(m_rng), yDist(m_rng));
m_shipSystem->spawn(entry.schematicId, entry.level, pos, true);
m_shipSystem->spawn(entry.schematicId, entry.level, pos, true,
entry.layout);
}
}
}