mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-12-18 16:41:24 +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.
170 lines
2.4 KiB
Text
170 lines
2.4 KiB
Text
|
|
|
|
// Snout puff ---------------------------------------------------------------
|
|
|
|
class SnoutPuff : Actor
|
|
{
|
|
Default
|
|
{
|
|
+NOBLOCKMAP
|
|
+NOGRAVITY
|
|
Renderstyle "Translucent";
|
|
Alpha 0.6;
|
|
}
|
|
|
|
States
|
|
{
|
|
Spawn:
|
|
FHFX STUVW 4;
|
|
Stop;
|
|
}
|
|
}
|
|
|
|
|
|
// Snout --------------------------------------------------------------------
|
|
|
|
class Snout : Weapon
|
|
{
|
|
Default
|
|
{
|
|
Weapon.SelectionOrder 10000;
|
|
+WEAPON.DONTBOB
|
|
+WEAPON.MELEEWEAPON
|
|
Weapon.Kickback 150;
|
|
Weapon.YAdjust 10;
|
|
}
|
|
|
|
native void A_SnoutAttack ();
|
|
|
|
States
|
|
{
|
|
Ready:
|
|
WPIG A 1 A_WeaponReady;
|
|
Loop;
|
|
Deselect:
|
|
WPIG A 1 A_Lower;
|
|
Loop;
|
|
Select:
|
|
WPIG A 1 A_Raise;
|
|
Fire:
|
|
WPIG A 4 A_SnoutAttack;
|
|
WPIG B 8 A_SnoutAttack;
|
|
Goto Ready;
|
|
Grunt:
|
|
WPIG B 8;
|
|
Goto Ready;
|
|
}
|
|
}
|
|
|
|
|
|
// Pig player ---------------------------------------------------------------
|
|
|
|
class PigPlayer : PlayerPawn native
|
|
{
|
|
Default
|
|
{
|
|
Health 30;
|
|
ReactionTime 0;
|
|
PainChance 255;
|
|
Radius 16;
|
|
Height 24;
|
|
Speed 1;
|
|
+WINDTHRUST
|
|
+NOSKIN
|
|
-PICKUP
|
|
PainSound "PigPain";
|
|
DeathSound "PigDeath";
|
|
Player.JumpZ 6;
|
|
Player.Viewheight 28;
|
|
Player.ForwardMove 0.96, 0.98;
|
|
Player.SideMove 0.95833333, 0.975;
|
|
Player.SpawnClass "Pig";
|
|
Player.SoundClass "Pig";
|
|
Player.DisplayName "Pig";
|
|
Player.MorphWeapon "Snout";
|
|
}
|
|
|
|
States
|
|
{
|
|
Spawn:
|
|
PIGY A -1;
|
|
Stop;
|
|
See:
|
|
PIGY ABCD 3;
|
|
Loop;
|
|
Pain:
|
|
PIGY D 4 A_PigPain;
|
|
Goto Spawn;
|
|
Melee:
|
|
Missile:
|
|
PIGY A 12;
|
|
Goto Spawn;
|
|
Death:
|
|
PIGY E 4 A_Scream;
|
|
PIGY F 3 A_NoBlocking;
|
|
PIGY G 4;
|
|
PIGY H 3;
|
|
PIGY IJK 4;
|
|
PIGY L -1;
|
|
Stop;
|
|
Ice:
|
|
PIGY M 5 A_FreezeDeath;
|
|
PIGY M 1 A_FreezeDeathChunks;
|
|
Wait;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// Pig (non-player) ---------------------------------------------------------
|
|
|
|
class Pig : MorphedMonster
|
|
{
|
|
Default
|
|
{
|
|
Health 25;
|
|
Painchance 128;
|
|
Speed 10;
|
|
Radius 12;
|
|
Height 22;
|
|
Mass 60;
|
|
Monster;
|
|
-COUNTKILL
|
|
+WINDTHRUST
|
|
+DONTMORPH
|
|
SeeSound "PigActive1";
|
|
PainSound "PigPain";
|
|
DeathSound "PigDeath";
|
|
ActiveSound "PigActive1";
|
|
}
|
|
|
|
States
|
|
{
|
|
Spawn:
|
|
PIGY B 10 A_Look;
|
|
Loop;
|
|
See:
|
|
PIGY ABCD 3 A_Chase;
|
|
Loop;
|
|
Pain:
|
|
PIGY D 4 A_PigPain;
|
|
Goto See;
|
|
Melee:
|
|
PIGY A 5 A_FaceTarget;
|
|
PIGY A 10 A_CustomMeleeAttack(random[PigAttack](2,3), "PigAttack");
|
|
Goto See;
|
|
Death:
|
|
PIGY E 4 A_Scream;
|
|
PIGY F 3 A_NoBlocking;
|
|
PIGY G 4 A_QueueCorpse;
|
|
PIGY H 3;
|
|
PIGY IJK 4;
|
|
PIGY L -1;
|
|
Stop;
|
|
Ice:
|
|
PIGY M 5 A_FreezeDeath;
|
|
PIGY M 1 A_FreezeDeathChunks;
|
|
Wait;
|
|
}
|
|
}
|
|
|