Code: Select all
ACTOR ArchHeinous 
{ 
   Health 3000
   Radius 25
   Height 70
   Speed 15
   Mass 1500
   PainChance 20
   Monster 
   +missileevenmore
   +quicktoretaliate
   SeeSound "vile/sight"
   AttackSound "vile/attack"
   PainSound "vile/pain"
   DeathSound "vile/death"
   ActiveSound "vile/active"
   RenderStyle Translucent
   Alpha 0.75
   Scale 1.25
   States 
   {
   Spawn:
       VILE AB 10 A_Look
       Loop
   See:
       VILE AA 1 A_Chase
       VILE A 0 A_CustomMissile("ArchGhostA", 0, 0, 0)
       VILE BB 1 A_Chase
       VILE B 0 A_CustomMissile("ArchGhostB", 0, 0, 0)
       VILE CC 1 A_Chase
       VILE C 0 A_CustomMissile("ArchGhostC", 0, 0, 0)
       VILE DD 1 A_Chase
       VILE D 0 A_CustomMissile("ArchGhostD", 0, 0, 0)
       VILE AA 1 A_Chase
       VILE A 0 A_CustomMissile("ArchGhostA", 0, 0, 0)
       VILE BB 1 A_Chase
       VILE B 0 A_CustomMissile("ArchGhostB", 0, 0, 0)
       VILE CC 1 A_Chase
       VILE C 0 A_CustomMissile("ArchGhostC", 0, 0, 0)
       VILE DD 1 A_Chase
       VILE D 0 A_CustomMissile("ArchGhostD", 0, 0, 0)
       Loop
       Missile:
       VILE G 0 A_JumpIfCloser(600, 59)
       VILE G 0 A_Jump(192, 8)
       VILE G 8 BRIGHT A_FaceTarget
       VILE G 0 BRIGHT A_PlaySound("vile/firestrt")
       VILE G 1 BRIGHT A_CustomMissile("ArchMeteorSpawnerB", 144, 0, 0)
       VILE I 8 BRIGHT A_FaceTarget
       VILE J 0 BRIGHT A_PlaySound("skeleton/attack")
       VILE J 2 BRIGHT A_CustomMissile("ArchMeteorB", 144, 0, 0)
       VILE N 38 BRIGHT 
       Goto See
       VILE G 0 A_Jump(64, 7)
       VILE G 8 BRIGHT A_FaceTarget
       VILE G 0 BRIGHT A_PlaySound("vile/firestrt")
       VILE G 1 BRIGHT A_CustomMissile("FireOrbSpawner", 144, 0, 0)
       VILE I 8 BRIGHT A_FaceTarget
       VILE J 2 BRIGHT A_CustomMissile("FireOrb", 144, 0, 0)
       VILE N 18 BRIGHT 
       Goto See
       VILE G 7 BRIGHT A_FaceTarget
       VILE G 0 BRIGHT A_PlaySound("CacoFlame/Attack")
       VILE H 1 BRIGHT A_CustomMissile("MeteorPortalD", 189, 48, 0)
       VILE H 7 BRIGHT 
       VILE I 1 BRIGHT A_CustomMissile("MeteorPortalC", 186, 44, 0)
       VILE I 7 BRIGHT 
       VILE H 1 BRIGHT A_CustomMissile("MeteorPortalB", 181, 40, 0)
       VILE H 7 BRIGHT 
       VILE I 1 BRIGHT A_CustomMissile("MeteorPortalA", 176, 32, 0)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, 0)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, -2)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, 4)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, -6)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, 8)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, -6)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, 4)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, -2)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 128, 0, 0)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, 2)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, -4)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, 6)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, -8)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, 6)
       VILE I 7 BRIGHT A_FaceTarget
       VILE H 1 BRIGHT A_CustomMissile("Comet", 132, 0, -4)
       VILE H 7 BRIGHT A_FaceTarget
       VILE I 1 BRIGHT A_CustomMissile("Comet", 132, 0, 2)
       VILE I 7 BRIGHT A_FaceTarget
       VILE G 1 BRIGHT A_CustomMissile("Comet", 132, 0, 0)
       Goto See
       VILE G 0 A_JumpIfCloser(256, 8)
       VILE G 8 BRIGHT A_FaceTarget
       VILE G 0 BRIGHT A_PlaySound("vile/firestrt")
       VILE G 1 BRIGHT A_CustomMissile("ArchMeteorSpawner", 128, 0, 0)
       VILE I 8 BRIGHT A_FaceTarget
       VILE J 0 BRIGHT A_PlaySound("skeleton/attack")
       VILE J 2 BRIGHT A_CustomMissile("ArchMeteor", 128, 0, 0)
       VILE N 18 BRIGHT 
       Goto See
       VILI J 0 A_Jump(128, 37)
       VILI J 4 BRIGHT A_FaceTarget
       VILI N 0 A_PlaySound("misc/freeze")
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 0)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -2)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -4)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -6)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -8)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -6)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -4)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, -2)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 0)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 2)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 4)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 6)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 8)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 6)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 4)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 2)
       VILI N 1 BRIGHT A_FaceTarget
       VILI N 1 BRIGHT A_CustomMissile("IceBlast", 48, 0, 0)
       VILI N 17 BRIGHT
       Goto See
       VILF J 0 A_Jump(128, 37)
       VILF J 4 BRIGHT A_FaceTarget
       VILF N 0 A_PlaySound("vile/firecrkl")
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 0)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -2)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -4)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -6)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -8)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -6)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -4)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, -2)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 0)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 2)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 4)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 6)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 8)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 6)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 4)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 2)
       VILF N 1 BRIGHT A_FaceTarget
       VILF N 1 BRIGHT A_CustomMissile("FireBlast", 48, 0, 0)
       VILF N 17 BRIGHT
       Goto See
       VILD J 4 BRIGHT A_FaceTarget
       VILD N 0 A_PlaySound("CacoFlame/Attack")
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 0)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -2)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -4)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -6)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -8)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -6)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -4)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, -2)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 0)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 2)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 4)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 6)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 8)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 6)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 4)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 2)
       VILD N 1 BRIGHT A_FaceTarget
       VILD N 1 BRIGHT A_CustomMissile("PoisonBlast", 48, 0, 0)
       VILD N 17 BRIGHT
       Goto See
   Pain:
       VILE Q 0 A_Jump(128, 3)
       VILE Q 5 
       VILE Q 5 A_Pain
       Goto See
       VILD L 1 A_FaceTarget
       VILD L 0 A_PlaySound("CacoFlame/Attack")
       VILD L 0 A_SetInvulnerable
       VILD L 0 A_SetReflective
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 1 A_FaceTarget
       VILD L 1 A_CustomMissile("Shield", 0, 0, 0)
       VILD L 0 A_UnSetReflective
       VILD L 0 A_UnSetInvulnerable
       VILD L 0 A_Jump(224, 1)
       Goto Pain+5
       VILD L 0 
       Goto See
    Death:
       VILE Q 7
       VILE R 7 A_Scream
       VILE S 7 A_NoBlocking
       VILE TUVW 7
       VILE XY 5
       VILE Z -1
       Stop
   }
} 
ACTOR ArchGhostA
{
	Radius 4
	Height 8
	Speed 0
	Damage 0
	RenderStyle Translucent
	Alpha 0.25
	Projectile
	+NoCLip
	Scale 1.25
        States
	{
	Spawn:
		VILE A 10
		Stop
	}
}
ACTOR ArchGhostB : ArchGhostA
{
	Scale 1.25
        States
	{
        Spawn:
		VILE B 10
		Stop
	}
}
ACTOR ArchGhostC : ArchghostA
{
	Scale 1.25
        States
        {
	Spawn:
		VILE C 10
		Stop
	}
}
ACTOR ArchGhostD : ArchGhostA
{
	Scale 1.25
	States
        {
	Spawn:
		VILE D 10
		Stop
	}
}
ACTOR ArchMeteorSpawner
{
    Height 24
    Radius 12
    Speed 0
    +Nogravity
    +NoBlockMap
    States
    {
    Spawn:
    	COMT HGFE 3 BRIGHT
    	Stop
    }
}
ACTOR ArchMeteorSpawnerB
{
    Height 24
    Radius 12
    Speed 0
    +Nogravity
    +NoBlockMap
    Scale 2
    States
    {
    Spawn:
    	COMT HGFE 3 BRIGHT
    	Stop
    }
}
ACTOR ArchMeteor
{
    Radius 12
    Height 16
    Speed 30
    Damage 5
    ExplosionDamage 40
    ExplosionRadius 80
    PROJECTILE
    ExplosionDamage 20
    ExplosionRadius 128
    DeathSound "weapons/rocklx"
    MissileType CometTailA
    MissileHeight 0
    States
    {
        Spawn:
        COMT AAAABBBBCCCC 1 Bright A_MissileAttack
        Loop
    Death:
        COMT D 0 A_Explode
        COMT DEFGH 5 Bright 
        Stop
       }
}
       
