DayZ 1.24
Loading...
Searching...
No Matches
DayZAnimal.c File Reference

Go to the source code of this file.

Classes

class  DayZCreatureAnimInterface
 
class  DayZCreature
 
class  AnimCommandBase
 base class of all commands exposed to script to provide common functionality over animations More...
 
class  DayZCreatureAI
 do not process rotations ! More...
 

Functions

class DayZCreatureAnimInterface RegisterAnimationEvent (string event_name, string function_name)
 
void DayZCreatureAnimInterface ()
 
void ~DayZCreatureAnimInterface ()
 
proto native TAnimGraphCommand BindCommand (string pCommandName)
 returns command index -
 
proto native TAnimGraphVariable BindVariableFloat (string pVariable)
 
proto native TAnimGraphVariable BindVariableInt (string pVariable)
 
proto native TAnimGraphVariable BindVariableBool (string pVariable)
 
proto native TAnimGraphTag BindTag (string pTagName)
 
proto native TAnimGraphEvent BindEvent (string pEventName)
 
proto native void SetAnimationInstanceByName (string animation_instance_name, int instance_uuid, float duration)
 
proto native int GetCurrentAnimationInstanceUUID ()
 
proto native DayZCreatureAnimInterface GetAnimInterface ()
 
proto native void UpdateSimulationPrecision (int simLOD)
 
proto native void StartDeath ()
 
proto native void ResetDeath ()
 
proto native void ResetDeathCooldown ()
 
proto native bool IsDeathProcessed ()
 
proto native bool IsDeathConditionMet ()
 
