3 Magazine mag = weapon.GetMagazine(muzzleIndex);
4 if (mag && !mag.IsDamageDestroyed())
9 if (mag && mag.LocalAcquireCartridge(damage, type))
11 weapon.SelectionBulletShow();
15 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" chamberFromAttachedMagazine, error - cannot take cartridge from magazine");
17 if (weapon.PushCartridgeToChamber(muzzleIndex, damage, type))
23 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" chamberFromAttachedMagazine, error - cannot load chamber!");
39 if (weapon.PopCartridgeFromInternalMagazine(muzzleIndex,damage, type))
41 weapon.SelectionBulletShow();
45 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" chamberFromInnerMagazine, error - cannot take cartridge from magazine");
47 if (weapon.PushCartridgeToChamber(muzzleIndex, damage, type))
53 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" chamberFromInnerMagazine, error - cannot load chamber!");
61 string type =
string.Empty;
62 string magazineTypeName = weapon.GetChamberedCartridgeMagazineTypeName(muzzleIndex);
63 if (weapon.EjectCartridge(muzzleIndex, damage, type))
66 wpnDebugPrint(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, ejected chambered cartridge");
69 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot eject chambered cartridge!");
76 if (
DayZPlayerUtils.HandleStoreCartridge(p, weapon, muzzleIndex, damage, type, magazineTypeName))
79 wpnDebugPrint(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, ok - cartridge stored in magazine");
82 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot store cartridge!");
86 if (mag.ServerStoreCartridge(damage, type))
90 wpnDebugPrint(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, ok - cartridge stored in user defined magazine");
93 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot store cartridge in magazine");
104 if (w == w2 && h == h2)
void wpnDebugPrint(string s)
void DayZPlayerUtils()
cannot be instantiated
proto void GetInventoryItemSize(InventoryItem item, out int width, out int height)
static bool IsWeaponLogEnable()
proto native CGame GetGame()
void Error(string err)
Messagebox with error message.
bool pushToChamberFromInnerMagazine(Weapon_Base weapon, int muzzleIndex)
bool magazinesHaveEqualSizes(notnull Magazine mag, notnull Magazine mag2)
void ejectBulletAndStoreInMagazine(Weapon_Base weapon, int muzzleIndex, Magazine mag, DayZPlayer p)
bool pushToChamberFromAttachedMagazine(Weapon_Base weapon, int muzzleIndex)