ACTOR ArchMeteorB
{
       Radius 24
       Height 32
       Speed 15
       Damage 15
       Health 25
       +Shootable
       +NoGravity 
       +DropOff
       +ActivateImpact 
       +ActivatePCross 
       +NoTeleport
       +Missile
       +SeekerMissile
       +NoBlood
       DeathSound "weapons/rocklx"
       MissileType CometTailB
       MissileHeight 0
       ExplosionRadius 256
       ExplosionDamage 50
       Scale 2
       States
       {
       Spawn:
           COMT AAAABBBBCCCC 1 Bright A_SeekerMissile(5, 15)
           Loop
       Death:
       	   COMT D 0 A_Explode
           COMT D 0 Radius_Quake(5, 35, 0, 128, 6)
           COMT DEFGH 5 Bright 
       	   Stop
       }
}
ACTOR FireOrbSpawner
{
    Height 24
    Radius 12
    Speed 0
    +Nogravity
    +NoBlockMap
    RenderStyle Add
    Alpha .5
    Scale 2
    States
    {
    Spawn:
    	FBL1 EDCB 3 BRIGHT
    	Stop
    }
}
ACTOR FireOrb
{
    	Radius 16
    	Height 12
    	Speed 30
    	Damage 10
	MissileType FireTrail
        MissileHeight 0
        Projectile
	+FireDamage
        RenderStyle Add
	Alpha 0.5
	SeeSound "skeleton/attack"
	DeathSound "vile/firecrkl"
	ExplosionDamage 30
        ExplosionRadius 128
        Scale 2
        States
	{
	Spawn:
	   FBL1 A 1 BRIGHT A_MissileAttack
           FBL1 A 1 BRIGHT A_MissileAttack
           FBL1 B 1 BRIGHT A_MissileAttack
           FBL1 B 1 BRIGHT A_MissileAttack
           Loop
	Death:
	   FBL1 C 0 BRIGHT A_Explode
	   FBL1 C 0 BRIGHT Radius_Quake(5, 35, 0, 128, 6)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 0)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 45)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 90)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 135)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 180)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -45)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -90)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -135)
           FBL1 C 2 BRIGHT
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 60)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 105)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 150)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, 195)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -60)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -105)
           FBL1 C 0 BRIGHT A_CustomMissile("FireBlast", 8, 0, -150)
           FBL1 DE 4 BRIGHT
	   Stop
        }
}
ACTOR IceTrail
{
	Radius 8
        Height 0
        Speed 0
        +Missile
        +NoClip
        +NoGravity
        RenderStyle Translucent 
        ALPHA .25
        Scale 1.5
        States
        {
        Spawn:
            IBL1 CDE 4 BRIGHT
            Stop
        }
}
ACTOR FireTrail
{
	Radius 8
        Height 0
        Speed 0
        +Missile
        +NoClip
        +NoGravity
        RenderStyle Translucent 
        ALPHA .25
        Scale 1.5
        States
        {
        Spawn:
            FBL1 CDE 4 BRIGHT
            Stop
        }
}
ACTOR FireBlast
{
	Radius 8
        Height 0
        Damage 2
        Speed 15
        +FireDamage
        +Missile
        +NoGravity
        RenderStyle Add
        Alpha .5
        States
        {
        Spawn:
            FBL1 BCCDDE 3 BRIGHT
            Stop
        Death: 
            FBL1 CDE 6 BRIGHT
            Stop
        }
}
ACTOR IceBlast
{
	Radius 8
        Height 0
        Damage 2
        Speed 15
        +IceDamage
        +Missile
        +NoGravity
        RenderStyle Add
        Alpha .5
        States
        {
        Spawn:
            IBL1 BCCDDE 3 BRIGHT
            Stop
        Death: 
            IBL1 CDE 6 BRIGHT
            Stop
        }
}
ACTOR PoisonBlast
{
	Radius 8
        Height 0
        Damage 2
        Speed 15
        +FireDamage
        +Missile
        +NoGravity
        RenderStyle Add
        Alpha 0.50
        States
        {
        Spawn:
            GBL1 BCCDDE 3 BRIGHT
            Stop
        Death: 
            GBL1 CDE 6 BRIGHT
            Stop
        }
}
ACTOR MeteorPortalA
{
	Speed 0
	Height 0
	Radius 0
	+Missile
	+NoGravity
	+NoBlockMap
	RenderStyle Translucent
        Alpha 0.25
        Scale .5
        States
        {
        Spawn:
       	    PRTL A 160 A_FaceTarget
       	    Stop
        }
}
            