proto native int GetBoneIndexByName (string pBoneName)
 returns bone index for a name (-1 if pBoneName doesn't exist)
 
override bool IsDayZCreature ()
 
override bool CanBeSkinned ()
 
override bool IsIgnoredByConstruction ()
 
override bool IsManagingArrows ()
 
override void AddArrow (Object arrow, int componentIndex, vector closeBonePosWS, vector closeBoneRotWS)
 
override bool HasFixedActionTargetCursorPosition ()
 
bool ModCommandHandlerBefore (float pDt, int pCurrentCommandID, bool pCurrentCommandFinished)
 
bool ModCommandHandlerInside (float pDt, int pCurrentCommandID, bool pCurrentCommandFinished)
 
bool ModCommandHandlerAfter (float pDt, int pCurrentCommandID, bool pCurrentCommandFinished)
 
class DayZAnimalCommandMove extends AnimCommandBase SetFlagFinished (bool pFinished)
 DayZAnimalCommandScript fully scriptable command.
 
proto native bool PrePhys_GetTranslation (out vector pOutTransl)
 script function usable in PrePhysUpdate
 
proto native bool PrePhys_GetRotation (out float pOutRot[4])
 
proto native void PrePhys_SetTranslation (vector pInTransl)
 
proto native void PrePhys_SetRotation (float pInRot[4])
 
bool PostPhysUpdate (float pDt)
 
proto native void PostPhys_GetPosition (out vector pOutTransl)
 script function usable in PostPhysUpdate
 
proto native void PostPhys_GetRotation (out float pOutRot[4])
 vec3 in world space
 
proto native void PostPhys_SetPosition (vector pInTransl)
 quaternion in world space
 
proto native void PostPhys_SetRotation (float pInRot[4])
 vec3 in world space
 
proto native void PostPhys_LockRotation ()
 quaternion in world space
 

Variables

class DayZCreatureAI extends DayZCreature COMMANDID_MOVE
 
class DayZCreatureAI extends DayZCreature COMMANDID_JUMP
 
class DayZCreatureAI extends DayZCreature COMMANDID_DEATH
 
class DayZCreatureAI extends DayZCreature COMMANDID_HIT
 
class DayZCreatureAI extends DayZCreature COMMANDID_ATTACK
 
class DayZCreatureAI extends DayZCreature COMMANDID_SCRIPT
 

Function Documentation

◆ AddArrow()

override void AddArrow ( Object arrow,
int componentIndex,
vector closeBonePosWS,
vector closeBoneRotWS )

Definition at line 75 of file DayZAnimal.c.

76 {
78 GetActionComponentNameList(componentIndex, CachedObjectsArrays.ARRAY_STRING, "fire");
79
80 int pivot = -1;
81
82
83 for (int i = 0; i < CachedObjectsArrays.ARRAY_STRING.Count() && pivot == -1; i++)
85
88
89 if (pivot == -1)
90 GetTransform(parentTransMat);
91 else
92 {
95
100 }
101
102 arrow.GetTransform(arrowTransMat);
104 // orthogonalize matrix - parent might be skewed
106 arrow.SetTransform(arrowTransMat);
107
109 }
proto native int GetBoneIndexByName(string pBoneName)
returns bone index for a name (-1 if pBoneName doesn't exist)
static ref TStringArray ARRAY_STRING
Definition EnMath.c:7
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.
static proto void MatrixInvMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Invert-transforms matrix.
static proto void MatrixOrthogonalize4(vector mat[4])
Orthogonalizes matrix.
static const float RAD2DEG
Definition EnMath.c:16
proto native void AddChild(Widget child, bool immedUpdate=true)

References AddChild(), CachedObjectsArrays::ARRAY_STRING, GetBoneIndexByName(), Math3D::MatrixInvMultiply4(), Math3D::MatrixOrthogonalize4(), Math::RAD2DEG, and Math3D::YawPitchRollMatrix().

◆ BindCommand()

proto native TAnimGraphCommand RegisterAnimationEvent::BindCommand ( string pCommandName)
private

returns command index -

◆ BindEvent()

proto native TAnimGraphEvent RegisterAnimationEvent::BindEvent ( string pEventName)
private

◆ BindTag()

proto native TAnimGraphTag RegisterAnimationEvent::BindTag ( string pTagName)
private

◆ BindVariableBool()

proto native TAnimGraphVariable RegisterAnimationEvent::BindVariableBool ( string pVariable)
private

◆ BindVariableFloat()

proto native TAnimGraphVariable RegisterAnimationEvent::BindVariableFloat ( string pVariable)
private

◆ BindVariableInt()

proto native TAnimGraphVariable RegisterAnimationEvent::BindVariableInt ( string pVariable)
private

◆ CanBeSkinned()

override bool CanBeSkinned ( )

Definition at line 60 of file DayZAnimal.c.

61 {
62 return true;
63 }

◆ DayZCreatureAnimInterface()

void RegisterAnimationEvent::DayZCreatureAnimInterface ( )
private

Definition at line 0 of file DayZAnimal.c.

◆ GetAnimInterface()

proto native DayZCreatureAnimInterface GetAnimInterface ( )

◆ GetBoneIndexByName()

◆ GetCurrentAnimationInstanceUUID()

proto native int GetCurrentAnimationInstanceUUID ( )

◆ HasFixedActionTargetCursorPosition()

override bool HasFixedActionTargetCursorPosition ( )

Definition at line 111 of file DayZAnimal.c.

112 {
113 return true;
114 }

Referenced by ActionTargetsCursor::GetOnScreenPosition().

◆ IsDayZCreature()

override bool IsDayZCreature ( )

Definition at line 55 of file DayZAnimal.c.

56 {
57 return true;
58 }

Referenced by IEntity::CanBeIgnoredByDroppedItem().

◆ IsDeathConditionMet()

proto native bool IsDeathConditionMet ( )

◆ IsDeathProcessed()

proto native bool IsDeathProcessed ( )

◆ IsIgnoredByConstruction()

override bool IsIgnoredByConstruction ( )

Definition at line 65 of file DayZAnimal.c.

66 {
67 return IsRuined();
68 }

◆ IsManagingArrows()

override bool IsManagingArrows ( )

Definition at line 70 of file DayZAnimal.c.

71 {
72 return true;
73 }

◆ ModCommandHandlerAfter()

bool ModCommandHandlerAfter ( float pDt,
int pCurrentCommandID,
bool pCurrentCommandFinished )

Definition at line 132 of file DayZAnimal.c.

133 {
134 return false;
135 }

Referenced by DayZCreatureAI::CommandHandler(), DayZInfected::CommandHandler(), and DayZPlayer::CommandHandler().

◆ ModCommandHandlerBefore()

bool ModCommandHandlerBefore ( float pDt,
int pCurrentCommandID,
bool pCurrentCommandFinished )

ModOverrides

Definition at line 122 of file DayZAnimal.c.

123 {
124 return false;
125 }

Referenced by DayZCreatureAI::CommandHandler(), DayZInfected::CommandHandler(), and DayZPlayer::CommandHandler().

◆ ModCommandHandlerInside()

bool ModCommandHandlerInside ( float pDt,
int pCurrentCommandID,
bool pCurrentCommandFinished )

Definition at line 127 of file DayZAnimal.c.

128 {
129 return false;
130 }

Referenced by DayZCreatureAI::CommandHandler(), DayZInfected::CommandHandler(), and DayZPlayer::CommandHandler().

◆ PostPhys_GetPosition()

proto native void PostPhys_GetPosition ( out vector pOutTransl)

script function usable in PostPhysUpdate

◆ PostPhys_GetRotation()

proto native void PostPhys_GetRotation ( out float pOutRot[4])

vec3 in world space

◆ PostPhys_LockRotation()

proto native void PostPhys_LockRotation ( )

quaternion in world space

◆ PostPhys_SetPosition()

proto native void PostPhys_SetPosition ( vector pInTransl)

quaternion in world space

◆ PostPhys_SetRotation()

proto native void PostPhys_SetRotation ( float pInRot[4])

vec3 in world space

◆ PostPhysUpdate()

bool PostPhysUpdate ( float pDt)

override this ! final adjustment of physics state (after physics was applied) returns true if command continues running / false if command should end (or you can use SetFlagFinished(true))

◆ PrePhys_GetRotation()

proto native bool PrePhys_GetRotation ( out float pOutRot[4])

◆ PrePhys_GetTranslation()

proto native bool PrePhys_GetTranslation ( out vector pOutTransl)

script function usable in PrePhysUpdate

◆ PrePhys_SetRotation()

proto native void PrePhys_SetRotation ( float pInRot[4])

◆ PrePhys_SetTranslation()

proto native void PrePhys_SetTranslation ( vector pInTransl)

◆ RegisterAnimationEvent()

◆ ResetDeath()

proto native void ResetDeath ( )

◆ ResetDeathCooldown()

◆ SetAnimationInstanceByName()

proto native void SetAnimationInstanceByName ( string animation_instance_name,
int instance_uuid,
float duration )

◆ SetFlagFinished()

class DayZAnimalCommandMove extends AnimCommandBase SetFlagFinished ( bool pFinished)

DayZAnimalCommandScript fully scriptable command.

Warning
NON-MANAGED, will be managed by C++ once it is sent to the CommandHandler through DayZAnimal.StartCommand_Script
Note
So ideally, it is best to set up the DayZAnimalCommandScript, not create any instances and start it through DayZAnimal.StartCommand_ScriptInst In case an instance needs to be created, it needs manual deletion if not sent to the CommandHandler But deleting it while it is in the CommandHandler will cause crashes constructor must have 1st parameter to be DayZAnimal this terminates command script and shows CommandHandler( ... pCurrentCommandFinished == true );

◆ StartDeath()

proto native void StartDeath ( )

◆ UpdateSimulationPrecision()

proto native void UpdateSimulationPrecision ( int simLOD)

◆ ~DayZCreatureAnimInterface()

void RegisterAnimationEvent::~DayZCreatureAnimInterface ( )
private

Definition at line 1 of file DayZAnimal.c.

Variable Documentation

◆ COMMANDID_ATTACK

◆ COMMANDID_DEATH

◆ COMMANDID_HIT

◆ COMMANDID_JUMP

◆ COMMANDID_MOVE

◆ COMMANDID_SCRIPT