Added skeleton functions to managed GameObject for scene graph interface
This commit is contained in:
parent
270f69572c
commit
c9b116b8be
|
@ -17,6 +17,7 @@ of DigiPen Institute of Technology is prohibited.
|
|||
#include "GameObject.hxx"
|
||||
// External Dependencies
|
||||
#include "ECS_Base/Managers/SHEntityManager.h"
|
||||
#include "Scene/SHSceneGraph.h"
|
||||
// Project Headers
|
||||
#include "ECS.hxx"
|
||||
#include "Scripts/ScriptStore.hxx"
|
||||
|
@ -58,6 +59,14 @@ namespace SHADE
|
|||
{
|
||||
return true; // TODO: Update once we have an equivalent on the Entity object
|
||||
}
|
||||
GameObject^ GameObject::Parent::get()
|
||||
{
|
||||
return nullptr;
|
||||
}
|
||||
void GameObject::Parent::set(GameObject^ newParent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------------*/
|
||||
/* GameObject Property Functions */
|
||||
|
@ -70,6 +79,10 @@ namespace SHADE
|
|||
{
|
||||
GetNativeEntity().SetActive(active);
|
||||
}
|
||||
System::Collections::ArrayList^ GameObject::GetChildren()
|
||||
{
|
||||
return children;
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------------*/
|
||||
/* Component Functions */
|
||||
|
@ -141,11 +154,13 @@ namespace SHADE
|
|||
/* Constructors */
|
||||
/*---------------------------------------------------------------------------------*/
|
||||
GameObject::GameObject(const SHEntity& entity)
|
||||
: entity { entity.GetEID() }
|
||||
: entity { entity.GetEID() }
|
||||
, children{ gcnew System::Collections::ArrayList }
|
||||
{}
|
||||
|
||||
GameObject::GameObject(Entity entity)
|
||||
: entity { entity }
|
||||
: entity { entity }
|
||||
, children{ gcnew System::Collections::ArrayList }
|
||||
{}
|
||||
|
||||
/*---------------------------------------------------------------------------------*/
|
||||
|
|
|
@ -86,6 +86,11 @@ namespace SHADE
|
|||
{
|
||||
bool get();
|
||||
}
|
||||
property GameObject^ Parent
|
||||
{
|
||||
GameObject^ get();
|
||||
void set(GameObject^);
|
||||
}
|
||||
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
/* GameObject Property Functions */
|
||||
|
@ -106,6 +111,16 @@ namespace SHADE
|
|||
/// </param>
|
||||
void SetActive(bool active);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the list of GameObjects that are the children of this GameObject.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// The list of GameObjects that are the children of this GameObject. List is empty is
|
||||
/// there is none.
|
||||
/// </returns>
|
||||
System::Collections::ArrayList^ GetChildren();
|
||||
|
||||
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
/* Component Access Functions */
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
|
@ -235,7 +250,8 @@ namespace SHADE
|
|||
/*-----------------------------------------------------------------------------*/
|
||||
/* Data Members */
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
Entity entity;
|
||||
Entity entity;
|
||||
System::Collections::ArrayList^ children;
|
||||
|
||||
public:
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
|
|
Loading…
Reference in New Issue