qzdoom-gpl/wadsrc/static/zscript/hexen/fighterfist.txt
Christoph Oelckers a2f4cd7cda - fixed: All functions that are callable from weapon states and not members of Actor need to be declared 'action'.
With the stricter type checks of the self pointer that were now implemented these all produced errors.
2016-11-13 14:20:30 +01:00

70 lines
1.2 KiB
Text

// Fist (first weapon) ------------------------------------------------------
class FWeapFist : FighterWeapon
{
Default
{
+BLOODSPLATTER
Weapon.SelectionOrder 3400;
+WEAPON.MELEEWEAPON
Weapon.KickBack 150;
Obituary "$OB_MPFWEAPFIST";
Tag "$TAG_FWEAPFIST";
}
action native void A_FPunchAttack();
States
{
Select:
FPCH A 1 A_Raise;
Loop;
Deselect:
FPCH A 1 A_Lower;
Loop;
Ready:
FPCH A 1 A_WeaponReady;
Loop;
Fire:
FPCH B 5 Offset (5, 40);
FPCH C 4 Offset (5, 40);
FPCH D 4 Offset (5, 40) A_FPunchAttack;
FPCH C 4 Offset (5, 40);
FPCH B 5 Offset (5, 40) A_ReFire;
Goto Ready;
Fire2:
FPCH DE 4 Offset (5, 40);
FPCH E 1 Offset (15, 50);
FPCH E 1 Offset (25, 60);
FPCH E 1 Offset (35, 70);
FPCH E 1 Offset (45, 80);
FPCH E 1 Offset (55, 90);
FPCH E 1 Offset (65, 90);
FPCH E 10 Offset (0, 150);
Goto Ready;
}
}
// Punch puff ---------------------------------------------------------------
class PunchPuff : Actor
{
Default
{
+NOBLOCKMAP +NOGRAVITY
+PUFFONACTORS
RenderStyle "Translucent";
Alpha 0.6;
SeeSound "FighterPunchHitThing";
AttackSound "FighterPunchHitWall";
ActiveSound "FighterPunchMiss";
VSpeed 1;
}
States
{
Spawn:
FHFX STUVW 4;
Stop;
}
}