43 Magazine m_dstMagazine;
46 ref WeaponEjectBullet_Cartridge_W4T
m_eject;
48 ref WeaponChamberFromAttMag_W4T
m_chamber;
114 if (!super.SaveCurrentFSMState(ctx))
119 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponEjectBullet.LoadCurrentFSMState: cannot write m_dstMagazine for weapon=" +
m_weapon);
127 if (!super.LoadCurrentFSMState(ctx, version))
132 Error(
"[wpnfsm] " +
Object.GetDebugName(
m_weapon) +
" WeaponEjectBullet.LoadCurrentFSMState: cannot read m_dstMagazine for weapon=" +
m_weapon);
void wpnDebugPrint(string s)
void WeaponGuardHasAmmo(Weapon_Base w=NULL)
enum FSMTransition WeaponTransition
class WeaponEndAction extends WeaponStartAction m_action
static bool IsWeaponLogEnable()
proto bool Write(void value_out)
proto bool Read(void value_in)
signalize mechanism manipulation
weapon finite state machine
simple class starting animation action specified by m_action and m_actionType
ref BulletHide_W4T m_hideB
int m_actionType
action to be played
void WeaponStateBase(Weapon_Base w=NULL, WeaponStateBase parent=NULL)
internal state id used for load/restore
void WeaponEjectBullet(Weapon_Base w=NULL, WeaponStateBase parent=NULL, WeaponActions action=WeaponActions.NONE, int actionType=-1)
ref WeaponFSM m_fsm
hierarchical parent state of this state (or null)
ref WeaponChambering_Cartridge m_chamber
override void OnEntry(WeaponEventBase e)
ref WeaponStateBase m_start
source of the cartridge
override bool LoadCurrentFSMState(ParamsReadContext ctx, int version)
ref WeaponEjectCasing m_eject
override void OnAbort(WeaponEventBase e)
override void OnExit(WeaponEventBase e)
override bool SaveCurrentFSMState(ParamsWriteContext ctx)
represent weapon state base
Serializer ParamsReadContext
Serializer ParamsWriteContext
void Error(string err)
Messagebox with error message.