mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-23 20:43:15 +00:00
371712c53a
- fixed emission of the self pointer in FxVMFunctionCall. I did not realize that the self expression only sets up a register for the value, not pushing it onto the stack.
150 lines
2.6 KiB
Text
150 lines
2.6 KiB
Text
|
|
// Inquisitor ---------------------------------------------------------------
|
|
|
|
class Inquisitor : Actor
|
|
{
|
|
Default
|
|
{
|
|
Health 1000;
|
|
Speed 12;
|
|
Radius 40;
|
|
Height 110;
|
|
Mass 0x7fffffff;
|
|
Monster;
|
|
+DROPOFF
|
|
+NOBLOOD
|
|
+BOSS
|
|
+FLOORCLIP
|
|
+DONTMORPH
|
|
+NORADIUSDMG
|
|
MaxDropOffHeight 32;
|
|
MinMissileChance 150;
|
|
SeeSound "inquisitor/sight";
|
|
DeathSound "inquisitor/death";
|
|
ActiveSound "inquisitor/active";
|
|
Obituary "$OB_INQUISITOR";
|
|
}
|
|
|
|
native void A_InquisitorWalk ();
|
|
native void A_InquisitorDecide ();
|
|
native void A_InquisitorAttack ();
|
|
native void A_InquisitorJump ();
|
|
native void A_InquisitorCheckLand ();
|
|
native void A_TossArm ();
|
|
native void A_ReaverRanged ();
|
|
|
|
States
|
|
{
|
|
Spawn:
|
|
ROB3 AB 10 A_Look;
|
|
Loop;
|
|
See:
|
|
ROB3 B 3 A_InquisitorWalk;
|
|
ROB3 B 3 A_Chase;
|
|
ROB3 CCDD 4 A_Chase;
|
|
ROB3 E 3 A_InquisitorWalk;
|
|
ROB3 E 3 A_InquisitorDecide;
|
|
Loop;
|
|
Missile:
|
|
ROB3 A 2 A_InquisitorDecide;
|
|
ROB3 F 6 A_FaceTarget;
|
|
ROB3 G 8 Bright A_ReaverRanged;
|
|
ROB3 G 8 A_ReaverRanged;
|
|
Goto See;
|
|
Grenade:
|
|
ROB3 K 12 A_FaceTarget;
|
|
ROB3 J 6 Bright A_InquisitorAttack;
|
|
ROB3 K 12;
|
|
Goto See;
|
|
Jump:
|
|
ROB3 H 8 Bright A_InquisitorJump;
|
|
ROB3 I 4 Bright A_InquisitorCheckLand;
|
|
ROB3 H 4 Bright A_InquisitorCheckLand;
|
|
Goto Jump+1;
|
|
Death:
|
|
ROB3 L 0 A_StopSound(CHAN_ITEM);
|
|
ROB3 L 4 A_TossGib;
|
|
ROB3 M 4 A_Scream;
|
|
ROB3 N 4 A_TossGib;
|
|
ROB3 O 4 Bright A_Explode(128,128,1,1);
|
|
ROB3 P 4 Bright A_TossGib;
|
|
ROB3 Q 4 Bright A_NoBlocking;
|
|
ROB3 RSTUV 4 A_TossGib;
|
|
ROB3 W 4 Bright A_Explode(128,128,1,1);
|
|
ROB3 XY 4 Bright A_TossGib;
|
|
ROB3 Z 4 A_TossGib;
|
|
ROB3 [ 4 A_TossGib;
|
|
ROB3 \ 3 A_TossGib;
|
|
ROB3 ] 3 Bright A_Explode(128,128,1,1);
|
|
RBB3 A 3 Bright A_TossArm;
|
|
RBB3 B 3 Bright A_TossGib;
|
|
RBB3 CD 3 A_TossGib;
|
|
RBB3 E -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
// Inquisitor Shot ----------------------------------------------------------
|
|
|
|
class InquisitorShot : Actor
|
|
{
|
|
Default
|
|
{
|
|
ReactionTime 15;
|
|
Speed 25;
|
|
Radius 13;
|
|
Height 13;
|
|
Mass 15;
|
|
Projectile;
|
|
-ACTIVATEIMPACT
|
|
-ACTIVATEPCROSS
|
|
-NOGRAVITY
|
|
+STRIFEDAMAGE
|
|
MaxStepHeight 4;
|
|
SeeSound "inquisitor/attack";
|
|
DeathSound "inquisitor/atkexplode";
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
UBAM AB 3 A_Countdown;
|
|
Loop;
|
|
Death:
|
|
BNG2 A 0 Bright A_SetTranslucent(1,1);
|
|
BNG2 A 4 Bright A_Explode(192, 192, 1, 1);
|
|
BNG2 B 4 Bright;
|
|
BNG2 C 4 Bright;
|
|
BNG2 D 4 Bright;
|
|
BNG2 E 4 Bright;
|
|
BNG2 F 4 Bright;
|
|
BNG2 G 4 Bright;
|
|
BNG2 H 4 Bright;
|
|
BNG2 I 4 Bright;
|
|
Stop;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
// The Dead Inquisitor's Detached Arm ---------------------------------------
|
|
|
|
class InquisitorArm : Actor
|
|
{
|
|
Default
|
|
{
|
|
Speed 25;
|
|
+NOBLOCKMAP
|
|
+NOCLIP
|
|
+NOBLOOD
|
|
}
|
|
States
|
|
{
|
|
Spawn:
|
|
RBB3 FG 5 Bright;
|
|
RBB3 H -1;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
|
|
|