DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ pushToChamberFromAttachedMagazine()

bool pushToChamberFromAttachedMagazine ( Weapon_Base weapon,
int muzzleIndex )

См. определение в файле weapon_utils.c строка 1

2{
3 Magazine mag = weapon.GetMagazine(muzzleIndex);
4 if (mag && !mag.IsDamageDestroyed())
5 {
6 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, using attached magazine mag=" + mag.ToString()); }
7 float damage;
8 string type;
9 if (mag && mag.LocalAcquireCartridge(damage, type))
10 {
11 weapon.SelectionBulletShow();
12 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, ok - cartridge acquired: dmg=" + damage + " type=" + type); }
13 }
14 else
15 Error("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, error - cannot take cartridge from magazine");
16
17 if (weapon.PushCartridgeToChamber(muzzleIndex, damage, type))
18 {
19 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, ok - loaded chamber"); }
20 return true;
21 }
22 else
23 Error("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, error - cannot load chamber!");
24 }
25 else
26 {
27 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine - magazine destroyer or no attached"); }
28 //Error("[wpnfsm] " + Object.GetDebugName(weapon) + " chamberFromAttachedMagazine, error - no magazine attached");
29 }
30 return false;
31}
void wpnDebugPrint(string s)
Определения Debug.c:9
static bool IsWeaponLogEnable()
Определения Debug.c:718
Определения Debug.c:594
Определения ObjectTyped.c:2
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90

Перекрестные ссылки Error(), LogManager::IsWeaponLogEnable() и wpnDebugPrint().

Используется в WeaponEjectAllMuzzles::OnAbort(), WeaponEjectCasing::OnEntry(), WeaponFire::OnEntry(), WeaponStateBase::OnEntry(), WeaponEjectAllMuzzles::OnExit() и WeaponStateBase::OnExit().