qzdoom-gpl/wadsrc/decorate/doom/cacodemon.txt
Christoph Oelckers 8c2f651bdb - Replaced the static string buffer in ProcessStates with an FString.
- After doing some tests with state label scopes I had to conclude that
  using '.' both for separating sub-state-labels and scope resolution 
  identifiers does not work reliably unless all actor class names were
  prohibited from being used as state labels.  Since that is undesirable
  the only solution is to change the scope resolution operator. Fortunately 
  no WADs so far have used it so implementing such a breaking change isn't 
  a major issue. Now it uses '::', like C++ for this purpose.
- Converted Revenant, Mancubus and Pain Elemental to DECORATE.


SVN r375 (trunk)
2006-11-04 22:26:04 +00:00

87 lines
1.4 KiB
Text

//===========================================================================
//
// Cacodemon
//
//===========================================================================
ACTOR Cacodemon 3005
{
Game Doom
SpawnID 19
Health 400
Radius 31
Height 56
Mass 400
Speed 8
PainChance 128
Monster
+FLOAT +NOGRAVITY
SeeSound "caco/sight"
PainSound "caco/pain"
DeathSound "caco/death"
ActiveSound "caco/active"
Obituary "$OB_CACO"
HitObituary "$OB_CACOHIT"
States
{
Spawn:
HEAD A 10 A_Look
Loop
See:
HEAD A 3 A_Chase
Loop
Melee:
Missile:
HEAD B 5 A_FaceTarget
HEAD C 5 A_FaceTarget
HEAD D 5 BRIGHT A_HeadAttack
Goto See
Pain:
HEAD E 3
HEAD E 3 A_Pain
HEAD F 6
Goto See
Death:
HEAD G 8
HEAD H 8 A_Scream
HEAD I 8
HEAD J 8
HEAD K 8 A_NoBlocking
HEAD L -1 A_SetFloorClip
Stop
Raise:
HEAD L 8 A_UnSetFloorClip
HEAD KJIHG 8
Goto See
}
}
//===========================================================================
//
// Cacodemon plasma ball
//
//===========================================================================
ACTOR CacodemonBall
{
Game Doom
SpawnID 126
Radius 6
Height 8
Speed 10
FastSpeed 20
Damage 5
Projectile
+RANDOMIZE
RenderStyle Add
Alpha 1
SeeSound "caco/attack"
DeathSound "caco/shotx"
States
{
Spawn:
BAL2 AB 4 BRIGHT
Loop
Death:
BAL2 CDE 6 BRIGHT
Stop
}
}