migrate every factory query off BuildingSystem onto the free functions

This commit is contained in:
2026-08-05 06:45:49 +02:00
parent 1fb63cce4e
commit 58b94223f7
20 changed files with 212 additions and 244 deletions

View File

@@ -488,6 +488,11 @@ const ArenaConfig& ArenaSimulation::getArenaConfig() const
return m_arenaConfig;
}
const FactoryState& ArenaSimulation::getFactoryState() const
{
return m_factoryState;
}
const BuildingSystem& ArenaSimulation::getBuildings() const
{
return *m_buildingSystem;

View File

@@ -86,6 +86,7 @@ public:
const ArenaConfig& getArenaConfig() const;
const BuildingSystem& getBuildings() const;
const FactoryState& getFactoryState() const;
const ShipSystem& getShips() const;
const DebrisSystem& getDebrisSystem() const;
EntityAdmin& getAdmin();

View File

@@ -1,4 +1,5 @@
#include "ArenaView.h"
#include "FactoryQueries.h"
#include <algorithm>
#include <cmath>
@@ -306,7 +307,7 @@ void ArenaView::drawTiles(QPainter& painter)
void ArenaView::drawBuildings(QPainter& painter)
{
for (const Building& b : m_sim->getBuildings().getAllBuildings())
for (const Building& b : getAllBuildings(m_sim->getFactoryState()))
{
const std::map<BuildingType, BuildingVisuals>::const_iterator it =
m_visuals->buildings.find(b.type);