91 if (
GetGame().IsMultiplayer() )
192 if (action && ( !action.
UseMainItem() || action_data.m_MainItem ) && ( !action.
HasTarget() || action_data.m_Target ))
201 action_data.m_WasExecuted =
true;
202 action_data.m_WasActionStarted =
true;
215 if (action_data.m_DelayedAnimationEventID !=
UA_NONE)
217 #ifdef ENABLE_LOGGING
221 Debug.
ActionLog(
"STS: " + action_data.m_Player.GetSimulationTimeStamp() +
" Event: " + action_data.m_DelayedAnimationEventID, action_data.m_Action.ToString() ,
"n/a",
"OnAnimationEvent", action_data.m_Player.ToString() );
225 action_data.m_DelayedAnimationEventID =
UA_NONE;
231 super.OnUpdate(action_data);
237 return ActionCondition(action_data.m_Player,action_data.m_Target,action_data.m_MainItem);
248 if (stanceOverride != -1)
249 return stanceOverride;
257 if (commandOverride != -1)
258 return commandOverride;
277 if (!actionData.m_MainItem)
328 if (
IsFullBodyEx(action_data.m_Player, action_data.m_Target, action_data.m_MainItem) )
341 action_data.m_Callback = callback;
350 super.Start( action_data );
366 if ( action_data.m_Callback )
368 action_data.m_Callback.Cancel();
384 if ( state ==
UA_ERROR || !action_data.m_Callback || !action_data.m_Player || !action_data.m_ActionComponent )
389 Debug.
ActionLog(
"ABRUPT CANCEL, CONDITIONS NOT MET", this.
ToString() ,
"n/a",
"Do", action_data.m_Player.ToString() );
392 if ( action_data.m_Callback && action_data.m_Player )
394 action_data.m_Callback.Interrupt();
408 action_data.m_Callback.ProgressActionComponent();
413 action_data.m_Callback.Interrupt();
421 action_data.m_Callback.EndActionComponent();
426 action_data.m_Callback.EndActionComponent();
432 action_data.m_Callback.Interrupt();
437 Debug.
ActionLog(
"Action component returned wrong value", this.
ToString() ,
"n/a",
"Do", action_data.m_Player.ToString() );
438 action_data.m_Callback.Interrupt();
447 if ( action_data.m_Player )
452 action_data.m_Player.SetSoundCategoryHash(0);
461 if ( action_data.m_WasActionStarted )
472 action_data.m_WasActionStarted =
false;
475 action_data.m_Player.GetActionManager().OnActionEnd();
483 Debug.
ActionLog(
"Ation could not be finished right at the end", this.
ToString() ,
"n/a",
"End", action_data.m_Player.ToString() );
485 action_data.m_Callback.Interrupt();
491 super.OnStartServer(action_data);
494 action_data.m_Player.SetPerformedActionID(
GetID());
499 action_data.m_Player.SetPerformedActionID(-1);
500 super.OnEndServer(action_data);
505 if ( action_data.m_ActionComponent )
507 return action_data.m_ActionComponent.GetProgress();
514 if ( action_data.m_ActionComponent )
515 return action_data.m_ActionComponent.GetProgressWidgetMultiplier();
class ActionTargets ActionTarget
map< typename, ref ActionOverrideData > TActionAnimOverrideMap
proto static native void End()
Finalizes the testing process.
void OnEndClient(ActionData action_data)
bool IsFullBodyEx(PlayerBase player, ActionTarget target, ItemBase item)
void InformPlayers(PlayerBase player, ActionTarget target, int state)
DEPRECATED delivers message ids to clients based on given context.
bool CanContinue(ActionData action_data)
int GetPossileStanceMask()
void ProgressActionComponent()
void CreateActionComponent()
void SetCommand(int command_uid)
SoundOnVehicle m_SoundObject
void InitActionComponent()
void EndActionComponent()
float GetActionComponentProgress()
override void OnAnimationEvent(int pEventID)
override bool IsUserActionCallback()
override void OnFinish(bool pCanceled)
void SetActionData(ActionData action_data)
int GetStanceMaskOverride(ItemBase item)
void Do(ActionData action_data, int state)
int GetStanceMaskEx(PlayerBase player, ActionTarget target, ItemBase item)
void CreateAndSetupActionCallback(ActionData action_data)
override void OnUpdate(ActionData action_data)
override void OnStartServer(ActionData action_data)
override bool ActionConditionContinue(ActionData action_data)
int GetActionCommandEx(ActionData actionData)
override void OnEndServer(ActionData action_data)
void OnAnimationEvent(ActionData action_data)
override float GetProgress(ActionData action_data)
override void Interrupt(ActionData action_data)
void OnAlternativeEndClient(PlayerBase player)
void OnInterruptClient(PlayerBase player)
GetCallbackClassTypename()
void OnInterruptServer(PlayerBase player)
void OnAlternativeEndServer(PlayerBase player)
override float GetProgressWidgetMultiplier(ActionData action_data)
int GetActionCommand(PlayerBase player)
override void Start(ActionData action_data)
bool HasMultipleExecution(ActionData action_data)
override bool HasProneException()
void CheckAnimationEvent(ActionData action_data)
void AnimatedActionBase()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void End(ActionData action_data)
void OnExecute(ActionData action_data)
void OnExecuteServer(ActionData action_data)
int GetCommandOverride(ActionData actionData)
void OnExecuteClient(ActionData action_data)
AnalyticsManagerClient GetAnalyticsClient()
proto native void ObjectDelete(Object obj)
Super root of all classes in Enforce script.
static void SendActionInterrupt(DayZPlayer pPlayer)
static void ActionLog(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
static bool IsActionLogEnable()
proto bool Write(void value_out)
DayZPlayerConstants
defined in C++
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
proto native void InternalCommand(int pInternalCommandId)