#pragma once #include #include #include #include #include "Constants.h" #include "Entity.h" class GameInternal; class Manager { public: Manager(GameInternal* game) : game(game) {}; void update(); void draw(); void refresh(); void addToGroup(Entity* mEntity, Group mGroup); std::vector& getGroup(Group mGroup); //void addToTeam(Entity* mEntity, Team mTeam); //std::vector& getTeam(Team mTeam); std::vector getAll(); Entity& addEntity(); GameInternal* getGame() { return this->game; }; private: GameInternal* game; std::vector> entities; std::array, MAX_GROUPS> entitiesByGroup; //std::array, MAX_TEAMS> entitiesByTeam; };