IGameObjectSystem

C++
struct IGameObjectSystem {
  struct SEntitySpawnParamsForGameObjectWithPreactivatedExtension {
    bool (* hookFunction)(IEntity * pEntity, IGameObject*, void * pUserData);
    void * pUserData;
  };
  const ExtensionID InvalidExtensionID = ~ExtensionID(0);
  const uint32 InvalidEventID = ~uint32(0);
};
File

IGameObjectSystem.h

IGameObjectSystem::SEntitySpawnParamsForGameObjectWithPreactivatedExtension Structure
C++
struct SEntitySpawnParamsForGameObjectWithPreactivatedExtension {
  bool (* hookFunction)(IEntity * pEntity, IGameObject*, void * pUserData);
  void * pUserData;
};
File

IGameObjectSystem.h

Description

If this is set as the user data for a GameObject with Preactivated Extension spawn, then it will be called back to provide additional initialization.

IGameObjectSystem::InvalidEventID Data Member
C++
const uint32 InvalidEventID = ~uint32(0);
IGameObjectSystem::InvalidExtensionID Data Member
C++
const ExtensionID InvalidExtensionID = ~ExtensionID(0);
IGameObjectSystem::~IGameObjectSystem Destructor
C++
virtual ~IGameObjectSystem();
IGameObjectSystem::AddSink Method
C++
virtual void AddSink(IGameObjectSystemSink * pSink) = 0;
IGameObjectSystem::BroadcastEvent Method
C++
virtual void BroadcastEvent(const SGameObjectEvent& evt) = 0;
IGameObjectSystem::CreateGameObjectForEntity Method
C++
virtual IGameObject * CreateGameObjectForEntity(EntityId entityId) = 0;
IGameObjectSystem::DefineProtocol Method
C++
virtual void DefineProtocol(bool server, IProtocolBuilder * pBuilder) = 0;
IGameObjectSystem::GetEventID Method
C++
virtual uint32 GetEventID(const char* name) = 0;
IGameObjectSystem::GetEventName Method
C++
virtual const char* GetEventName(uint32 id) = 0;
IGameObjectSystem::GetExtensionSerializationPriority Method
C++
virtual uint32 GetExtensionSerializationPriority(IGameObjectSystem::ExtensionID id) = 0;
IGameObjectSystem::GetID Method
C++
virtual IGameObjectSystem::ExtensionID GetID(const char * name) = 0;
IGameObjectSystem::GetName Method
C++
virtual const char * GetName(IGameObjectSystem::ExtensionID id) = 0;
IGameObjectSystem::Instantiate Method
C++
virtual IGameObjectExtensionPtr Instantiate(IGameObjectSystem::ExtensionID id, IGameObject * pObject) = 0;
IGameObjectSystem::PostUpdate Method
C++
virtual void PostUpdate(float frameTime) = 0;
IGameObjectSystem::RegisterEvent Method
C++
virtual void RegisterEvent(uint32 id, const char* name) = 0;
IGameObjectSystem::RegisterExtension Method
C++
virtual void RegisterExtension(const char * name, IGameObjectExtensionCreatorBase * pCreator, IEntityClassRegistry::SEntityClassDesc * pEntityCls) = 0;
IGameObjectSystem::RemoveSink Method
C++
virtual void RemoveSink(IGameObjectSystemSink * pSink) = 0;
IGameObjectSystem::Reset Method
C++
virtual void Reset() = 0;
IGameObjectSystem::SetPostUpdate Method
C++
virtual void SetPostUpdate(IGameObject * pGameObject, bool enable) = 0;
IGameObjectSystem::SetSpawnSerializer Method
C++
virtual void SetSpawnSerializer(TSerialize*) = 0;
IGameObjectSystem::ExtensionID Nested Type
C++
typedef uint16 ExtensionID;
IGameObjectSystem::GameObjectExtensionFactory Nested Type
C++
typedef IGameObjectExtension * (* GameObjectExtensionFactory)();