28 if (!super.ActionCondition( player, target, item ))
32 Magazine mag = Magazine.Cast(target.GetObject());
33 return mag && player.GetWeaponManager().CanLoadBullet(wpn,mag);
38 super.Start( action_data );
39 Magazine mag = Magazine.Cast(action_data.
m_Target.GetObject());
41 action_data.
m_Player.GetWeaponManager().LoadMultiBullet(mag,
this);
57 action_data.
m_Player.GetWeaponManager().LoadMultiBulletStop();
127 if (!super.ActionCondition( player, target, item ))
131 return player.GetWeaponManager().CanLoadBullet(weapon ,player.GetWeaponManager().GetPreparedMagazine());
136 super.Start( action_data );
143 int internalCount = weapon.GetInternalMagazineCartridgeCount(0);
144 int maxCount = weapon.GetInternalMagazineMaxCartridgeCount(0) + 1;
145 int total = mag.GetAmmoCount() + internalCount;
147 if (total < maxCount)
154 while ((additionalMag != null) && (total < maxCount))
156 total += additionalMag.GetAmmoCount();
157 mag.CombineItems(additionalMag);
162 action_data.
m_Player.GetWeaponManager().LoadMultiBullet(mag,
this);
167 action_data.
m_Player.GetWeaponManager().LoadMultiBulletStop();
193 if (!super.CanContinue( action_data ))
201 if (!super.ActionCondition( player, target, item ))
205 Magazine mag = Magazine.Cast(target.GetObject());
206 return mag && player.GetWeaponManager().CanLoadBullet(wpn,mag);
211 super.OnStart(action_data);
213 Magazine mag = Magazine.Cast(action_data.
m_Target.GetObject());
214 action_data.
m_Player.GetWeaponManager().LoadMultiBullet(mag,
this);
219 action_data.
m_Player.GetWeaponManager().LoadMultiBulletStop();
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
class ActionTargets ActionTarget
ref ActionTarget m_Target
override void Start(ActionData action_data)
override bool CanBePerformedFromInventory()
override bool CanBePerformedFromQuickbar()
override int GetActionCategory()
override bool HasProgress()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void OnEndInput(ActionData action_data)
void FirearmActionLoadMultiBullet()
override bool CanBeSetFromInventory()
override void Start(ActionData action_data)
override bool HasProgress()
override void CreateConditionComponents()
void FirearmActionLoadMultiBulletQuick()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override bool HasTarget()
override void OnEndInput(ActionData action_data)
void FirearmActionLoadMultiBulletRadial()
override bool CanContinue(ActionData action_data)
override bool HasProgress()
override void CreateConditionComponents()
override void OnEnd(ActionData action_data)
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void OnStart(ActionData action_data)
script counterpart to engine's class Weapon
Magazine GetNextPreparedMagazine(out int startIdx)