// The Fighter's Hammer ----------------------------------------------------- class FWeapHammer : FighterWeapon { Default { +BLOODSPLATTER Weapon.SelectionOrder 900; +WEAPON.AMMO_OPTIONAL +WEAPON.MELEEWEAPON Weapon.AmmoUse1 3; Weapon.AmmoGive1 25; Weapon.KickBack 150; Weapon.YAdjust -10; Weapon.AmmoType1 "Mana2"; Inventory.PickupMessage "$TXT_WEAPON_F3"; Obituary "$OB_MPFWEAPHAMMERM"; Tag "$TAG_FWEAPHAMMER"; } action native void A_FHammerAttack(); action native void A_FHammerThrow(); States { Spawn: WFHM A -1; Stop; Select: FHMR A 1 A_Raise; Loop; Deselect: FHMR A 1 A_Lower; Loop; Ready: FHMR A 1 A_WeaponReady; Loop; Fire: FHMR B 6 Offset (5, 0); FHMR C 3 Offset (5, 0) A_FHammerAttack; FHMR D 3 Offset (5, 0); FHMR E 2 Offset (5, 0); FHMR E 10 Offset (5, 150) A_FHammerThrow; FHMR A 1 Offset (0, 60); FHMR A 1 Offset (0, 55); FHMR A 1 Offset (0, 50); FHMR A 1 Offset (0, 45); FHMR A 1 Offset (0, 40); FHMR A 1 Offset (0, 35); FHMR A 1; Goto Ready; } } // Hammer Missile ----------------------------------------------------------- class HammerMissile : Actor { Default { Speed 25; Radius 14; Height 20; Damage 10; DamageType "Fire"; Projectile; DeathSound "FighterHammerExplode"; Obituary "$OB_MPFWEAPHAMMERR"; } States { Spawn: FHFX A 2 Bright; FHFX B 2 Bright A_PlaySound ("FighterHammerContinuous"); FHFX CDEFGH 2 Bright; Loop; Death: FHFX I 3 Bright A_SetTranslucent(1,1); FHFX J 3 Bright; FHFX K 3 Bright A_Explode (128, 128, 0); FHFX LM 3 Bright; FHFX N 3; FHFX OPQR 3 Bright; Stop; } } // Hammer Puff (also used by fist) ------------------------------------------ class HammerPuff : Actor { Default { +NOBLOCKMAP +NOGRAVITY +PUFFONACTORS RenderStyle "Translucent"; Alpha 0.6; VSpeed 0.8; SeeSound "FighterHammerHitThing"; AttackSound "FighterHammerHitWall"; ActiveSound "FighterHammerMiss"; } States { Spawn: FHFX STUVW 4; Stop; } }