// Ice Guy ------------------------------------------------------------------ class IceGuy : Actor { Default { Health 120; PainChance 144; Speed 14; Radius 22; Height 75; Mass 150; DamageType "Ice"; Monster; +NOBLOOD +TELESTOMP +NOICEDEATH SeeSound "IceGuySight"; AttackSound "IceGuyAttack"; ActiveSound "IceGuyActive"; Obituary "$OB_ICEGUY"; } native void A_IceGuyLook(); native void A_IceGuyChase(); native void A_IceGuyAttack(); States { Spawn: ICEY A 10 A_IceGuyLook; Loop; See: ICEY A 4 A_Chase; ICEY B 4 A_IceGuyChase; ICEY CD 4 A_Chase; Loop; Pain: ICEY A 1 A_Pain; Goto See; Missile: ICEY EF 3 A_FaceTarget; ICEY G 8 Bright A_IceGuyAttack; ICEY F 4 A_FaceTarget; Goto See; Death: ICEY A 1 A_IceGuyDie; Stop; Inactive: ICEY A -1; Goto See; } } // Ice Guy Projectile ------------------------------------------------------- class IceGuyFX : Actor { Default { Speed 14; Radius 8; Height 10; Damage 1; DamageType "Ice"; Projectile; -ACTIVATEIMPACT -ACTIVATEPCROSS DeathSound "IceGuyMissileExplode"; } native void A_IceGuyMissileExplode(); States { Spawn: ICPR ABC 3 Bright A_SpawnItemEx("IceFXPuff", 0,0,2); Loop; Death: ICPR D 4 Bright; ICPR E 4 Bright A_IceGuyMissileExplode; ICPR FG 4 Bright; ICPR H 3 Bright; Stop; } } // Ice Guy Projectile's Puff ------------------------------------------------ class IceFXPuff : Actor { Default { Radius 1; Height 1; +NOBLOCKMAP +NOGRAVITY +DROPOFF +SHADOW +NOTELEPORT RenderStyle "Translucent"; Alpha 0.4; } States { Spawn: ICPR IJK 3; ICPR LM 2; Stop; } } // Secondary Ice Guy Projectile (ejected by the primary projectile) --------- class IceGuyFX2 : Actor { Default { Speed 10; Radius 4; Height 4; Damage 1; DamageType "Ice"; Gravity 0.125; +NOBLOCKMAP +DROPOFF +MISSILE +NOTELEPORT +STRIFEDAMAGE } States { Spawn: ICPR NOP 3 Bright; Loop; } } // Ice Guy Bit -------------------------------------------------------------- class IceGuyBit : Actor { Default { Radius 1; Height 1; Gravity 0.125; +NOBLOCKMAP +DROPOFF +NOTELEPORT } States { Spawn: ICPR Q 50 Bright; Stop; ICPR R 50 Bright; Stop; } } // Ice Guy Wisp 1 ----------------------------------------------------------- class IceGuyWisp1 : Actor { Default { +NOBLOCKMAP +NOGRAVITY +DROPOFF +MISSILE +NOTELEPORT RenderStyle "Translucent"; Alpha 0.4; } States { Spawn: ICWS ABCDEFGHI 2; Stop; } } // Ice Guy Wisp 2 ----------------------------------------------------------- class IceGuyWisp2 : IceGuyWisp1 { States { Spawn: ICWS JKLMNOPQR 2; Stop; } }