qzdoom/wadsrc/static/zscript/strife/rebels.txt
Christoph Oelckers 371712c53a - turned everything I could into non-action functions.
- 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.
2016-10-22 17:49:08 +02:00

140 lines
No EOL
2.1 KiB
Text

// Base class for the rebels ------------------------------------------------
class Rebel : StrifeHumanoid
{
Default
{
Health 60;
Painchance 250;
Speed 8;
Radius 20;
Height 56;
Monster;
+FRIENDLY
-COUNTKILL
+NOSPLASHALERT
MinMissileChance 150;
Tag "$TAG_REBEL";
SeeSound "rebel/sight";
PainSound "rebel/pain";
DeathSound "rebel/death";
ActiveSound "rebel/active";
Obituary "$OB_REBEL";
}
States
{
Spawn:
HMN1 P 5 A_Look2;
Loop;
HMN1 Q 8;
Loop;
HMN1 R 8;
Loop;
HMN1 ABCDABCD 6 A_Wander;
Loop;
See:
HMN1 AABBCCDD 3 A_Chase;
Loop;
Missile:
HMN1 E 10 A_FaceTarget;
HMN1 F 10 BRIGHT A_ShootGun;
HMN1 E 10 A_ShootGun;
Goto See;
Pain:
HMN1 O 3;
HMN1 O 3 A_Pain;
Goto See;
Death:
HMN1 G 5;
HMN1 H 5 A_Scream;
HMN1 I 3 A_NoBlocking;
HMN1 J 4;
HMN1 KLM 3;
HMN1 N -1;
Stop;
XDeath:
RGIB A 4 A_TossGib;
RGIB B 4 A_XScream;
RGIB C 3 A_NoBlocking;
RGIB DEF 3 A_TossGib;
RGIB G 3;
RGIB H 1400;
Stop;
}
}
// Rebel 1 ------------------------------------------------------------------
class Rebel1 : Rebel
{
Default
{
DropItem "ClipOfBullets";
}
}
// Rebel 2 ------------------------------------------------------------------
class Rebel2 : Rebel
{
}
// Rebel 3 ------------------------------------------------------------------
class Rebel3 : Rebel
{
}
// Rebel 4 ------------------------------------------------------------------
class Rebel4 : Rebel
{
}
// Rebel 5 ------------------------------------------------------------------
class Rebel5 : Rebel
{
}
// Rebel 6 ------------------------------------------------------------------
class Rebel6 : Rebel
{
}
// Teleporter Beacon --------------------------------------------------------
class TeleporterBeacon : Inventory native
{
Default
{
Health 5;
Radius 16;
Height 16;
Inventory.MaxAmount 3;
+DROPPED
+INVENTORY.INVBAR
Inventory.Icon "I_BEAC";
Tag "$TAG_TELEPORTERBEACON";
Inventory.PickupMessage "$TXT_BEACON";
}
native void A_Beacon ();
States
{
Spawn:
BEAC A -1;
Stop;
Drop:
BEAC A 30;
BEAC A 160 A_Beacon;
Wait;
Death:
BEAC A 1 A_FadeOut(0.015);
Loop;
}
}