SP3-5 ECS #27
|
@ -28,7 +28,7 @@ namespace SHADE
|
||||||
//SHEntityManager::RemoveEntity(this->entityID);
|
//SHEntityManager::RemoveEntity(this->entityID);
|
||||||
}
|
}
|
||||||
|
|
||||||
EntityID SHEntity::GetEID() noexcept
|
EntityID SHEntity::GetEID()const noexcept
|
||||||
{
|
{
|
||||||
return this->entityID;
|
return this->entityID;
|
||||||
}
|
}
|
||||||
|
@ -39,6 +39,10 @@ namespace SHADE
|
||||||
SHComponentManager::SetActive(entityID, active);
|
SHComponentManager::SetActive(entityID, active);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool SHEntity::GetActive(void) const noexcept
|
||||||
|
{
|
||||||
|
return isActive;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void SHEntity::SetParent(SHEntity* newParent) noexcept
|
void SHEntity::SetParent(SHEntity* newParent) noexcept
|
||||||
|
@ -53,20 +57,20 @@ namespace SHADE
|
||||||
//TODO
|
//TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
SHEntity* SHEntity::GetParent() noexcept
|
SHEntity* SHEntity::GetParent()const noexcept
|
||||||
{
|
{
|
||||||
//TODO
|
//TODO
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
std::vector<SHEntity*>const& SHEntity::GetChildren() noexcept
|
std::vector<SHEntity*>const& SHEntity::GetChildren()const noexcept
|
||||||
{
|
{
|
||||||
//TODO
|
//TODO
|
||||||
return std::vector<SHEntity*>{};
|
return std::vector<SHEntity*>{};
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<EntityID>const& SHEntity::GetChildrenID() noexcept
|
std::vector<EntityID>const& SHEntity::GetChildrenID()const noexcept
|
||||||
{
|
{
|
||||||
return std::vector<EntityID>{};
|
return std::vector<EntityID>{};
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,7 +63,7 @@ namespace SHADE
|
||||||
* Returns nullptr if the entity does not have such Component.
|
* Returns nullptr if the entity does not have such Component.
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
template<typename T>
|
template<typename T>
|
||||||
std::enable_if_t<std::is_base_of_v<SHComponent, T>, T*> GetComponent() noexcept
|
std::enable_if_t<std::is_base_of_v<SHComponent, T>, T*> GetComponent()const noexcept
|
||||||
{
|
{
|
||||||
|
|
||||||
return SHComponentManager::GetComponent_s<T>(entityID);
|
return SHComponentManager::GetComponent_s<T>(entityID);
|
||||||
|
@ -77,7 +77,7 @@ namespace SHADE
|
||||||
* \return uint32_t
|
* \return uint32_t
|
||||||
* The entityID of this Entity object.
|
* The entityID of this Entity object.
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
EntityID GetEID() noexcept;
|
EntityID GetEID()const noexcept;
|
||||||
|
|
||||||
/*!*************************************************************************
|
/*!*************************************************************************
|
||||||
* \brief Set the Active object
|
* \brief Set the Active object
|
||||||
|
@ -91,6 +91,7 @@ namespace SHADE
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
virtual void SetActive(bool active) noexcept;
|
virtual void SetActive(bool active) noexcept;
|
||||||
|
|
||||||
|
bool GetActive(void)const noexcept;
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
|
@ -124,7 +125,7 @@ namespace SHADE
|
||||||
* Returns a pointer to the parent entity.
|
* Returns a pointer to the parent entity.
|
||||||
* Returns a nullptr if the parent node is the root node.
|
* Returns a nullptr if the parent node is the root node.
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
SHEntity* GetParent() noexcept;
|
SHEntity* GetParent()const noexcept;
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
|
@ -133,7 +134,7 @@ namespace SHADE
|
||||||
* \return
|
* \return
|
||||||
* Return a vector of SHEntity pointers of the children belonging to this entity.
|
* Return a vector of SHEntity pointers of the children belonging to this entity.
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
std::vector<SHEntity*>const& GetChildren() noexcept;
|
std::vector<SHEntity*>const& GetChildren()const noexcept;
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* \brief
|
* \brief
|
||||||
|
@ -141,11 +142,13 @@ namespace SHADE
|
||||||
* \return
|
* \return
|
||||||
* return a vector of EntityID of the children belonging to this entity.
|
* return a vector of EntityID of the children belonging to this entity.
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
std::vector<EntityID>const& GetChildrenID() noexcept;
|
std::vector<EntityID>const& GetChildrenID()const noexcept;
|
||||||
|
|
||||||
|
|
||||||
|
//Name of the entity. This name is non-unique and only used for the editor.
|
||||||
std::string name;
|
std::string name;
|
||||||
bool isActive;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -156,6 +159,11 @@ namespace SHADE
|
||||||
EntityID entityID;
|
EntityID entityID;
|
||||||
|
|
||||||
|
|
||||||
|
//Entity active state. This should only be set using the SetActive function which will
|
||||||
|
//set the active state of all components of this entity.
|
||||||
|
bool isActive;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue