Classes:FWeapAxe

From ZDoom Wiki
Jump to navigation Jump to search
Note: Wait! Stop! You do not need to copy this actor's code into your project! Here's why:
  1. This actor is already defined in GZDoom, there's no reason to define it again.
  2. In fact, trying to define an actor with the same name will cause an error (because it already exists).
  3. If you want to make your own version of this actor, use inheritance.
  4. Definitions for existing actors are put on the wiki for reference purpose only.
Timon's axe
Actor type Weapon Game MiniHexenLogoIcon.png (Hexen)
DoomEd Number 8010 Class Name FWeapAxe
Spawn ID 27 Identifier T_FIGHTERAXE


Classes: InventoryWeaponFighterWeaponFWeapAxe
The Fighter's second weapon, Timon's Axe, is a short range weapon, which can also be used if the player has no blue mana, although with less power.

DECORATE definition

ACTOR FWeapAxe : FighterWeapon native
{
  Weapon.SelectionOrder 1500
  +WEAPON.AXEBLOOD
  +WEAPON.AMMO_OPTIONAL
  +WEAPON.MELEEWEAPON
  Weapon.AmmoUse1 2
  Weapon.AmmoGive1 25
  Weapon.KickBack 150
  Weapon.YAdjust -12
  Weapon.AmmoType1 "Mana1"
  Inventory.PickupMessage "$TXT_WEAPON_F2"
  Obituary "$OB_MPFWEAPAXE"
  Tag "$TAG_FWEAPAXE"

  action native A_FAxeCheckUp();
  action native A_FAxeCheckReady();
  action native A_FAxeCheckAtk();
  action native A_FAxeAttack();
  action native A_FAxeCheckUpG();
  action native A_FAxeCheckReadyG();

  States
  {
  Spawn:
    WFAX A -1
    Stop
  Select:
    FAXE A 1 A_FAxeCheckUp
    Loop
  Deselect:
    FAXE A 1 A_Lower
    Loop
  Ready:
    FAXE A 1 A_FAxeCheckReady
    Loop
  Fire:
    FAXE B 4 Offset(15, 32) A_FAxeCheckAtk
    FAXE C 3 Offset(15, 32)
    FAXE D 2 Offset(15, 32)
    FAXE D 1 Offset(-5, 70) A_FAxeAttack
    FAXE D 2 Offset(-25, 90)
    FAXE E 1 Offset(15, 32)
    FAXE E 2 Offset(10, 54)
    FAXE E 7 Offset(10, 150)
    FAXE A 1 Offset(0, 60) A_ReFire
    FAXE A 1 Offset(0, 52)
    FAXE A 1 Offset(0, 44)
    FAXE A 1 Offset(0, 36)
    FAXE A 1
    Goto Ready
  SelectGlow:
    FAXE L 1 A_FAxeCheckUpG
    Loop
  DeselectGlow:
    FAXE L 1 A_Lower
    Loop
  ReadyGlow:
    FAXE LLL 1 A_FAxeCheckReadyG
    FAXE MMM 1 A_FAxeCheckReadyG
    Loop
  FireGlow:
    FAXE N 4 Offset(15, 32)
    FAXE O 3 Offset(15, 32)
    FAXE P 2 Offset(15, 32)
    FAXE P 1 Offset(-5, 70) A_FAxeAttack
    FAXE P 2 Offset(-25, 90)
    FAXE Q 1 Offset(15, 32)
    FAXE Q 2 Offset(10, 54)
    FAXE Q 7 Offset(10, 150)
    FAXE A 1 Offset(0, 60) A_ReFire
    FAXE A 1 Offset(0, 52)
    FAXE A 1 Offset(0, 44)
    FAXE A 1 Offset(0, 36)
    FAXE A 1
    Goto ReadyGlow
  }
}