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))
68 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot eject chambered cartridge!");
71 if (is_single_or_server)
76 if (
DayZPlayerUtils.HandleStoreCartridge(p, weapon, muzzleIndex, damage, type, magazineTypeName))
81 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot store cartridge!");
85 if (mag.ServerStoreCartridge(damage, type))
91 Error(
"[wpnfsm] " +
Object.GetDebugName(weapon) +
" ejectBulletAndStoreInMagazine, error - cannot store cartridge in magazine");
102 if (w == w2 && h == h2)
void wpnDebugPrint(string s)
private void DayZPlayerUtils()
cannot be instantiated
proto void GetInventoryItemSize(InventoryItem item, out int width, out int height)
proto native bool IsServer()
proto native bool IsMultiplayer()
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)