ACTOR MeteorPortalB : MeteorPortalA
{
	Scale .6
        States
	{
	Spawn:
	    PRTL A 160 A_FaceTarget
	    Stop
	}
}
	    
ACTOR MeteorPortalC : MeteorPortalA
{
	Scale .7
        States
	{
	Spawn:
	    PRTL A 160 A_FaceTarget
	    Stop
	}
}
ACTOR MeteorPortalD : MeteorPortalA
{
	Scale .75
        States
	{
	Spawn:
            PRTL A 160 A_FaceTarget
            Stop
	}
}
ACTOR Shield
{
	Speed 0
	Height 96
	Radius 96
	+NoGravity
	+NoClip
	+FloorClip
	+Shootable
	+Invulnerable
	+Reflective
	RenderStyle Add
        Alpha 0.5
        Scale 1.5
        States
        {
        Spawn:
       	    SHL1 A 2 BRIGHT
       	    Stop
        }
}
actor Comet
{
    Radius 6
    Height 8
    Speed 15
    Damage 5
    ExplosionDamage 40
    ExplosionRadius 80
    Scale .55
    PROJECTILE
    ExplosionDamage 10
    ExplosionRadius 128
    SeeSound "comet/launch"
    DeathSound "weapons/rocklx"
    MissileType CometTail
    MissileHeight 0
    States
    {
    Spawn:
        COMT AAAABBBBCCCC 1 Bright A_MissileAttack
        Loop
    Death:
        COMT D 0 A_Explode
        COMT D 3 Bright A_CustomMissile("CometDeathGlow", 0, 0, 0)
        COMT E 3 Bright 
        COMT E 0 A_CustomMissile("CometDeath", 0, 0, 0)
        Stop
    }
}
actor CometTail
{
    PROJECTILE
    RENDERSTYLE ADD
    +NOCLIP
    ALPHA 0.4
    States
    {
    Spawn:
        FRTB ABCDEFGHI 1 Bright
        Stop
    }
}
actor CometDeath
{
    PROJECTILE
    RENDERSTYLE ADD
    +NOCLIP
    ALPHA 0.7
    States
    {
    Spawn:
        COMT FGHI 3 Bright
        Stop
    }
}
actor CometDeathGlow : CometTail
{
    Scale 2.0
    Alpha 0.6
    States
    {
    Spawn:
        FRTB ABCDEFGHI 3 Bright
        Stop
    }
}
actor ArchQuake 3124
{
    Speed 30
    +ismonster
    +notarget
    +noblockmap
    +noclip
    +quicktoretaliate
    +invulnerable
    +nogravity
    RenderStyle Translucent
    Alpha 0
    Scale 0.1
    States
    {
    Spawn:
    	SKUL A 1 A_Look
    	Loop
    See:
        SLUL A 1 A_FaceTarget
        SKUL A 1 A_Chase
    	Loop
    Missile:
        SKUL A 0 A_JumpIfCloser(128, 1)
        Goto See
        SKUL A 1 A_FaceTarget
    	SKUL A 1 A_SpidRefire
    	Loop
    }
}