286 SetInitialState(
E_E);
288 for (
int i = 0;
i < GetMuzzleCount();
i++)
296 for (
int i = 0;
i < GetMuzzleCount();
i++)
298 if (CanChamberFromMag(
i,
mag))
300 if (IsChamberEmpty(
i))
void AddAction(typename actionName)
void RemoveAction(typename actionName)
override bool IsRepairEnabled()
override bool HasBullet()
override void InitMuzzleArray()
override bool HasMagazine()
@ DEFAULT
default weapon state, closed and discharged
enum DoubleBarrelStableStateID First
DoubleBarrelStableStateID
enum DoubleBarrelStableStateID Second
FirearmActionLoadBullet FirearmActionBase FirearmActionLoadBulletQuick()
class WeaponGuardIsDestroyed extends WeaponGuardBase m_weapon
override int GetCurrentStateID()
override void OnExit(HandEventBase e)
HandStateEquipped OnEntry
enum FSMTransition WeaponTransition
void ChamberMultiBullet(Weapon_Base w=NULL, WeaponStateBase parent=NULL, WeaponActions action=WeaponActions.NONE, int startActionType=-1, int endActionType=-1)
ref array< MuzzleState > m_muzzleHasBullet
bool IsChamberFiredOut(int idx)
pair ( action, actionType )
ref WeaponStableState L_L
ref WeaponStableState L_E
override bool CanChamberBullet(int muzzleIndex, Magazine mag)
ref WeaponStableState E_E
override void SetActions()
ref WeaponStableState E_L
override void InitStateMachine()
ref WeaponStableState F_L
ref WeaponStableState F_E
ref WeaponStableState F_F
ref WeaponStableState E_F
static bool IsWeaponLogEnable()
base for rifles @NOTE name copies config base class
charging of weapon without ammo to be chambered
signalize mechanism manipulation
weapon finite state machine
represents weapon's stable state (i.e. the basic states that the weapon will spend the most time in)
override void OnExit(WeaponEventBase e)
override void InitMuzzleArray()
override void OnEntry(WeaponEventBase e)
override bool HasBullet()
override int GetCurrentStateID()
override bool IsRepairEnabled()
override bool HasMagazine()
represent weapon state base
WeaponActionChamberingTypes
WeaponActionUnjammingTypes