Argentum Online - Cliente
|
|
1 #ifndef ENTITY_MANAGER_H
2 #define ENTITY_MANAGER_H
6 #include <unordered_map>
9 typedef unsigned int EntityId;
19 std::unordered_map<EntityId, std::unique_ptr<Entity>> entities;
20 std::unordered_map<EntityId, bool> updated;
97 #endif // ENTITY_MANAGER_H
void empty()
Remueve todas las entidades.
Definition: entity_manager.cpp:83
static EntityManager & get_instance()
Devuelve el EntityManager, que es un singleton.
Definition: entity_manager.cpp:8
Entity & get_from_id(unsigned int entity_id)
Devuelve una entidad segun su id.
Definition: entity_manager.cpp:48
Entity & create(unsigned int entity_id)
Crea una nueva entidad.
Definition: entity_manager.cpp:22
bool has_entity(unsigned int entity_id)
Indica si una entidad existe.
Definition: entity_manager.cpp:43
std::vector< EntityId > get_entity_id_list()
Devuelve un vector con los ids de todas las entidades existentes.
Definition: entity_manager.cpp:56
Entidad (NPCs y personajes)
Definition: entity.h:17
void update()
Actualiza todas las entidades.
Definition: entity_manager.cpp:17
void remove_non_updated()
Indica que todas las entidades no actualizadas deben ser quitadas en el proximo clean.
Definition: entity_manager.cpp:72
void update_initialize()
Marca todas las entidades como no actualizadas.
Definition: entity_manager.cpp:65
void clean()
Quita todas las entidades marcadas con alive = false.
Definition: entity_manager.cpp:29
Manager de entidades.
Definition: entity_manager.h:17