Classes:FWeapAxe

From ZDoom Wiki
Jump to navigation Jump to search
Note: Wait! Stop! Before you copy this actor's definition into your mod, remember the following things:
  1. You do not need to copy that actor, since it is already defined.
  2. In fact, it's not just useless, it's actually harmful as it can cause problems.
  3. If you want to modify it, or use a modified version, using inheritance is the way to go.
  4. The actor definitions here are put on the wiki for reference purpose only. Learn from them, don't copy them.
  5. There is only one exception: if what you want is changing Ammo capacity, you need to create a new type from Ammo.
Timon's axe
Actor type Weapon Game MiniHexenLogoIcon.png
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
  }
}