#pragma once #include #include #include #include #include "Constants.h" #include "Entity.h" class Manager { public: 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(); private: std::vector> entities; std::array, MAX_GROUPS> entitiesByGroup; std::array, MAX_TEAMS> entitiesByTeam; };