42 m_weapon.ProcessWeaponEvent(
new WeaponEventUnjammingTimeout(
p));
47 if (
hic.IsReloadOrMechanismContinuousUse())
51#ifndef PLATFORM_CONSOLE
52#ifndef SERVER_FOR_CONSOLE
57 m_weapon.ProcessWeaponEvent(
new WeaponEventUnjammingFailedTimeout(
p));
82 m_type =
string.
Empty;
112 m_type =
string.
Empty;
118 if (!
super.SaveCurrentFSMState(
ctx))
121 if (!
ctx.Write(m_damage))
123 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponUnjamming_Cartridge.SaveCurrentFSMState: cannot write m_damage for weapon=" +
m_weapon);
126 if (!
ctx.Write(m_type))
128 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponUnjamming_Cartridge.SaveCurrentFSMState: cannot write m_type for weapon=" +
m_weapon);
136 if (!
super.LoadCurrentFSMState(
ctx, version))
139 if (!
ctx.Read(m_damage))
141 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponUnjamming_Cartridge.LoadCurrentFSMState: cannot read m_damage for weapon=" +
m_weapon);
144 if (!
ctx.Read(m_type))
146 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponUnjamming_Cartridge.LoadCurrentFSMState: cannot read m_type for weapon=" +
m_weapon);
209 m_fsm.SetInitialState(
m_start);
void wpnDebugPrint(string s)
class WeaponGuardIsDestroyed extends WeaponGuardBase m_weapon
void WeaponGuardHasAmmo(Weapon_Base w=NULL)
enum FSMTransition WeaponTransition
ref WeaponStateBase m_start
class WeaponEndAction extends WeaponStartAction m_action
ref WeaponChambering_Base m_chamber
ref WeaponEjectCasingMultiMuzzle m_eject
class WeaponFireWithEject extends WeaponFire m_dtAccumulator
Super root of all classes in Enforce script.
static bool IsWeaponLogEnable()
Serialization general interface. Serializer API works with:
override bool IsWaitingForActionFinish()
override bool IsWaitingForActionFinish()
signalize mechanism manipulation
weapon finite state machine
simple class starting animation action specified by m_action and m_actionType
void WeaponUnjamming_Start(Weapon_Base w=NULL, WeaponStateBase parent=NULL, WeaponActions action=WeaponActions.NONE, int actionType=-1)
override void OnEntry(WeaponEventBase e)
override void OnExit(WeaponEventBase e)
override void OnUpdate(float dt)
represent weapon state base
void WeaponUnjamming(Weapon_Base w=NULL, WeaponStateBase parent=NULL, WeaponActions action=WeaponActions.NONE, int actionType=-1)
ref WeaponUnjamming_W4T m_w4t
override bool IsWaitingForActionFinish()
override void OnEntry(WeaponEventBase e)
ref WeaponUnjamming_Cartridge_W4T m_eject
override bool LoadCurrentFSMState(ParamsReadContext ctx, int version)
ref WeaponUnjamming_Start m_start
override void OnExit(WeaponEventBase e)
override bool SaveCurrentFSMState(ParamsWriteContext ctx)
override bool IsWaitingForActionFinish()
void Error(string err)
Messagebox with error message.
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static const string Empty
WeaponActionUnjammingTypes
void ejectBulletAndStoreInMagazine(Weapon_Base weapon, int muzzleIndex, Magazine mag, DayZPlayer p)