79 WeaponChargingStretch Mech_U =
new WeaponChargingStretch(
this, NULL,
WeaponActions.MECHANISM, WeaponActionMechanismTypes.MECHANISM_OPENED);
80 WeaponEjectBullet Mech_L =
new WeaponEjectBullet(
this, NULL,
WeaponActions.MECHANISM, WeaponActionMechanismTypes.MECHANISM_SPECIAL);
114 m_fsm.AddTransition(
new WeaponTransition( Mech_L, _fin_,
C, null,
new WeaponGuardChamberEmpty(
this)));
116 m_fsm.AddTransition(
new WeaponTransition( Mech_L, _abt_,
C, null,
new WeaponGuardChamberEmpty(
this)));
122 m_fsm.AddTransition(
new WeaponTransition( Chamber_U, _fin_,
L, null,
new WeaponGuardChamberFull(
this)));
123 m_fsm.AddTransition(
new WeaponTransition( Chamber_U, _fin_,
C, null,
new WeaponGuardWeaponCharged(
this)));
125 m_fsm.AddTransition(
new WeaponTransition( Chamber_U, _abt_,
L, null,
new WeaponGuardChamberFull(
this)));
126 m_fsm.AddTransition(
new WeaponTransition( Chamber_U, _abt_,
C, null,
new WeaponGuardWeaponCharged(
this)));
131 m_fsm.AddTransition(
new WeaponTransition( Chamber_C, _fin_,
L, null,
new WeaponGuardChamberFull(
this)));
133 m_fsm.AddTransition(
new WeaponTransition( Chamber_C, _abt_,
L, null,
new WeaponGuardChamberFull(
this)));
154 SelectionBulletHide();
172 GetInventory().CreateInInventory(
"ACOGOptic_6x" );
179 inv = params.m_Player.GetInventory();
182 SpawnInInventoryOrGroundPos(
"Ammo_HuntingBolt", inv,
GetPosition());
183 SpawnInInventoryOrGroundPos(
"Ammo_ImprovisedBolt_1", inv,
GetPosition());
184 SpawnInInventoryOrGroundPos(
"Ammo_ImprovisedBolt_2", inv,
GetPosition());
186 SpawnInInventoryOrGroundPos(
"ACOGOptic", inv,
GetPosition());
187 entity = SpawnInInventoryOrGroundPos(
"M68Optic", inv,
GetPosition());
188 entity.GetInventory().CreateInInventory(
"Battery9V" );
189 entity = SpawnInInventoryOrGroundPos(
"M4_T3NRDSOptic", inv,
GetPosition());
190 entity.GetInventory().CreateInInventory(
"Battery9V" );
191 entity = SpawnInInventoryOrGroundPos(
"ReflexOptic", inv,
GetPosition());
192 entity.GetInventory().CreateInInventory(
"Battery9V" );
193 entity = SpawnInInventoryOrGroundPos(
"StarlightOptic", inv,
GetPosition());
194 entity.GetInventory().CreateInInventory(
"Battery9V" );
201 GetCartridgeInfo(GetCurrentMuzzle(), ammoDamage, ammoTypeName);
202 if (ammoTypeName ==
"Bullet_CupidsBolt")
205 return super.CanBeUsedForSuicide();
@ UNKNOWN
24 - Any other error. Can be returned from any call.
@ uncocked
default weapon state, closed and discharged
class WeaponGuardIsDestroyed extends WeaponGuardBase m_weapon
void WeaponGuardWeaponDischarged(Weapon_Base w=NULL)
class SSPFireout extends WeaponStableState OnEntry
enum FSMTransition WeaponTransition
enum FSMTransition WeaponEventBase
ref array< MuzzleState > m_muzzleHasBullet
pair ( action, actionType )
override float GetChanceToJam()
override void InitStateMachine()
override RecoilBase SpawnRecoilObject()
override bool CanBeUsedForSuicide()
override void OnDebugSpawnEx(DebugSpawnParams params)
base for Crossbow @NOTE name copies config base class
script counterpart to engine's class Inventory
static bool IsWeaponLogEnable()
signalize mechanism manipulation
weapon finite state machine
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()
represents weapon's stable state (i.e. the basic states that the weapon will spend the most time in)
represent weapon state base
class JsonUndergroundAreaTriggerData GetPosition
WeaponActionChamberingTypes
WeaponActionUnjammingTypes