DIFF

class HumanCommandScriptSource

HumanCommandScript fully scriptable command

NoteSo ideally, it is best to set up the HumanCommandScript, not create any instances and start it through Human.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
WarningNON-MANAGED, will be managed by C++ once it is sent to the CommandHandler through Human.StartCommand_Script

Methods 28

void OnActivate()

virtual to be overridden called when command starts

void OnDeactivate()

called when command ends

proto native void SetFlagFinished(bool pFinished)

this terminates human command script and shows CommandHandler( ... pCurrentCommandFinished == true );

proto native void OverrideCorrectionType(AnimPhysCorrectionType correctionType)FEATURE_NETWORK_RECONCILIATION

Default is MINIMAL. It is reset to MINIMAL at the start of 'PreAnimUpdate'

proto native void SetHeading(float yawAngle, float filterDt = -1, float maxYawSpeed = FLT_MAX)

sets character rotation (heading) (PreAnim/PrePhys only!)

proto native void AddHeadingRelativeTo(HumanRelativeHeadingMode mode, float yawAngle, float filterDt = -1, float maxYawSpeed = FLT_MAX)
int GetCurrentStance()

Override this to return the current stance of the human.

int GetCurrentMovement()

Override this to return the current movement state of the human.

float GetCurrentLeaning()

Override this to return the current leaning state of the human. <-1, 1>

void PreAnimUpdate(float pDt)

override this ! called before any animation is processed here change animation values, add animation commands

proto native void PreAnim_CallCommand(int pCommand, int pParamInt, float pParamFloat)

function usable in PreAnimUpdate or in !!! OnActivate !!!

proto native void PreAnim_SetFloat(int pVar, float pFlt)
proto native void PreAnim_SetInt(int pVar, int pInt)
proto native void PreAnim_SetBool(int pVar, bool pBool)
void PreAnim_SetFilteredHeading(float pYawAngle, float pFilterDt, float pMaxYawSpeed)
References SetHeading()
void PrePhysUpdate(float pDt)

override this ! after animation is processed, before physics is processed

proto native bool PrePhys_IsEvent(int pEvent)

script function usable in PrePhysUpdate

proto native bool PrePhys_IsTag(int pTag)
proto native bool PrePhys_GetTranslation(out vector pOutTransl)

vec3 in local space !

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

quaternion in local space !

proto native void PrePhys_SetTranslation(vector pInTransl)

vec3 in local space !

proto native void PrePhys_SetRotation(float pInRot[4])

quaternion in local space !

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))

proto native void PostPhys_GetPosition(out vector pOutTransl)

script function usable in PostPhysUpdate

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

quaternion in world space

proto native void PostPhys_SetPosition(vector pInTransl)

vec3 in world space

proto native void PostPhys_SetRotation(float pInRot[4])

quaternion in world space

proto native void PostPhys_LockRotation()

do not process rotations !