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

represents guard on a transition from state to state Подробнее...

Защищенные члены

void WeaponGuardJammed (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardIsDestroyed (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardHasAmmoInnerMagazine (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardHasAmmoInEvent (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardHasMag (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberEmpty (Weapon_Base w=NULL, int muzzle_index=0)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCurrentChamberEmpty (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardAnyChamberEmpty (Weapon_Base w=NULL, int muzzle_index=0)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberFull (Weapon_Base w=NULL, int muzzle_index=0)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCurrentChamberFull (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardInnerMagazineFull (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardInnerMagazineFullShareChamber (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberFiredOut (Weapon_Base w=NULL, int muzzle_index=0)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCurrentChamberFiredOut (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardAnyChamberFiredOut (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCanAttachMag (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCanSwapMag (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardCanDetachMag (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberHasRoomForMoreThanOne (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardInternalMagazineHasRoomForBullet (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberHasRoomForOne (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberMultiHasRoomBulltet (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardChamberMultiHasRoomBulltetIgnoreLast (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardMagazinesHaveEqualSizes (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardWeaponCharged (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardWeaponOpen (Weapon_Base w=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 

Защищенные данные

Weapon_Base m_weapon
 
int m_muzzle
 

Закрытые члены

bool GuardCondition (WeaponEventBase e)
 
void GuardAnd (WeaponGuardBase arg0=NULL, WeaponGuardBase arg1=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void GuardNot (WeaponGuardBase arg0=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void GuardOr (WeaponGuardBase arg0=NULL, WeaponGuardBase arg1=NULL)
 
override bool GuardCondition (WeaponEventBase e)
 
void WeaponGuardHasAmmoInLoopedState (WeaponChambering_Base state)
 
override bool GuardCondition (WeaponEventBase e)
 

Закрытые данные

ref WeaponGuardBase m_arg0
 
ref WeaponGuardBase m_arg1
 
WeaponChambering_Base m_state
 

Подробное описание

represents guard on a transition from state to state

Методы

◆ GuardAnd()

void GuardAnd ( WeaponGuardBase arg0 = NULL,
WeaponGuardBase arg1 = NULL )
inlineprivate
19{ m_arg0 = arg0; m_arg1 = arg1; }
Definition EntityAI.c:95
ref WeaponGuardBase m_arg1
Definition Guards.c:17
ref WeaponGuardBase m_arg0
Definition Guards.c:16

◆ GuardCondition() [1/31]

bool GuardCondition ( WeaponEventBase e)
inlineprivate
11{ return true; }

◆ GuardCondition() [2/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprivate
22 {
23 bool result = m_arg0.GuardCondition(e) && m_arg1.GuardCondition(e);
24 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - " + m_arg0.Type() + " && " + m_arg1.Type() + " = " + result); }
25 return result;
26 }
void wpnDebugPrint(string s)
Definition Debug.c:9
Definition Debug.c:600
static bool IsWeaponLogEnable()
Definition Debug.c:724

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

◆ GuardCondition() [3/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprivate
36 {
37 bool result = !m_arg0.GuardCondition(e);
38 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - ! " + m_arg0.Type() + " = " + result); }
39 return result;
40 }

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

◆ GuardCondition() [4/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprivate
51 {
52 bool result = m_arg0.GuardCondition(e) || m_arg1.GuardCondition(e);
53 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - " + m_arg0.Type() + " || " + m_arg1.Type() + " = " + result); }
54 return result;
55 }

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

◆ GuardCondition() [5/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
66 {
67 /*int mi = m_weapon.GetCurrentMuzzle();
68 if (m_weapon.IsChamberJammed(mi))*/
69 if (m_weapon.IsJammed())
70 {
71 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - jammed"); }
72 return true;
73 }
74 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - not jammed"); }
75 return false;
76 }
Definition ObjectTyped.c:2
Weapon_Base m_weapon
Definition Guards.c:62

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

◆ GuardCondition() [6/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
85 {
86 if (m_weapon.IsDamageDestroyed())
87 {
88 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - weapon destroyed"); }
89 return true;
90 }
91 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - weapon not destroyed"); }
92 return false;
93 }

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

◆ GuardCondition() [7/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
121 {
122 int mi = m_weapon.GetCurrentMuzzle();
123 if (m_weapon.GetInternalMagazineCartridgeCount(mi) >= 1)
124 {
125 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - has ammo in inner magazine"); }
126 return true;
127 }
128 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - no ammo in inner magazine"); }
129 return false;
130 }

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

◆ GuardCondition() [8/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
139 {
140 Magazine mag = e.m_magazine;
141 if (mag != NULL && mag.GetAmmoCount() > 0)
142 {
143 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - has ammo in event"); }
144 return true;
145 }
146 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - no ammo in event"); }
147 return false;
148 }

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

◆ GuardCondition() [9/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
158 {
159 int mi = m_weapon.GetCurrentMuzzle();
160 Magazine mag = m_weapon.GetMagazine(mi);
161 if (mag != NULL)
162 {
163 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - has magazine"); }
164 return true;
165 }
166 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - no magazine"); }
167 return false;
168 }

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

◆ GuardCondition() [10/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
178 {
179 if (m_weapon.IsChamberEmpty(m_muzzle))
180 {
181 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") empty"); }
182 return true;
183 }
184 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") not empty"); }
185 return false;
186 }
int m_muzzle
Definition Guards.c:174

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

◆ GuardCondition() [11/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
195 {
196 int mi = m_weapon.GetCurrentMuzzle();
197 if (m_weapon.IsChamberEmpty(mi))
198 {
199 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber empty"); }
200 return true;
201 }
202 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber not empty"); }
203 return false;
204 }

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

◆ GuardCondition() [12/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
214 {
215 for (int i = 0; i < m_weapon.GetMuzzleCount(); i++)
216 {
217 if (m_weapon.IsChamberEmpty(i))
218 {
219 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - multi chamber (" + i + ") empty"); }
220 return true;
221 }
222 }
223 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - no chamber empty"); }
224 return false;
225 }

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

◆ GuardCondition() [13/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
235 {
236 if (m_weapon.IsChamberFull(m_muzzle))
237 {
238 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") full"); }
239 return true;
240 }
241 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") not full"); }
242 return false;
243 }

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

◆ GuardCondition() [14/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
252 {
253 int mi = m_weapon.GetCurrentMuzzle();
254 if (m_weapon.IsChamberFull(mi))
255 {
256 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber full"); }
257 return true;
258 }
259 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber not full"); }
260 return false;
261 }

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

◆ GuardCondition() [15/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
271 {
272 int mi = m_weapon.GetCurrentMuzzle();
273 if (m_weapon.IsInternalMagazineFull(mi))
274 {
275 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - internal magazine full"); }
276 return true;
277 }
278 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - internal magazine not full"); }
279 return false;
280 }

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

◆ GuardCondition() [16/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
289 {
290 int mi = m_weapon.GetCurrentMuzzle();
291
292 if ( m_weapon.IsChamberFull(mi) && m_weapon.IsInternalMagazineFull(mi))
293 {
294 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - internal magazine with share chamber is full"); }
295 return true;
296 }
297 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - internal magazine with share chamber is not full"); }
298 return false;
299 }

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

◆ GuardCondition() [17/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
309 {
310 if (m_weapon.IsChamberFiredOut(m_muzzle))
311 {
312 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") fireout"); }
313 return true;
314 }
315 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber (" + m_muzzle + ") not fireout"); }
316 return false;
317 }

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

◆ GuardCondition() [18/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
326 {
327 int mi = m_weapon.GetCurrentMuzzle();
328 if (m_weapon.IsChamberFiredOut(mi))
329 {
330 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber fired out"); }
331 return true;
332 }
333 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber not fired out"); }
334 return false;
335 }

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

◆ GuardCondition() [19/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
344 {
345 for (int i = 0; i < m_weapon.GetMuzzleCount(); i++)
346 {
347 if (m_weapon.IsChamberFiredOut(i))
348 {
349 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - multi chamber (" + i + ") fired out"); }
350 return true;
351 }
352 }
353
354 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - any chamber has not fired out"); }
355 return false;
356 }

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

◆ GuardCondition() [20/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
365 {
366 int mi = m_weapon.GetCurrentMuzzle();
367 if (m_weapon && e.m_magazine && m_weapon.CanAttachMagazine(mi, e.m_magazine))
368 {
369 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - can attach magazine"); }
370 return true;
371 }
372 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - cannot attach magazine"); }
373 return false;
374 }

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

◆ GuardCondition() [21/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
383 {
384 int mi = m_weapon.GetCurrentMuzzle();
385 Magazine attached_mag = m_weapon.GetMagazine(mi);
386 if (m_weapon && e.m_magazine && e.m_magazine != attached_mag /*&& m_weapon.CanSwapMagazine(mi, e.m_magazine)*/)
387 {
388 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - can swap magazine"); }
389 return true;
390 }
391 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - cannot swap magazine"); }
392 return false;
393 }

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

◆ GuardCondition() [22/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
402 {
403 int mi = m_weapon.GetCurrentMuzzle();
404 if (m_weapon && e.m_magazine && m_weapon.GetMagazine(mi)/* && m_weapon.CanDetachMagazine(mi, e.m_magazine)*/)
405 {
406 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - can detach magazine"); }
407 return true;
408 }
409 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - cannot detach magazine"); }
410 return false;
411 }

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

◆ GuardCondition() [23/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
420 {
421 int mi = m_weapon.GetCurrentMuzzle();
422 if (m_weapon.GetInternalMagazineMaxCartridgeCount(mi) - m_weapon.GetInternalMagazineCartridgeCount(mi) > 1)
423 {
424 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has room for more than 1b"); }
425 return true;
426 }
427 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has no room for more than 1b"); }
428 return false;
429 }

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

◆ GuardCondition() [24/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
438 {
439 int mi = m_weapon.GetCurrentMuzzle();
440 if (m_weapon.GetInternalMagazineMaxCartridgeCount(mi) - m_weapon.GetInternalMagazineCartridgeCount(mi) >= 1)
441 {
442 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has room for bullet"); }
443 return true;
444 }
445 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has no room for bullet"); }
446 return false;
447 }

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

◆ GuardCondition() [25/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
456 {
457 int mi = m_weapon.GetCurrentMuzzle();
458 if (m_weapon.GetTotalMaxCartridgeCount(mi) - m_weapon.GetTotalCartridgeCount(mi) == 1)
459 {
460 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has room for 1b"); }
461 return true;
462 }
463 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has no room for 1b"); }
464 return false;
465 }

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

◆ GuardCondition() [26/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
474 {
475 int i = m_weapon.GetMuzzleCount() - 1;
476 for ( ; i >= 0; i--)
477 {
478 if (m_weapon.GetTotalMaxCartridgeCount(i) - m_weapon.GetTotalCartridgeCount(i) >= 1)
479 {
480 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has room for 1b"); }
481 return true;
482 }
483 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has no room for 1b"); }
484 }
485 return false;
486 }

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

◆ GuardCondition() [27/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
495 {
496 int i = m_weapon.GetMuzzleCount() - 1;
497 bool emty_one = false;
498 for ( ; i >= 0; i--)
499 {
500 if (m_weapon.GetTotalMaxCartridgeCount(i) - m_weapon.GetTotalCartridgeCount(i) >= 1)
501 {
502 if ( !emty_one )
503 {
504 emty_one = true;
505 }
506 else
507 {
508 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has room for 1b"); }
509 return true;
510 }
511 }
512 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - chamber has no room for 1b"); }
513 }
514 return false;
515 }

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

◆ GuardCondition() [28/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprivate
525 {
526 Magazine mag = m_state.m_srcMagazine;
527 if (mag != NULL && mag.GetAmmoCount() > 0)
528 {
529 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - has ammo in looped state"); }
530 return true;
531 }
532 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] guard - no ammo in looped state"); }
533 return false;
534 }
WeaponChambering_Base m_state
Definition Guards.c:521

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

◆ GuardCondition() [29/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
543 {
544 int mi = m_weapon.GetCurrentMuzzle();
545 Magazine mag = m_weapon.GetMagazine(mi);
546 Magazine mag2 = e.m_magazine;
547 if (mag != NULL && mag2 != NULL)
548 {
550 if (eq)
551 {
552 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - same inventory sizes"); }
553 return true;
554 }
555
556 if (LogManager.IsWeaponLogEnable()) { wpnDebugPrint("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - different inventory sizes"); }
557 return false;
558 }
559 Error("[wpnfsm] " + Object.GetDebugName(m_weapon) + " guard - mag == NULL or mag2 == NULL, cannot perform comparison");
560 return false;
561 }
void Error(string err)
Messagebox with error message.
Definition EnDebug.c:90
bool magazinesHaveEqualSizes(notnull Magazine mag, notnull Magazine mag2)
Definition weapon_utils.c:98

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

◆ GuardCondition() [30/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
571 {
572 return m_weapon.IsCharged();
573 }

Перекрестные ссылки m_weapon.

◆ GuardCondition() [31/31]

override bool GuardCondition ( WeaponEventBase e)
inlineprotected
595 {
596 return m_weapon.IsWeaponOpen();
597 }

Перекрестные ссылки m_weapon.

◆ GuardNot()

void GuardNot ( WeaponGuardBase arg0 = NULL)
inlineprivate
33{ m_arg0 = arg0; }

◆ GuardOr()

void GuardOr ( WeaponGuardBase arg0 = NULL,
WeaponGuardBase arg1 = NULL )
inlineprivate
48{ m_arg0 = arg0; m_arg1 = arg1; }

◆ WeaponGuardAnyChamberEmpty()

void WeaponGuardAnyChamberEmpty ( Weapon_Base w = NULL,
int muzzle_index = 0 )
inlineprotected

Перекрестные ссылки m_weapon.

◆ WeaponGuardAnyChamberFiredOut()

void WeaponGuardAnyChamberFiredOut ( Weapon_Base w = NULL)
inlineprotected
341{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCanAttachMag()

void WeaponGuardCanAttachMag ( Weapon_Base w = NULL)
inlineprotected
362{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCanDetachMag()

void WeaponGuardCanDetachMag ( Weapon_Base w = NULL)
inlineprotected
399{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCanSwapMag()

void WeaponGuardCanSwapMag ( Weapon_Base w = NULL)
inlineprotected
380{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberEmpty()

void WeaponGuardChamberEmpty ( Weapon_Base w = NULL,
int muzzle_index = 0 )
inlineprotected

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberFiredOut()

void WeaponGuardChamberFiredOut ( Weapon_Base w = NULL,
int muzzle_index = 0 )
inlineprotected

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberFull()

void WeaponGuardChamberFull ( Weapon_Base w = NULL,
int muzzle_index = 0 )
inlineprotected

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberHasRoomForMoreThanOne()

void WeaponGuardChamberHasRoomForMoreThanOne ( Weapon_Base w = NULL)
inlineprotected
417{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberHasRoomForOne()

void WeaponGuardChamberHasRoomForOne ( Weapon_Base w = NULL)
inlineprotected
453{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberMultiHasRoomBulltet()

void WeaponGuardChamberMultiHasRoomBulltet ( Weapon_Base w = NULL)
inlineprotected
471{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardChamberMultiHasRoomBulltetIgnoreLast()

void WeaponGuardChamberMultiHasRoomBulltetIgnoreLast ( Weapon_Base w = NULL)
inlineprotected
492{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCurrentChamberEmpty()

void WeaponGuardCurrentChamberEmpty ( Weapon_Base w = NULL)
inlineprotected
192{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCurrentChamberFiredOut()

void WeaponGuardCurrentChamberFiredOut ( Weapon_Base w = NULL)
inlineprotected
323{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardCurrentChamberFull()

void WeaponGuardCurrentChamberFull ( Weapon_Base w = NULL)
inlineprotected
249{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardHasAmmoInEvent()

void WeaponGuardHasAmmoInEvent ( Weapon_Base w = NULL)
inlineprotected
136{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardHasAmmoInLoopedState()

void WeaponGuardHasAmmoInLoopedState ( WeaponChambering_Base state)
inlineprivate
522{ m_state = state; }

◆ WeaponGuardHasAmmoInnerMagazine()

void WeaponGuardHasAmmoInnerMagazine ( Weapon_Base w = NULL)
inlineprotected
118{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardHasMag()

void WeaponGuardHasMag ( Weapon_Base w = NULL)
inlineprotected
155{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardInnerMagazineFull()

void WeaponGuardInnerMagazineFull ( Weapon_Base w = NULL)
inlineprotected
268{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardInnerMagazineFullShareChamber()

void WeaponGuardInnerMagazineFullShareChamber ( Weapon_Base w = NULL)
inlineprotected
286{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardInternalMagazineHasRoomForBullet()

void WeaponGuardInternalMagazineHasRoomForBullet ( Weapon_Base w = NULL)
inlineprotected
435{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardIsDestroyed()

void WeaponGuardIsDestroyed ( Weapon_Base w = NULL)
inlineprotected
82{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardJammed()

void WeaponGuardJammed ( Weapon_Base w = NULL)
inlineprotected
63{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardMagazinesHaveEqualSizes()

void WeaponGuardMagazinesHaveEqualSizes ( Weapon_Base w = NULL)
inlineprotected
540{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardWeaponCharged()

void WeaponGuardWeaponCharged ( Weapon_Base w = NULL)
inlineprotected
568{ m_weapon = w; }

Перекрестные ссылки m_weapon.

◆ WeaponGuardWeaponOpen()

void WeaponGuardWeaponOpen ( Weapon_Base w = NULL)
inlineprotected
592{ m_weapon = w; }

Перекрестные ссылки m_weapon.

Поля

◆ m_arg0

ref WeaponGuardBase m_arg0
private

◆ m_arg1

ref WeaponGuardBase m_arg1
private

◆ m_muzzle

int m_muzzle
protected

◆ m_state

WeaponChambering_Base m_state
private

◆ m_weapon

Weapon_Base m_weapon
protected

Объявления и описания членов класса находятся в файле: