Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
handstartaction.c
Go to the documentation of this file.
1
5{
6 WeaponActions m_Action;
7 int m_ActionType;
8
9 void HandStartAction (Man player = NULL, HandStateBase parent = NULL, WeaponActions action = WeaponActions.NONE, int actionType = -1)
10 {
11 m_Action = action;
12 m_ActionType = actionType;
13 }
14
15 override void OnEntry (HandEventBase e)
16 {
17 super.OnEntry(e);
18
19 if (e.m_Player)
20 {
21 HumanCommandWeapons hcw = e.m_Player.GetCommandModifier_Weapons();
22 if (hcw)
23 {
24 if (m_ActionType == -1)
25 {
26 hcw.StartAction(-1, -1);
27 if (LogManager.IsInventoryHFSMLogEnable()) hndDebugPrint("HCW: " + Object.GetDebugName(e.m_Player) + " STS = " + e.m_Player.GetSimulationTimeStamp() + " playing A=-1 AT=-1 fini=" + hcw.IsActionFinished());
28 }
29 else
30 {
31 hcw.StartAction(m_Action, m_ActionType);
32
33 if (hcw.GetRunningAction() == m_Action && hcw.GetRunningActionType() == m_ActionType)
34 {
35 if (LogManager.IsInventoryHFSMLogEnable()) hndDebugPrint("HCW: " + Object.GetDebugName(e.m_Player) + " STS = " + e.m_Player.GetSimulationTimeStamp() + " playing A=" + typename.EnumToString(WeaponActions, m_Action) + " AT=" + WeaponActionTypeToString(m_Action, m_ActionType) + " fini=" + hcw.IsActionFinished());
36 }
37 else
38 Error("HCW: NOT playing A=" + typename.EnumToString(WeaponActions, m_Action) + " AT=" + WeaponActionTypeToString(m_Action, m_ActionType) + " fini=" + hcw.IsActionFinished());
39 }
40 }
41 else
42 if (LogManager.IsInventoryHFSMLogEnable()) hndDebugPrint("---: remote playing A=" + typename.EnumToString(WeaponActions, m_Action) + " AT=" + WeaponActionTypeToString(m_Action, m_ActionType));
43 }
44 else
45 {
46 if (LogManager.IsInventoryHFSMLogEnable()) hndDebugPrint("---: warning, no player wants to play A=" + typename.EnumToString(WeaponActions, m_Action) + " AT=" + WeaponActionTypeToString(m_Action, m_ActionType));
47 }
48 }
49 override void OnExit (HandEventBase e)
50 {
51 super.OnExit(e);
52 }
53
54 override bool IsIdle () { return false; }
55};
56
57
58
ref ActionBase m_Action
Definition actionbase.c:35
Abstracted event, not to be used, only inherited.
simple class starting animation action specified by m_action and m_actionType
represent hand state base
void Error(string err)
Messagebox with error message.
Definition endebug.c:90
HandStateEquipped OnEntry
void hndDebugPrint(string s)
Definition handfsm.c:1
class WeaponChambering_Chamber_OnEntry extends WeaponChambering_Base OnExit
override bool IsIdle()