Building Room based placement system.

This commit is contained in:
2026-06-18 01:12:09 +02:00
parent 2332978ab7
commit fe039cbdcf
4 changed files with 167 additions and 87 deletions

View File

@@ -4,25 +4,32 @@
#include <vector>
#include "Creeps/CreepBase.hpp"
#include "Room.hpp"
#include "Structures/StructureBase.hpp"
namespace DouwcoHivemind
{
class Engine
{
private:
std::vector<std::unique_ptr<CreepBase>> creeps;
std::vector<std::unique_ptr<StructureBase>> structures;
namespace DouwcoHivemind {
class Engine {
private:
std::vector<std::unique_ptr<Room>> rooms;
std::vector<std::unique_ptr<CreepBase>> creeps;
std::vector<std::unique_ptr<StructureBase>> structures;
public:
Engine();
void loop();
public:
// Readout data from screeps API into C++ vectors
Engine();
// Loop over all rooms, screeps and structures
void loop();
private:
void ReadOutCreeps();
void ReadOutStructures();
void clearDeadCreepMemory();
};
private:
// Readout player owned rooms
void ReadOutRooms();
// Readout player owned screeps and assign their roles
void ReadOutCreeps();
// Readout player owned buildings based on their structure type
void ReadOutStructures();
// Clear dead screep memory
void clearDeadCreepMemory();
};
}
#endif // DOUWCO_HIVEMIND_ENGINE_HPP