#include
Classes | |
struct | SRmiHandler |
struct | SRmiIndex |
Entity-local unique index of the RMI that is sent over the network. More... | |
Public Member Functions | |
virtual bool | BindToNetwork (EBindToNetworkMode mode=eBTNM_Normal)=0 |
Every entity must be bound to network to be synchronized. | |
virtual bool | BindToNetworkWithParent (EBindToNetworkMode mode, EntityId parentId)=0 |
Bind this entity to the network system, with a dependency on its parent. | |
virtual void | MarkAspectsDirty (NetworkAspectType aspects)=0 |
Use this to mark the aspect dirty and trigger its synchronization. | |
virtual void | EnableAspect (NetworkAspectType aspects, bool enable)=0 |
Enables/disables network aspects. More... | |
virtual NetworkAspectType | GetEnabledAspects () const =0 |
virtual void | EnableDelegatableAspect (NetworkAspectType aspects, bool enable)=0 |
Can be used to disable delegation of a certain aspect, i.e. physics. More... | |
virtual bool | IsAspectDelegatable (NetworkAspectType aspect) const =0 |
virtual uint8 | GetDefaultProfile (EEntityAspects aspect)=0 |
Retrieves the default profile of an aspect. | |
virtual bool | SetAspectProfile (EEntityAspects aspect, uint8 profile, bool fromNetwork=false)=0 |
Changes the current profile of an aspect. More... | |
virtual uint8 | GetAspectProfile (EEntityAspects aspect)=0 |
virtual bool | CaptureProfileManager (IGameObjectProfileManager *pPM)=0 |
virtual void | ReleaseProfileManager (IGameObjectProfileManager *pPM)=0 |
virtual bool | HasProfileManager ()=0 |
virtual void | ClearProfileManager ()=0 |
virtual void | SetChannelId (uint16 id)=0 |
virtual uint16 | GetChannelId () const =0 |
virtual void | BecomeBound ()=0 |
virtual bool | IsBoundToNetwork () const =0 |
virtual void | DontSyncPhysics ()=0 |
A one off call to never enable the physics aspect, this needs to be done before the BindToNetwork. | |
virtual void | SetAuthority (bool auth)=0 |
Internal use. More... | |
virtual bool | HasAuthority () const =0 |
virtual void | SetNetworkParent (EntityId id)=0 |
virtual bool | NetSerializeEntity (TSerialize ser, EEntityAspects aspect, uint8 profile, int flags)=0 |
Internal use. More... | |
virtual void | OnNetworkedEntityTransformChanged (EntityTransformationFlagsMask transformReasons)=0 |
Sent by the entity when its transformation changes. | |
virtual void | OnEntityInitialized () |
virtual void | RmiRegister (const SRmiHandler &handler)=0 |
Internal use. | |
virtual SRmiIndex | RmiByDecoder (SRmiHandler::DecoderF decoder, SRmiHandler **handler)=0 |
Internal use. | |
virtual SRmiHandler::DecoderF | RmiByIndex (const SRmiIndex idx)=0 |
Internal use. | |
Each entity has a network proxy implementing this interface. Use it to bind the entity to network, to fine-tune synced aspects or to subscribe for aspect profile or authority change events.
|
pure virtual |
Enables/disables network aspects.
Can be called anytime after binding.
|
pure virtual |
Can be used to disable delegation of a certain aspect, i.e. physics.
This should be called before BindToNetwork(). By default, all delegatable aspects are enabled.
|
pure virtual |
Internal use.
|
pure virtual |
Changes the current profile of an aspect.
Game code should ensure that things work out correctly. Example: Change physicalization.
|
pure virtual |
Internal use.