struct IActor : public IGameObjectExtension { };
IActorSystem.h
virtual ~IActor();
virtual bool AllowLandingBob() = 0;
virtual bool BecomeAggressiveToAgent(EntityId entityID) = 0;
virtual void CameraShake(float angle, float shift, float duration, float frequency, Vec3 pos, int ID, const char* source = "") = 0;
virtual bool CanBreakGlass() const;
Can the actor currently break through glass (used by ActionGame)
virtual void CancelExactPositioningAnimation() = 0;
virtual void CreateScriptEvent(const char * event, float value, const char * str = NULL) = 0;
virtual bool DropItem(EntityId itemId, float impulseScale = 1.0f, bool selectNext = true, bool byDeath = false) = 0;
virtual void EnableTimeDemo(bool bTimeDemo) = 0;
Enables/Disables time demo mode. Some movement/view direction things work differently when running under time demo.
virtual void Fall(Vec3 hitPos = Vec3(0,0,0)) = 0;
virtual ActorClass GetActorClass() const = 0;
virtual const char* GetActorClassName() const = 0;
virtual IAnimatedCharacter * GetAnimatedCharacter() = 0;
virtual const IAnimatedCharacter * GetAnimatedCharacter() const = 0;
virtual IAnimationGraphState * GetAnimationGraphState() = 0;
virtual int GetArmor() const = 0;
uint16 GetChannelId() const;
virtual IItem* GetCurrentItem(bool includeVehicle = false) const = 0;
virtual IItem *GetCurrentItem() const = 0;
virtual const char* GetEntityClassName() const = 0;
virtual uint8 GetFlyMode() const;
virtual EntityId GetGrabbedEntityId() const = 0;
virtual float GetHealth() const = 0;
virtual int GetHealthAsRoundedPercentage() const = 0;
virtual IItem* GetHolsteredItem() const = 0;
virtual IInventory * GetInventory() const = 0;
virtual IEntity* GetLinkedEntity() const = 0;
virtual IVehicle * GetLinkedVehicle() const = 0;
virtual Vec3 GetLocalEyePos() const = 0;
virtual Vec3 GetViewAngleOffset() = 0;
virtual int GetMaxArmor() const = 0;
virtual float GetMaxHealth() const = 0;
virtual IMovementController * GetMovementController() const = 0;
virtual int GetPhysicalSkipEntities(IPhysicalEntity** pSkipList, const int maxSkipSize) const;
Populates list of physics entities to skip for IK raycasting. returns num Entities to skip
virtual uint8 GetSpectatorMode() const = 0;
virtual Quat GetViewRotation() const = 0;
virtual void HideAllAttachments(bool isHiding) = 0;
virtual void HolsterItem(bool holster, bool playSelect = true, float selectSpeedBias = 1.0f, bool hideLeftHandObject = true) = 0;
virtual void InitLocalPlayer() = 0;
virtual bool IsClient() const = 0;
virtual bool IsDead() const = 0;
virtual bool IsFallen() const = 0;
virtual bool IsFriendlyEntity(EntityId entityId, bool bUsingAIIgnorePlayer = true) const = 0;
virtual int IsGod() = 0;
virtual bool IsMigrating() const = 0;
virtual bool IsPlayer() const = 0;
virtual bool IsStillWaitingOnServerUseResponse() const;
virtual bool IsThirdPerson() const = 0;
get currently linked vehicle, or NULL
virtual bool MountedGunControllerEnabled() const;
virtual void MountedGunControllerEnabled(bool val);
virtual bool MustBreakGlass() const;
Forces the actor break through glass if allowed (used by ActionGame)
virtual void NotifyCurrentItemChanged(IItem* newItem) = 0;
virtual void OnAIProxyEnabled(bool enabled) = 0;
virtual void OnPreparedFromPool() = 0;
virtual void OnReturnedToPool() = 0;
virtual void OnReused(IEntity * pEntity, SEntitySpawnParams & params) = 0;
virtual void OnShiftWorld();
virtual void PlayAction(const char * action, const char * extension, bool looping = false) = 0;
virtual void PlayAnimation(const char* sAnimationName, bool bSignal) = 0;
virtual void PlayExactPositioningAnimation(const char* sAnimationName, bool bSignal, const Vec3& vPosition, const Vec3& vDirection, float startWidth, float startArcAngle, float directionTolerance) = 0;
virtual void PrecacheFacialExpression(const char* pExpressionName) = 0;
Processes entity specific events
virtual void ProcessEvent(SEntityEvent& event) = 0;
Parameters |
Description |
SEntityEvent& event |
entity event, see SEntityEvent for more information |
virtual void Release() = 0;
virtual void SendRevive(const Vec3& position, const Quat& orientation, int team, bool clearInventory) = 0;
virtual void RequestFacialExpression(const char* pExpressionName = NULL, f32* sequenceLength = NULL) = 0;
virtual void ResetAnimationState() = 0;
virtual void ResetToSpawnLocation();
Reset the actor to its initial location (used by CheckpointSystem)
virtual bool Respawn();
Respawn the actor to some intiial data (used by CheckpointSystem)
virtual void SerializeLevelToLevel(TSerialize & ser) = 0;
virtual void SerializeXML(XmlNodeRef& node, bool bLoading) = 0;
void SetChannelId(uint16 id);
virtual void SetCustomHead(const char* customHead);
0;
virtual void SetFacialAlertnessLevel(int alertness) = 0;
virtual void SetFlyMode(uint8 flyMode);
virtual void SetHealth(float health) = 0;
virtual void SetIKPos(const char * pLimbName, const Vec3& goalPos, int priority) = 0;
virtual void SetMaxHealth(float maxHealth) = 0;
virtual void SetMigrating(bool isMigrating) = 0;
virtual void SetStillWaitingOnServerUseResponse(bool waiting);
virtual void SetViewInVehicle(Quat viewRotation) = 0;
virtual void SetViewRotation(const Quat & rotation) = 0;
virtual bool ShouldMuteWeaponSoundStimulus() const = 0;
virtual void SwitchDemoModeSpectator(bool activate) = 0;
virtual void ToggleThirdPerson() = 0;