31 lines
707 B
C++
31 lines
707 B
C++
#include <ecs/components.hpp>
|
|
#include <ecs/entity.hpp>
|
|
#include <ecs/scene.hpp>
|
|
|
|
namespace lt {
|
|
|
|
auto Scene::create_entity(const std::string &name, const TransformComponent &transform) -> Entity
|
|
{
|
|
return create_entity_with_uuid(name, UUID(), transform);
|
|
}
|
|
|
|
auto Scene::get_entity_by_tag(const std::string &tag) -> Entity
|
|
{
|
|
return {};
|
|
}
|
|
|
|
auto Scene::create_entity_with_uuid(
|
|
const std::string &name,
|
|
UUID uuid,
|
|
const TransformComponent &transform
|
|
) -> Entity
|
|
{
|
|
auto entity = Entity { m_registry.create(), this };
|
|
entity.add_component<TagComponent>(name);
|
|
entity.add_component<TransformComponent>(transform);
|
|
entity.add_component<UUIDComponent>(uuid);
|
|
|
|
return entity;
|
|
}
|
|
|
|
} // namespace lt
|