1234567891011121314151617181920212223242526272829303132333435363738 |
- /**@class WeaponActionBase
- * @brief represents action executed on transition just between OnExit from old state and OnEntry to new state
- **/
- class WeaponActionBase
- {
- /**@fn Action
- * @brief executed when transition occurs
- **/
- void Action (WeaponEventBase e) { }
- };
- // FSM Actions /////////////////////////////////////////////////////////////////////////////////////////////////////////
- // fire
- class WeaponActionDryFire extends WeaponActionBase
- {
- protected Weapon_Base m_weapon;
- void WeaponActionDryFire (Weapon_Base w = NULL) { m_weapon = w; }
- override void Action (WeaponEventBase e)
- {
- Print("[wpnfsm] " + Object.GetDebugName(m_weapon) + " action=dry fire");
- int mi = m_weapon.GetCurrentMuzzle();
- m_weapon.DryFire(mi);
- }
- };
- class WeaponActionDryDryFire extends WeaponActionBase
- {
- protected Weapon_Base m_weapon;
- void WeaponActionDryDryFire (Weapon_Base w = NULL) { m_weapon = w; }
- override void Action (WeaponEventBase e)
- {
- Print("[wpnfsm] " + Object.GetDebugName(m_weapon) + " action=dry dry fire");
- int mi = m_weapon.GetCurrentMuzzle();
- m_weapon.DryDryFire(mi);
- }
- };
|