///Bullets, items and all that jazz.

/*
================================================================================
	Waterball: 
	Cherubs are common prey for demons who enjoy hunting them for sport. Lacking
	in both strength and magic, Cherubs rely primarily on their flight to escape
	harm. As a last resort, the Cherub can form balls of holy water from the 
	moisture in the air and hurl it at predators with alarming speed. While 
    humans are immune to its holy properties, the waterball itself measures in 
	at temperatures of -126 C. The waterball causes frostburn and extreme 
	pain, but is not cold enough to freeze a target solid.
================================================================================
*/

ACTOR WaterBall Replaces DoomImpBall
{
  Radius 6
  Height 8
  Speed 12
  FastSpeed 20
  Damage 2
  DamageType "Magic"
  Projectile
  +RANDOMIZE
  +NOICEDeath
  RenderStyle Add
  Alpha 1
  SeeSound "cherub/attack"
  DeathSound "cherub/shotx"
  States
  {
  Spawn:
    WB2L AB 4 Bright
    Loop
  Death:
    WB2L CDE 4 Bright
	WB2L FGHIJ 2 Bright
    Stop
  }
}

ACTOR TrickyWaterBall 
{
  Radius 6
  Height 8
  Speed 10
  FastSpeed 20
  Damage 2
  DamageType "PLWater"
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 1
  SeeSound "cherub/attack"
  DeathSound "cherub/shotx"
  States
  {
  Spawn:
		WBAL AB 4 Bright
		TNT1 A 0 A_Weave(2, 2, 2.0, 1.0)
		WB2L A 2 Bright A_CustomMissile("Trickytail", random(-5, 5), random(-5, 5))
		WB2L A 2 Bright A_CustomMissile("Trickytail", random(-10, 10), random(-10, 10))
		TNT1 A 0 A_Weave(3, 0, 1.0, 0.0)
		WB2L A 2 Bright A_CustomMissile("TinyTinyBubble", random(-3, 3), random(-3, 3))
		WB2L A 2 Bright A_CustomMissile("TinyTinyBubble", random(-20, 20), random(-20, 20))
		TNT1 A 0 A_Weave(2, 3, 2.0, 1.0)
		WB2L B 2 Bright A_CustomMissile("Trickytail", random(-7, 7), random(-7, 7))
		WB2L A 2 Bright A_CustomMissile("TinyTinyBubble", random(-2, 2), random(-2, 2))
		TNT1 A 0 A_Weave(3, 0, 1.0, 0.0)
		WB2L B 2 Bright A_CustomMissile("Trickytail", random(-10, 10), random(-10, 10))
		WB2L B 2 Bright A_CustomMissile("Trickytail", random(-15, 15), random(-15, 15))
        Loop 
  Death:
	TNT1 AAAAA 0 Bright A_CustomMissile("BigBigBubble2", random(-10, 10), random(-10, 10), random(-10, 10))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble", random(-10, 10), random(-10, 10), random(-10, 10))
	TNT1 AA 0 Bright A_CustomMissile("BigBigBubble3", random(-10, 10), random(-10, 10), random(-10, 10))
	TNT1 A 0 Bright A_CustomMissile("BigBigBubble", random(-10, 10), random(-10, 10), random(-10, 10))
	TNT1 AAAAA 0 Bright A_CustomMissile("TinyTinyBubble", random(-10, 10), random(-10, 10), random(-10, 10))
	TNT1 AAAAA 0 Bright A_CustomMissile("BigBigBubble2", random(-20, 20), random(-20, 20), random(-20, 20))
	TNT1 AA 0 Bright A_CustomMissile("BigBigBubble3", random(-20, 20), random(-20, 20), random(-20, 20))
	TNT1 A 0 Bright A_CustomMissile("BigBigBubble", random(-20, 20), random(-20, 20), random(-20, 20))
	TNT1 A 0 Bright A_CustomMissile("BigBigBubble2", random(-20, 20), random(-20, 20), random(-20, 20))
	TNT1 AAAAAAAA 0 Bright A_CustomMissile("TinyTinyBubble", random(-20, 20), random(-20, 20), random(-20, 20))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble3", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAA 0 Bright A_CustomMissile("TinyTinyBubble", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAAAAAAAAAA 0 Bright A_CustomMissile("BigBigBubble", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAAAAA 0 Bright A_CustomMissile("BigBigBubble2", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AA 0 Bright A_CustomMissile("BigBigBubble", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble2", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAAA 0 Bright A_CustomMissile("TinyTinyBubble", random(-40, 40), random(-40, 40), random(-40, 40))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble", random(-100, 100), random(-100, 100), random(-100, 100))
	TNT1 AAAA 0 Bright A_CustomMissile("BigBigBubble3", random(-100, 100), random(-100, 100), random(-100, 100))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble2", random(-100, 100), random(-100, 100), random(-100, 100))
	TNT1 AAA 0 Bright A_CustomMissile("TinyTinyBubble", random(-100, 100), random(-100, 100),random(-100, 100))
	TNT1 AAA 0 Bright A_CustomMissile("BigBigBubble", random(-100, 100), random(-100, 100), random(-100, 100))
	WB2L CDE 4 Bright
	WB2L FGHIJ 2 Bright
    Stop
  }
}

Actor TrickyTail
{
	Radius 1
	Height 1
	Speed 0
	Alpha 0.9
	Scale 0.8
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	States
	{
	Spawn:
		TNT1 A 2
	SpawnLoop:
		WB2L K 12 
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 12 A_FadeOut(0.005)
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 6 A_FadeOut(0.005)
		WB2L CDEFGHIJ 4 A_FadeOut(0.005)
		Stop
	}
}

Actor BigBigBubble : Trickytail
{
	Scale 1.2
	Alpha 1.0
		
}

Actor BigBigBubble2 : Trickytail
{
	Scale 1.2
	Alpha 1.0
	States
		{
	Spawn:
		TNT1 A 2
	SpawnLoop:
		WB2L K 4 
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 12 A_FadeOut(0.005)
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 6 A_FadeOut(0.005)
		WB2L CDEFGHIJ 4 A_FadeOut(0.005)
		Stop
	}
		
}

Actor BigBigBubble3 : Trickytail
{
	Scale 1.5
	Alpha 1.0
	States
		{
	Spawn:
		TNT1 A 2
	SpawnLoop:
		WB2L K 3 
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 3 A_FadeOut(0.005)
		WB2L LMNOPQRST 1 A_FadeOut(0.005)
		WB2L K 12 A_FadeOut(0.005)
		WB2L CDEFGHIJ 4 A_FadeOut(0.005)
		Stop
	}
		
}

Actor TinyTinyBubble : Trickytail
{
	Scale 0.6
	Alpha 1.0		
}

/*
================================================================================
Strawberry Shortbow: Weapon of the Kiss

The arrow always does a soild 18 damage, regardless of the player's armor
	
================================================================================
*/

ACTOR Arrow1
{
  Radius 6
  Height 8
  Speed 30
  FastSpeed 40
  Damage (15)
  DamageType "KissMagic"
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  +PIERCEARMOR
  RenderStyle Add
  Alpha 1
  SeeSound "kiss/attack"
  DeathSound "kiss/shotx"
  States
  {
  Spawn:
    PINK AA 4 Bright
	PINK A 4 Bright
    Loop
  Death:
    PINK BCDEFGHIJKLMNOP 2 Bright
	PINK QRSTU 4
   Stop
  }
}

ACTOR AfroArrow1 // No explosion
{
  Radius 6
  Height 8
  Speed 35
  FastSpeed 40
  Damage 3
  DamageType "Magic"
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 1
  SeeSound "kiss/attack"
  DeathSound "stonemaiden/hit1"
  
  States
  {
  Spawn:
    YINK AA 4 Bright
	YINK A 4 Bright
    Loop
  Death:
    YINK BCDEFGHIJKLMNOPQ 2 Bright
	YINK RSTU 4 Bright
   Stop
  }
}

ACTOR AfroArrow2 // Smol explosion
{
  Radius 6
  Height 8
  Speed 30
  FastSpeed 40
  Damage (20)
  DamageType "Magic"
  Projectile
  +RANDOMIZE
  +PIERCEARMOR
  RenderStyle Add
  Alpha 1
  SeeSound "kiss/attack"
  DeathSound "stonemaiden/hit1"
  
  States
  {
  Spawn:
    YINK AA 4 Bright
	YINK A 4 Bright
    Loop
  Death:
    YINK UTSRQPONMLKJIHG 2 Bright
	YINK FEDC 4 Bright
	YINK B 7 
	TNT1 A 0 A_SeekerMissile(70,90,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.05)
	YINK B 7 Bright
	TNT1 A 0 A_SeekerMissile(70,90,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.05)
	TNT1 A 0 A_PlaySound ("stonemaiden/attack1")
	YINK B 7 
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.02)
	YINK B 7 Bright
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.02)
	TNT1 A 0 A_PlaySound ("stonemaiden/attack1")
	YINK B 4 
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.03)
	YINK B 4 Bright 
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.03)
	TNT1 A 0 A_PlaySound ("stonemaiden/attack2")
	YINK B 4 
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.03)
	YINK B 4 Bright
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.04)
	TNT1 A 0 A_PlaySound ("stonemaiden/attack2")
	YINK B 4 
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.05)
	YINK B 4 Bright A_PlaySound ("stonemaiden/attack3")
		TNT1 A 0 A_SeekerMissile(70,25,SMF_LOOK,190,1)
	TNT1 A 0 A_ScaleVelocity (0.05)
	YINK B 2 
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2
	TNT1 A 0 A_PlaySound ("stonemaiden/attack4")
    BFYY B 3 Bright A_Explode(60, 128, 0)
    BFYY C 4 Bright
    BFYY D 3 Bright
    BFYY E 4 Bright
    BFYY F 3 Bright
    BFYY G 4 Bright
    BFYY H 3 Bright
   Stop
  }
}

ACTOR AfroArrow3 // Large explosion
{
  Radius 6
  Height 8
  Speed 30
  FastSpeed 50
  Damage 6
  DamageType "Magic"
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  RenderStyle Add
  Alpha 1
  SeeSound "fmaiden/attack"
  DeathSound "fmaiden/hit"
  
  States
  {
  Spawn:
    YINK AA 4 Bright A_SEEKERMISSILE(20, 20)
	YINK A 4 Bright A_SEEKERMISSILE(20, 20)
    Loop
  Death:
    YINK UTSRQPONMLKJIHG 2 Bright 
	YINK FEDC 4 Bright 
	YINK B 7 
	YINK B 7 Bright A_PlaySound ("stonemaiden/attack1")
	YINK B 7 A_SetScale(1.1)
	YINK B 7 Bright A_PlaySound ("stonemaiden/attack1")
	YINK B 4 A_SetScale(1.2)
	YINK B 4 Bright A_PlaySound ("stonemaiden/attack2")
	YINK B 4 A_SetScale(1.3)
	YINK B 4 Bright A_PlaySound ("stonemaiden/attack2")
	YINK B 4 A_SetScale(1.4)
	YINK B 4 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 A_SetScale(1.5)
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 A_SetScale(1.6)
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 A_SetScale(1.7)
	YINK B 2 Bright A_PlaySound ("stonemaiden/attack3")
	YINK B 2 A_SetScale(2.0)
	TNT1 A 0 A_PlaySound ("stonemaiden/attack4")
    BFYY B 3 Bright A_Explode(60, 450, 0)
    BFYY C 4 Bright
    BFYY D 3 Bright
    BFYY E 4 Bright
    BFYY F 3 Bright
    BFYY G 4 Bright
    BFYY H 3 Bright
   Stop
  }
}

ACTOR Flake
{
  Radius 4
  Height 8
  Speed 45
  FastSpeed 60
  Damage 1
  DamageType "Ice"
  Projectile
  +RANDOMIZE  
  RenderStyle Add
  Alpha 1
  SeeSound "snow/attack"
  DeathSound "snow/shotx"
  States
  {
  Spawn:
    SHRD ABC 4 Bright
    Loop
  Death:
    SHEX ABCDE 3 Bright
   Stop
  }
}

ACTOR WeakFlake : Flake
{
  +BOUNCEONWALLS
  BounceType Doom
  Bouncecount 3
  }


ACTOR BigFlake1 : Flake
{
  Damage 2
  Speed 45
  Scale 1.7
  SeeSound "snow/attack2"			
  DeathSound "snow/shot2"
  +BOUNCEONWALLS
  BounceType Doom
  Bouncecount 5
  }

ACTOR BigFlake2 : Flake
{
  Damage 2
  Speed 45
  Scale 1.7
  SeeSound "snow/attack2"			
  DeathSound "snow/shot2"
  +BOUNCEONWALLS
  BounceType Doom
  Bouncecount 5
  }

ACTOR Butterfly
{
  Radius 8
  Height 8
  Speed 4
  Damage 1
  Projectile
  +SEEKERMISSILE
  +RANDOMIZE
  +RIPPER
  +THRUGHOST
  +WINDTHRUST
  Damagetype "RainbowRip"
  SeeSound "iris/butterfly1"
  DeathSound "iris/butterfly2"
  RenderStyle SoulTrans
  States
  {
  Spawn:
	TNT1 A 0 A_GiveInventory ("ButterflyDeathTimer",1)
	TNT1 A 0 A_Jumpifinventory ("ButterflyDeathTimer",60,"ButterflyDeath")
    BFLY A 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY B 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY C 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY D 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	TNT1 A 0 A_Jump (48, 1)
    Loop
    BFLY E 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY F 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY G 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	BFLY H 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
    Loop
  Death:
	TNT1 A 0 A_Jump(256, "RBflyDeath", "OBflyDeath", "YBflyDeath", "GBflyDeath", "BBflyDeath", "PBflyDeath", "VBflyDeath" )
	RBflyDeath:
	BFYR ABCDEFGH 2 Bright
	Stop
	OBflyDeath:
	BFYO ABCDEFGH 2 Bright
	Stop
	YBflyDeath:
	BFYY ABCDEFGH 2 Bright
	Stop
	GBflyDeath:
	BFYG ABCDEFGH 2 Bright
	Stop
	BBflyDeath:
	BFYB ABCDEFGH 2 Bright
	Stop
	PBflyDeath:
	BFYP ABCDEFGH 2 Bright
	Stop
	VBflyDeath:
	BFYV ABCDEFGH 2 Bright
	Stop
   ButterFlyDeath:
	BFLY I 2 A_ScaleVelocity(0.95)
	BFLY ABCD 2
	BFLY I 3
	BFLY ABCD 2
	BFLY I 3
	BFLY ABCD 2
	BFLY I 3
	BFLY ABCD 2
	TNT1 A 0 A_PlaySound("iris/butterfly3")
	GoTo FallDeath
   FallDeath:
	TNT1 A 0 A_Changeflag("NOGRAVITY",FALSE)
	TNT1 A 0 A_Changeflag("FLOAT",FALSE)
	BFLY I 4
	BFLY AB 3
	Loop
  }
}

ACTOR ButterflyFast
{
  Radius 8
  Height 8
  Speed 8
  Damage 1
  Projectile
  Damagetype "RainbowRip"
  +SEEKERMISSILE
  +RANDOMIZE
  +RIPPER
  +THRUGHOST
  SeeSound "iris/butterfly1"
  DeathSound "iris/butterfly2"
  RenderStyle Add
  States
  {
  Spawn:
	TNT1 A 0 A_GiveInventory ("ButterflyDeathTimer",1)
	TNT1 A 0 A_Jumpifinventory ("ButterflyDeathTimer",45,"ButterflyDeath")
    GFLY A 2 Bright A_SeekerMissile (4,8)
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	GFLY B 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	GFLY C 2 Bright A_SeekerMissile (4,8)
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
	GFLY D 2 Bright A_Tracer2
	TNT1 A 0 A_SpawnItemEx ("RainbowSparkle",0,3,0)
    Loop
  Death:
	TNT1 A 0 A_Jump(256, "RBflyDeath", "OBflyDeath", "YBflyDeath", "GBflyDeath", "BBflyDeath", "PBflyDeath", "VBflyDeath")
	RBflyDeath:
	BFYR ABCDEFGH 2 Bright
	Stop
	OBflyDeath:
	BFYO ABCDEFGH 2 Bright
	Stop
	YBflyDeath:
	BFYY ABCDEFGH 2 Bright
	Stop
	GBflyDeath:
	BFYG ABCDEFGH 2 Bright
	Stop
	BBflyDeath:
	BFYB ABCDEFGH 2 Bright
	Stop
	PBflyDeath:
	BFYP ABCDEFGH 2 Bright
	Stop
	VBflyDeath:
	BFYV ABCDEFGH 2 Bright
    Stop
	   ButterFlyDeath:
	GFLY E 2 A_ScaleVelocity(0.95)
	GFLY ABCD 2
	GFLY E 3
	GFLY ABCD 2
	GFLY E 3
	GFLY ABCD 4
	GFLY E 3
	GFLY ABCD 4
	TNT1 A 0 A_PlaySound("iris/butterfly3")
	GoTo FallDeath
   FallDeath:
	TNT1 A 0 A_Changeflag("NOGRAVITY",FALSE)
	TNT1 A 0 A_Changeflag("FLOAT",FALSE)
	GFLY E 3
	GFLY AB 4	
	Loop
  }
}

Actor ButterflyDeathTimer : Inventory
{inventory.maxamount 61}


ACTOR RainbowSparkle
{
  +NOBLOCKMAP
  +NOGRAVITY
  +ALLOWPARTICLES
  +RANDOMIZE
  RenderStyle Translucent
  Alpha 0.7
  VSpeed 1
  Mass 5
  States
    {
  Spawn:
    TNT1 A 1 Bright A_Tracer
    GoTo Death
  Death:
	TNT1 A 0 A_Jump(256, "Rspark", "Ospark", "Yspark", "Gspark", "Bspark", "Pspark", "Vspark")
	Rspark:
	BFYR IJKLIJKLM 2 Bright
	Stop
	Ospark:
	BFYO IJKLIJKLM 2 Bright
	Stop
	Yspark:
	BFYY IJKLIJKLM 2 Bright
	Stop
	Gspark:
	BFYG IJKLIJKLM 2 Bright
	Stop
	Bspark:
	BFYB IJKLIJKLM 2 Bright
	Stop
	Pspark:
	BFYP IJKLIJKLM 2 Bright
	Stop
	Vspark:
	BFYV IJKLIJKLM 2 Bright
    Stop
  }
}

ACTOR NoRainbowRip : PowerProtection
{
 DamageFactor "RainbowRip", 0 //This makes it so anything with the DamageType "RainbowRip" is unable to do damage
}
 
ACTOR NegateRainbowRip : PowerupGiver
{
 Inventory.MaxAmount 1
 Powerup.Type "NoRainbowRip" //This calls for the above's DamageFactor protection
 Powerup.Duration 35 //Just making this protection last one second
 +INVENTORY.AUTOACTIVATE
 States
 {
  Spawn:
  TNT1 A 0
  Stop
 }
}

ACTOR RainbowBlood : Blood
{
  Mass 3
  +NOBLOCKMAP
  +NOTELEPORT
  +ALLOWPARTICLES
  +NOBLOCKMAP
  +PUFFGETSOWNER
  -SOLID
  Gravity 0.5
  +Bright
  
  States
    {
  Spawn:
    TNT1 A 0
	GoTo Death
	Death:
	TNT1 A 0
	TNT1 A 0 A_Jump (256,"RBlood","OBlood","YBlood","GBlood","BBlood","VBlood","PBlood")
	RBlood:
	IB0D ABC 8
	IB0D BA 6 
	Stop
	OBlood:
	IB0D MNO 4 
	IB0D BA 7 
	Stop
	YBlood:
	IB0D GHI 7 
	IB0D HG 6
	Stop
	GBlood:
	IB0D PQR 7
	IB0D QP 4
	Stop
	BBlood:
	IB0D DEF 7
	IB0D ED 9
	Stop
	VBlood:
	IB0D JKL 5
	IB0D KJ 2
    Stop
	PBlood:
	IB0D STU 6
	IB0D TS 2
    Stop
  }
}

ACTOR EyePuff1
{
  +NOBLOCKMAP
  +NOGRAVITY
  +ALLOWPARTICLES
  +RANDOMIZE
  +EXTREMEDeath
  +PAINLESS
  Damagetype "PlayerVoid"
  RenderStyle Translucent
  Alpha 0.8
  VSpeed 1
  Mass 5
  States
  {
  Spawn:
    EYEB A 17 Bright
	EYEB GC 6 Bright
    EYEB IE 4 Bright
    Stop
  }
}

ACTOR EyePuff2
{
  +NOBLOCKMAP
  +NOGRAVITY
  +ALLOWPARTICLES
  +RANDOMIZE
  +EXTREMEDeath
  Damagetype "PlayerVoid"
  RenderStyle Translucent
  Alpha 0.8
  VSpeed 1
  Mass 5
  States
  {
  Spawn:
    EYEB F 17 Bright
	EYEB BH 6 Bright
    EYEB DJ 4 Bright
    Stop
  }
}

ACTOR Sight1
{
  Radius 6
  Height 8
  Speed 30
  FastSpeed 50
  Damage 2
  Projectile
  Damagetype "PlayerVoid"
  +RANDOMIZE
  +EXTREMEDeath
  +PAINLESS
  RenderStyle Add
  Alpha 1
  SeeSound "ophanim/attack1"
  DeathSound "ophanim/attack2"
  States
  {
  Spawn:
    EYEL AB 4 Bright
	EYEL CD 4 Bright
    Loop
  Death:
    EYEL E 6 Bright
	EYEL FG 12 Bright
	EYEL HI 6 Bright
   Stop
  }
}

ACTOR Sight10 : Sight1
{
  Damage 1
}

ACTOR OphanimMelee
{   
   Radius 32
   Height 32
   Damage 7
   Speed 10
   +THRUGHOST
   +EXTREMEDeath
   +FORCEPAIN
   Projectile
   ProjectileKickBack 10000
   Damagetype "Melee"
   Meleerange 550
   States
   {
   Spawn:
        TNT1 A 0
        Stop
	Death:
		TNT1 A 0 A_PlaySound("ophanim/melee")
		TNT1 A 1 A_RadiusThrust(10000, -1, RTF_NOTMISSILE,1)
    Stop
  }
}

ACTOR Wslash replaces BaronBall
{
  Radius 16
  Height 16
  Speed 15
  FastSpeed 20
  Damage 6
  DamageType "Shrapnel"
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 1
  SeeSound "authority/attack"
  DeathSound "authority/attack3"
  Decal "BaronScorch"
  States
  {
  Spawn:
    AWSH AB 8 Bright
    Loop
  Death:
    AWSH C 4
	AWSH DEF 2 Bright
	AWSH G 4 Bright
	AWSH HIJKLMNOP 2 Bright
	AWSH QRST 1 Bright
    Stop
  }
}

ACTOR Bslash
{
  Radius 16
  Height 16
  Speed 12
  FastSpeed 16
  Damage 9
  DamageType "Shrapnel"
  Projectile
  +RANDOMIZE
  +BLOODSPLATTER
  RenderStyle Add
  Alpha 1
  SeeSound "authority/attack2"
  DeathSound "authority/attack3"
  Decal "BaronScorch"
   
  States
  {
  Spawn:
    BWSH AB 4 Bright A_SpawnItemEx ("BloodTail",0,3,0)
    Loop
  Death:
    BWSH C 4
	BWSH DEF 2 Bright
	BWSH G 4 Bright
	BWSH HIJKLMNOPQRST 1 Bright
    Stop
  }
}

ACTOR BloodTail
{
  Game Doom
  Radius 16
  Height 16
  Speed 10
  FastSpeed 16
  Projectile
  +RANDOMIZE
  +Nointeraction
  RenderStyle Add
  Alpha 0.3
  States
  {
  Spawn:
    BWSH A 4 Bright
    Goto Death
  Death:
    BWSH A 2 Bright
    Stop
  }
}

ACTOR Lightningball replaces FatShot
{
  Radius 6
  Height 8
  Speed 20
  Damage 7
  Projectile 
  DamageType "Electric"
  +RANDOMIZE
  RenderStyle Add
  Alpha 0.9
  SeeSound "principality/attack4"
  DeathSound "principality/attack"
  States
  {
  Spawn:
    PPLN ABCD 4 Bright 
    Loop
  Death:
    PPLN E 2 Bright A_SetScale(1.5)
    PPLN FG 2 Bright A_SetScale(1.5)
    PPLN HIJK 4 Bright A_SetScale(1.5)
	Stop
  }
}

ACTOR Tinylightning
{
  Radius 6
  Height 8
  Speed 35
  FastSpeed 50
  Damage 2
  Projectile
  DamageType "Electric"
  +RANDOMIZE
  RenderStyle Add
  Alpha 1
  SeeSound "principality/attack2"
  DeathSound "principality/attack3"
  States
  {
  Spawn:
    PPLN AB 4 Bright A_SetScale(0.4)
	PPLN CD 4 Bright A_SetScale(0.3)
    Loop
  Death:
    PPLN E 2 Bright A_SetScale(0.7)
    PPLN FG 2 Bright A_SetScale(0.7)
    PPLN HIJK 4 Bright A_SetScale(0.7)
   Stop
  }
}

ACTOR MiniLightning : Tinylightning
{
	Scale 0.5
	Damage (5)
}

ACTOR Deathcloud
{
	Radius 0
	Height 30
	Speed 0
	+NOINTERACTION
	+MISSILE
	+MTHRUSPECIES
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_Warp(AAPTR_TARGET, 0, 0, 0, 0, WARPF_ABSOLUTEANGLE | WARPF_NOCHECKPOSITION)
		TNT1 A 0 
		PCLO ABCDEFGHIP 4 
		PCLO Q 2
		PCLO R 4
		Goto Death
	Death:
		PCLO STU 4
		Stop
	}
}

ACTOR Puppetstrings Replaces ArchvileFire
{
  +NOBLOCKMAP
  +NOGRAVITY
  DamageType "Fire"
  RenderStyle Add
  Alpha 0.4
  States
  {
  Spawn:
    PSTG A 2 Bright A_PlaySound ("dollmaykr/summon3")
    PSTG BAB 2 Bright A_Warp(AAPTR_TRACER, 24, 0, 0, 0, WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    PSTG C 2 Bright A_PlaySound ("dollmaykr/summon3")
    PSTG CDEFCDEFCDEFC 2 Bright A_Warp(AAPTR_TRACER, 24, 0, 0, 0, WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    PSTG D 2 Bright A_PlaySound ("dollmaykr/summon3")
    PSTG EFCDEFCDEFCDEFCDEFCDEFCDEFCDEFCDE 2 Bright A_Warp(AAPTR_TRACER, 24, 0, 0, 0, WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
	Stop
  }
}

ACTOR DollYarn  // This is a clusterfuck of code. If only I could program. :(
{
	Radius 6
	Height 8
	+THRUGHOST
	+THRUSPECIES
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+HEXENBOUNCE
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONWALLS
    +BOUNCEONFLOORS
    +BOUNCEONCEILINGS
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY
	+MISSILE
	GRAVITY 0.15 
	Bouncecount 5
    Bouncefactor 0.45
    WALLBouncefactor 1.75
	Bouncefactor 0.75
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
        PSTG GHIJGHIJGHIJGHIJGHIJ 3 Bright
		TNT1 A 0 A_Jump (196,"SpawnTurboKnifedoll")
		PSTG GHIJ 3 Bright
		TNT1 A 0 A_Jump (128,"SpawnTurboRevolverdoll")
		PSTG KLMNO 3 Bright
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("TurboShotgunDuo",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnTurboKnifedoll:
		PSTG KLMNO 3 Bright
		TNT1 A 0 A_PlaySound ("angel/blink")	
		TNT1 A 0 A_SpawnItemEx("TurboDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnSmolTurboDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("SmolTurboDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietTurboDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietTurboDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietSmolTurboDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietSmolTurboDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnTurboRevolverdoll:
		PSTG KLMNO 3 Bright
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("TurboRevolverDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnSmolTurboRevolverDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("SmolTurboRevolverdoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietTurboRevolverDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietTurboRevolverDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietSmolTurboRevolverDoll:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietSmolTurboRevolverDoll",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnSmolTurboShotgunDuo:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("SmolTurboShotgunDuo",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietTurboShotgunDuo:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietTurboShotgunDuo",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
	SpawnQuietSmolTurboShotgunDuo:
		TNT1 A 0 A_PlaySound ("angel/blink")
		TNT1 A 0 A_SpawnItemEx("QuietSmolTurboShotgunDuo",0,0,0,0,0,0,0,SXF_SetMaster)
		Stop
    }
}

Actor HolyLightTeleport replaces TeleportFog
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_PlaySound("teleport/teleport1")
		HTEL ABCDEFEDCBA 1 Bright
		Stop
	}
}

ACTOR Tinyyfireball
{
  Radius 6
  Height 8
  Speed 8
  FastSpeed 16
  Damage 4
  DamageType Fire
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  RenderStyle Add
  Alpha 1
  SeeSound "seraph/attack1"
  DeathSound "seraph/attack5"
  States
  {
  Spawn:
    TFBL AB 4 Bright A_SEEKERMISSILE(10, 10)
    Loop
  Death:
    TFBL CDEFGHI 4 Bright
   Stop
  }
}

ACTOR LoonBlast
{
  Radius 11
  Height 8
  Speed 30
  Damage 15
  Projectile
  +RANDOMIZE
  +DEHEXPLOSION
  +ROCKETTRAIL
  SeeSound "seraph/attack3"
  DeathSound "seraph/attack4"
  Obituary "$OB_MPROCKET" // "%o rode %k's rocket."
  States
  {
  Spawn:
	TNT1 A 0 NoDelay A_PlaySound ("loon/loonblast",6,1, TRUE)
    PNUK A 20 Bright
    Loop
  Death:
	TNT1 A 0 A_StopSound (CHAN_6)
    PNUK B 6 Bright A_Explode
	PNUK CD 5 Bright
	PNUK EFG 4 Bright
	PNUK HI 2 Bright
    Stop
  }
}

ACTOR TinyLoonBlast : LoonBlast
{
	Scale 0.5
	Damage 4
	Speed 20
}

ACTOR Tinyyfireball2
{
  Radius 6
  Height 8
  Speed 14
  FastSpeed 16
  Damage 6
  DamageType Fire
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  +DEHEXPLOSION
  RenderStyle Add
  Alpha 1
  SeeSound "seraph/attackx"
  DeathSound "seraph/attack5"
  States
  {
  Spawn:
    TFBL AB 4 Bright A_SEEKERMISSILE(10, 10)
    Loop
  Death:
    TFBL CDEFGHI 4 Bright
   Stop
  }
}

ACTOR LoonBlastFast
{
  Radius 11
  Height 8
  Speed 35
  Damage 20
  Projectile
  DamageType Fire
  +RANDOMIZE
  +DEHEXPLOSION
  +ROCKETTRAIL
  SeeSound "seraph/attack3"
  DeathSound "seraph/attack4"
  States
  {
  Spawn:
	TNT1 A 0 NoDelay A_PlaySound ("loon/loonblast",6,1, TRUE)
    PNUK A 20 Bright
    Loop
  Death:
	TNT1 A 0 A_StopSound (CHAN_6)
    PNUK B 6 Bright A_Explode
	PNUK CD 5 Bright
	PNUK EFG 4 Bright
	PNUK HI 2 Bright
    Stop
  }
}

ACTOR LoonBomb
{
  Radius 11
  Height 8
  Speed 5
  Damage 20
  Projectile
  +RANDOMIZE
  +DEHEXPLOSION
  +ROCKETTRAIL
  +SEEKERMISSILE
  +NOCLIP
  +NOINTERACTION
  SeeSound "seraph/attack3"
  DeathSound "seraph/attack4"
  Alpha 0.1
  States
  {
  Spawn:
    PNUK A 25 Bright A_SEEKERMISSILE(10, 10)
	TNT1 A 1 A_PlaySound ("seraph/attack4")
    PNUK B 6 Bright A_Explode
	PNUK CD 5 Bright A_SEEKERMISSILE(10, 10)
	PNUK EFG 4 Bright A_SEEKERMISSILE(10, 10)
	PNUK HI 2 Bright A_SEEKERMISSILE(10, 10)
	TNT1 A 0 A_Jump (4, 2)
    Loop
  Death:
	TNT1 A 1 A_PlaySound ("seraph/attack4")
	PNUK AB 6 Bright 
	PNUK C 6 Bright A_Explode
	PNUK D 5 Bright
	PNUK EFG 4 Bright
	PNUK HI 2 Bright
	TNT1 A 0 A_DropItem ("CellPack", -1, 128)
	TNT1 A 0 A_DropItem ("Shellbox", -1, 128)
	TNT1 A 0 A_DropItem ("Medikit", -1, 196)
    Stop
  }
}

ACTOR EviternityIILoonBomb
{
  Radius 11
  Height 8
  Speed 5
  Damage 15
  Projectile
  +RANDOMIZE
  +DEHEXPLOSION
  +ROCKETTRAIL
  +SEEKERMISSILE
  +NOCLIP
  +NOINTERACTION
  SeeSound "seraph/attack3"
  DeathSound "seraph/attack4"
  Alpha 0.1
  States
  {
  Spawn:
    PNUK A 25 Bright A_SEEKERMISSILE(10, 10)
	TNT1 A 1 A_PlaySound ("seraph/attack4")
    PNUK B 6 Bright A_Explode
	PNUK CD 5 Bright A_SEEKERMISSILE(10, 10)
	PNUK EFG 4 Bright A_SEEKERMISSILE(10, 10)
	PNUK HI 2 Bright A_SEEKERMISSILE(10, 10)
	TNT1 A 0 A_Jump (64, 2)
    Loop
  Death:
	TNT1 A 1 A_PlaySound ("seraph/attack4")
	PNUK AB 6 Bright 
	PNUK C 6 Bright A_Explode
	PNUK D 5 Bright
	PNUK EFG 4 Bright
	PNUK HI 2 Bright
    Stop
  }
}

ACTOR Evefirefloor : MinotaurFX1
{
  Radius 5
  Height 12
  Speed 14
  FastSpeed 20
  Damage 2
  Scale 1.5
  DamageType Fire
  +FLOORHUGGER
  ExplosionDamage 6
  DeathSound "minotaur/fx2hit"

  States
  {
  Spawn:
	TNT1 A 0 A_PlaySound ("seraph/sizzle")
    EVE4 AB 2 Bright
	TNT1 A 0 A_SpawnItemEx ("EvefirefloorMini")
	EVE4 CD 2 Bright
	TNT1 A 0 A_SpawnItemEx ("EvefirefloorMini")
	EVE4 EF 2 Bright
	TNT1 A 0 A_SpawnItemEx ("EvefirefloorMini")
	TNT1 A 0 A_PlaySound ("seraph/sizzle")
	EVE4 GH 2
	TNT1 A 0 A_SpawnItemEx ("EvefirefloorMini")
	EVE4 IJ 2 Bright
	TNT1 A 0 A_SpawnItemEx ("EvefirefloorMini")
    Loop
  Death:
    EVE4 K 4 Bright A_Explode(20,64)
    EVE4 LMNO 4 Bright
    Stop
  }
}

ACTOR EvefirefloorMini : MinotaurFX1
{
  Radius 2
  Height 6
  Speed 10
  FastSpeed 20
  Scale 0.4
  +CLIENTSIDEONLY
  +FLOORHUGGER
  +NOINTERACTION
  States
  {
  Spawn:
    EVE4 ABCDEFGHIJ 2 Bright
    Stop
  }
}

ACTOR BlueFireFloor : MinotaurFX1
{
  Radius 5
  Height 12
  Speed 12
  FastSpeed 20
  Damage 2
  Scale 0.9
  DamageType Fire
  +FLOORHUGGER
  ExplosionDamage 3
  DeathSound "minotaur/fx2hit"

  States
  {
  Spawn:
	TNT1 A 0 A_PlaySound ("seraph/sizzle")
    EVE5 AB 2 Bright
	TNT1 A 0 A_SpawnItemEx ("BlueFireFloorMini")
	EVE5 CD 2 Bright
	TNT1 A 0 A_SpawnItemEx ("BlueFireFloorMini")
	EVE5 EF 2 Bright
	TNT1 A 0 A_SpawnItemEx ("BlueFireFloorMini")
	TNT1 A 0 A_PlaySound ("seraph/sizzle")
	EVE5 GH 2
	TNT1 A 0 A_SpawnItemEx ("BlueFireFloorMini")
	EVE5 IJ 2 Bright
	TNT1 A 0 A_SpawnItemEx ("BlueFireFloorMini")
    Loop
  Death:
    EVE5 K 4 Bright A_Explode(20,64)
    EVE5 LMNO 4 Bright
    Stop
  }
}

ACTOR BlueFireFloorMini : MinotaurFX1
{
  Radius 2
  Height 6
  Speed 10
  FastSpeed 20
  Scale 0.4
  +CLIENTSIDEONLY
  +FLOORHUGGER
  +NOINTERACTION
  States
  {
  Spawn:
    EVE5 ABCDEFGHIJ 2 Bright
    Stop
  }
}

ACTOR Lichfireball
{
  Radius 6
  Height 8
  Speed 12
  FastSpeed 20
  Damage 7
  Projectile
  Damagetype "Playervoid"
  +RANDOMIZE
  +SEEKERMISSILE
  +FULLVOLACTIVE
  +FULLVOLDEATH
  SeeSound "destroyingangel/attack1"
  DeathSound "destroyingangel/attack3"
  States
  {
  Spawn:
    ZFBL ABCD 2  Bright A_SEEKERMISSILE(5,5)
    Loop
  Death:
    ZFBL EFGHI 4 Bright
   Stop
  }
}

ACTOR UltraLichfireball
{
  Radius 6
  Height 8
  Speed 25
  FastSpeed 30
  Damage (100)
  Projectile
  Scale 1.5
  Damagetype "Playervoid"
  +FULLVOLACTIVE
  +FULLVOLDeath
  +EXTREMEDeath
  SeeSound "destroyingangel/attack5"
  DeathSound "destroyingangel/attack4"
  States
  {
  Spawn:
    ZFBL J 2  Bright
    Loop
  Death:
    ZFBL KLMNOPQRSTU 2 Bright
   Stop
  }
}

actor Eggshell01
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        SEGG ABCDA 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		SEGG B 1200
		SEGG B 5 A_FadeOut (0.25)
  		SEGG B 5 A_FadeOut (0.25)
		SEGG B 5 A_FadeOut (0.25)
		SEGG B 5 A_FadeOut (0.25)
		Stop
		SEGG B -1
		Stop
	Death2:
		SEGG B 2
		SEGG C 1200
		SEGG C 5 A_FadeOut (0.25)
  		SEGG C 5 A_FadeOut (0.25)
		SEGG C 5 A_FadeOut (0.25)
		SEGG C 5 A_FadeOut (0.25)
		Stop
		SEGG C -1
		Stop
    }
}

actor Eggshell02
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        SEGG EFGH 3
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		SEGG H 1150
		SEGG H 5 A_FadeOut (0.25)
  		SEGG H 5 A_FadeOut (0.25)
		SEGG H 5 A_FadeOut (0.25)
		SEGG H 5 A_FadeOut (0.25)
		Stop
	Death2:
		SEGG EF 2
		SEGG F 1150
		SEGG F 5 A_FadeOut (0.25)
  		SEGG F 5 A_FadeOut (0.25)
		SEGG F 5 A_FadeOut (0.25)
		SEGG F 5 A_FadeOut (0.25)
		Stop
    }
}

actor Eggshell03
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 3
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        SEGG IJKLI 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		SEGG J 1400
		SEGG J 5 A_FadeOut (0.25)
  		SEGG J 5 A_FadeOut (0.25)
		SEGG J 5 A_FadeOut (0.25)
		SEGG J 5 A_FadeOut (0.25)
		Stop
	Death2:
		SEGG I 1400
		SEGG I 5 A_FadeOut (0.25)
  		SEGG I 5 A_FadeOut (0.25)
		SEGG I 5 A_FadeOut (0.25)
		SEGG I 5 A_FadeOut (0.25)
		Stop
    }
}

actor Eggshell04
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        SEGG MNOPMNO 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		SEGG P 1300
		SEGG P 5 A_FadeOut (0.25)
  		SEGG P 5 A_FadeOut (0.25)
		SEGG P 5 A_FadeOut (0.25)
		SEGG P 5 A_FadeOut (0.25)
		Stop
	Death2:
		SEGG O 1300
		SEGG O 5 A_FadeOut (0.25)
  		SEGG O 5 A_FadeOut (0.25)
		SEGG O 5 A_FadeOut (0.25)
		SEGG O 5 A_FadeOut (0.25)
		Stop
    }
}

ACTOR BlueOrbitBullet
{
  Radius 4
  Height 8
  Speed 45
  FastSpeed 60
  Damage 1
  Projectile
  +RANDOMIZE 
  RenderStyle Add
  Alpha 1
  SeeSound "Crusaderqueen/bullet"
  DeathSound "Crusaderqueen/bullethit"
  States
  {
  Spawn:
    ORBB ABCD 2 Bright
    Loop
  Death:
    ORBB EFGHI 3 Bright
	ORBB JKL 3 Bright
   Stop
  }
}

ACTOR SuperBlueOrbitBullet
{
  Radius 4
  Height 8
  Speed 45
  FastSpeed 60
  Damage 2
  Projectile
  +RANDOMIZE 
  RenderStyle Add
  Alpha 1
  Scale 2
  SeeSound "crusaderqueen/atom"
  DeathSound "crusaderqueen/atomhit"
  States
  {
  Spawn:
    ORBB M 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperBlueOrbitBulletTail")
	ORBB N 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperBlueOrbitBulletTail")
	ORBB O 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperBlueOrbitBulletTail")
	ORBB P 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperBlueOrbitBulletTail")
    Loop
  Death:
    ORBB EFG 3 Bright 
	TNT1 A 0 A_Explode(10,15)
	TNT1 AAA 0 A_CustomMissile("BlueOrbitshard", 0, 0, 45)
	TNT1 AAA 0 A_CustomMissile("BlueOrbitshard", 0, 0, 90)
	TNT1 AAA 0 A_CustomMissile("BlueOrbitshard", 0, 0, 180)
	TNT1 AAA 0 A_CustomMissile("BlueOrbitshard", 0, 0, 270)
	ORBB HIJKL 3 Bright
   Stop
  }
}

ACTOR SuperBlueOrbitBulletTail
{
  Radius 4
  Height 8
  Speed 0
  +CLIENTSIDEONLY
  +NOGRAVITY
  +RANDOMIZE
  +NOINTERACTION
  Alpha 0.5
  States
  {
  Spawn:
	TNT1 A 1
  SpawnLoop:
	ORBB ABCD 2 Bright
  Stop
  }
}

ACTOR BlueOrbitshard : BlueOrbitBullet
{
  Speed 15
  FastSpeed 30
  SeeSound "Crusaderqueen/atom"
}

ACTOR RedOrbitBullet
{
  Radius 4
  Height 8
  Speed 45
  FastSpeed 60
  Damage 1
  Projectile
  +RANDOMIZE  
  RenderStyle Add
  Alpha 1
  SeeSound "Crusaderqueen/bullet"
  DeathSound "crusaderqueen/bullethit"
  States
  {
  Spawn:
    ORBR ABCD 2 Bright
    Loop
  Death:
    ORBR EFGHI 3 Bright
	ORBR JKL 3 Bright
   Stop
  }
}

ACTOR SuperRedOrbitBullet
{
  Radius 4
  Height 8
  Speed 30
  FastSpeed 45
  Damage 2
  Projectile
  +RANDOMIZE 
  +SEEKERMISSILE
  RenderStyle Add
  Alpha 1
  Scale 2
  SeeSound "crusaderqueen/atom"
  DeathSound "crusaderqueen/atomhit"
  States
  {
  Spawn:
    ORBR M 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperRedOrbitBulletTail")
	TNT1 A 0 Bright A_SEEKERMISSILE(10, 10)
	ORBR N 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperRedOrbitBulletTail")
	TNT1 A 0 Bright A_SEEKERMISSILE(10, 10)
	ORBR O 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperRedOrbitBulletTail")
	TNT1 A 0 Bright A_SEEKERMISSILE(10, 10)
	ORBR P 1 Bright
	TNT1 A 0 A_SpawnItemEx("SuperRedOrbitBulletTail")
	TNT1 A 0 Bright A_SEEKERMISSILE(10, 10)
    Loop
  Death:
    ORBR EFG 3 Bright 
	TNT1 A 0 A_Explode(10,15)
	TNT1 AAA 0 A_CustomMissile("RedOrbitshard", 0, 0, 45)
	TNT1 AAA 0 A_CustomMissile("RedOrbitshard", 0, 0, 90)
	TNT1 AAA 0 A_CustomMissile("RedOrbitshard", 0, 0, 180)
	TNT1 AAA 0 A_CustomMissile("RedOrbitshard", 0, 0, 270)
	ORBR HIJKL 3 Bright
   Stop
  }
}

ACTOR SuperRedOrbitBulletTail
{
  Radius 4
  Height 8
  Speed 0
  +CLIENTSIDEONLY
  +NOGRAVITY
  +RANDOMIZE
  +NOINTERACTION
  Alpha 0.5
  States
  {
  Spawn:
	TNT1 A 1
  SpawnLoop:
	ORBB ABCD 2 Bright
  Stop
  }
}

ACTOR RedOrbitshard : RedOrbitBullet
{
  Speed 15
  FastSpeed 30
  SeeSound "Crusaderqueen/atom"
}

actor Knifedollgib
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        KDOL NOPQRST 3
	Death:
		KDOL U -1
		Stop

    }
}

actor Rrock01 
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK ABCDA 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK B 200
		RKKK B 5 A_FadeOut (0.25)
  		RKKK B 5 A_FadeOut (0.25)
		RKKK B 5 A_FadeOut (0.25)
		RKKK B 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK B 2
		RKKK C 200
		RKKK C 5 A_FadeOut (0.25)
  		RKKK C 5 A_FadeOut (0.25)
		RKKK C 5 A_FadeOut (0.25)
		RKKK C 5 A_FadeOut (0.25)
		Stop
    }
}

actor Rrock02
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK EFGHE 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK F 150
		RKKK F 5 A_FadeOut (0.25)
  		RKKK F 5 A_FadeOut (0.25)
		RKKK F 5 A_FadeOut (0.25)
		RKKK F 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK F 2
		RKKK G 150
		RKKK G 5 A_FadeOut (0.25)
  		RKKK G 5 A_FadeOut (0.25)
		RKKK G 5 A_FadeOut (0.25)
		RKKK G 5 A_FadeOut (0.25)
		Stop
    }
}

actor Rrock03
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 8
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK IJKLI 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK J 250
		RKKK J 5 A_FadeOut (0.25)
  		RKKK J 5 A_FadeOut (0.25)
		RKKK J 5 A_FadeOut (0.25)
		RKKK J 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK J 2
		RKKK K 250
		RKKK K 5 A_FadeOut (0.25)
  		RKKK K 5 A_FadeOut (0.25)
		RKKK K 5 A_FadeOut (0.25)
		RKKK K 5 A_FadeOut (0.25)
		Stop
    }
}

actor Rrock04
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 4
    Bouncefactor 0.45
	Speed 40
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK MNOPM 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK N 200
		RKKK N 5 A_FadeOut (0.25)
  		RKKK N 5 A_FadeOut (0.25)
		RKKK N 5 A_FadeOut (0.25)
		RKKK N 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK N 2
		RKKK O 200
		RKKK O 5 A_FadeOut (0.25)
  		RKKK O 5 A_FadeOut (0.25)
		RKKK O 5 A_FadeOut (0.25)
		RKKK O 5 A_FadeOut (0.25)
		Stop
    }
}

actor Rrock05
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 4
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK QRSTQ 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK R 250
		RKKK R 5 A_FadeOut (0.25)
  		RKKK R 5 A_FadeOut (0.25)
		RKKK R 5 A_FadeOut (0.25)
		RKKK R 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK R 2
		RKKK S 250
		RKKK S 5 A_FadeOut (0.25)
  		RKKK S 5 A_FadeOut (0.25)
		RKKK S 5 A_FadeOut (0.25)
		RKKK S 5 A_FadeOut (0.25)
		Stop
    }
}

actor Rrock06
{
	+NOTIMEFREEZE
	+CANNOTPUSH
	+MOVEWITHSECTOR
	+DONTSPLASH
	+NOBLOCKMAP
	+DOOMBOUNCE
	+THRUACTORS
	+DONTBLAST
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+BOUNCEONACTORS
	+RANDOMIZE
	+CLIENTSIDEONLY 
	-NOGRAVITY
	+MISSILE
	Scale 1
	Gravity 1.2 
	Bouncecount 2
    Bouncefactor 0.45
	Speed 5
    States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK UVWXU 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK V 300
		RKKK V 5 A_FadeOut (0.25)
  		RKKK V 5 A_FadeOut (0.25)
		RKKK V 5 A_FadeOut (0.25)
		RKKK V 5 A_FadeOut (0.25)
		Stop
	Death2:
		RKKK V 2
		RKKK W 300
		RKKK W 5 A_FadeOut (0.25)
  		RKKK W 5 A_FadeOut (0.25)
		RKKK W 5 A_FadeOut (0.25)
		RKKK W 5 A_FadeOut (0.25)
		Stop
    }
}

ACTOR ExtraIce
{
  Health 100
  Radius 16
  Height 56
  ProjectilePassHeight -1
  +NOICEDeath
  +FULLVOLACTIVE
  +NOBLOOD
  States
  {
  Spawn:
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_FreezeDeathChunks
	TNT1 A 0 A_IceGuyDie
	Stop
  }
}

Actor AviaryIceSpawner
{
	+CLIENTSIDEONLY
	+NOGRAVITY
	+NOEXTREMEDeath
	States
	{
	Spawn:
		TNT1 A 1
		TNT1 A 0 A_PlaySound("angel/shatter",0)
		TNT1 AAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce01",0,0,20,random(3,20),0,random(0,20),random(0,359))
		TNT1 AAAAAAA 0 A_SpawnItemEx("AviaryIce02",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAA 0 A_SpawnItemEx("AviaryIce03",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce04",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce05",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAA 0 A_SpawnItemEx("AviaryIce06",0,0,20,random(3,20),0,random(0,7),random(0,359))
		Stop
	}
}

Actor AviaryIceSpawner2 //Medium sized enemies
{
	+CLIENTSIDEONLY
	+NOGRAVITY
	+NOEXTREMEDeath
	States
	{
	Spawn:
		TNT1 A 1
		TNT1 A 0 A_PlaySound("angel/mediumshatter",0)
		TNT1 AAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce01",0,0,20,random(3,20),0,random(0,20),random(0,359))
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce02",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAA 0 A_SpawnItemEx("AviaryIce03",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce04",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce05",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAA 0 A_SpawnItemEx("AviaryIce06",0,0,20,random(3,20),0,random(0,7),random(0,359))
		Stop
	}
}

Actor AviaryIceSpawner3 //Big enemies
{
	+CLIENTSIDEONLY
	+NOGRAVITY
	+NOEXTREMEDeath
	States
	{
	Spawn:
		TNT1 A 1
		TNT1 A 0 A_PlaySound("angel/heavyshatter",0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce01",0,0,20,random(3,20),0,random(0,20),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce02",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce03",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce04",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce05",0,0,20,random(3,20),0,random(0,7),random(0,359))
		TNT1 AAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("AviaryIce06",0,0,20,random(3,20),0,random(0,7),random(0,359))
		Stop
	}
}

Actor AviaryIce01 : Rrock01
{
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
    {
	Spawn:
		TNT1 A 0
	Flying:
        RKKK ABCDA 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK B 100
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.9)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
  		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
  		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK B 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		Stop
	Death2:
		RKKK C 100
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.9)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
  		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
  		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK C 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		Stop
    }
}

Actor AviaryIce02 : Rrock02
{
	Scale 0.5
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
    {
	Death:
		RKKK F 100
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.45)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
  		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
  		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.15)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.10)
		RKKK F 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		Stop
	Death:
		RKKK G 100
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.45)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
  		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
  		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.15)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.10)
		RKKK G 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		Stop	
	}
}

Actor AviaryIce03 : Rrock03
{
	Scale 0.5
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
    {
	Death:
		RKKK J 250
		TNT1 A 0 A_SetScale(0.45)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
  		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK J 10 A_FadeOut (0.2)
		TNT1 A 0 A_SetScale(0.15)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		RKKK J 10 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		Stop
	Death2:
		RKKK J 2
		RKKK K 250
		TNT1 A 0 A_SetScale(0.45)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
  		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.15)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		RKKK K 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		RKKK K 5 A_FadeOut (0.1)
		Stop
    }
}

Actor AviaryIce04 : Rrock04
{
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
    {
	Death:
		RKKK N 200
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.9)
  		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK N 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		RKKK N 5 A_FadeOut (0.1)
		Stop
	Death2:
		RKKK N 2
		RKKK O 200
		TNT1 A 0 A_SetScale(0.9)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK O 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		Stop
    }
}

Actor AviaryIce05 : Rrock05
{
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
    {
	Death:
		RKKK R 250
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.9)
  		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK R 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		Stop
	Death2:
		RKKK R 2
		RKKK S 250
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.9)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.8)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.7)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.6)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.5)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK S 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		Stop
    }
}

Actor AviaryIce06 : Rrock06
{
	Scale 0.5
	Translation "0:255=%[0.07,0.35,0.87]:[1.01,2.00,2.00]"
	States
	{
	Spawn:
		TNT1 A 0
	Flying:
        RKKK UVWXU 2
		TNT1 A 0 A_Jump(128, "Death2")
		loop
	Death:
		RKKK V 300
		TNT1 A 0 A_SetScale(0.45)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
  		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.15)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		RKKK V 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		RKKK V 5 A_FadeOut (0.1)
		Stop
	Death2:
		RKKK V 2
		RKKK W 300
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.45)
  		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.4)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.35)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.3)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.25)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.2)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.15)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.1)
		RKKK W 5 A_FadeOut (0.1)
		TNT1 A 0 A_SetScale(0.05)
		Stop
    }
}


ACTOR WhiteFeather
{
  Radius 1
  Height 2
  Scale 0.7
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FW ABCDEF 3 ThrustThingZ(0,10,0,0)
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW G 2
	83FW H 3
	83FW I 2
	83FW J 3
	83FW KLMN 6
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FW O 100 
    Stop
	TNT1 A 0
	83FW O -1
	Stop
    83FW L 105 
    Stop
	TNT1 A 0
	83FW L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR RedFeather
{
  Radius 1
  Height 2
  Scale 0.9
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FR ABCDEF 5 ThrustThingZ(0,10,0,0)
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR G 2
	83FR H 3
	83FR I 2
	83FR J 3
	83FR KLMN 8
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FR O 100 
    Stop
	TNT1 A 0
	83FR O -1
	Stop
    83FR L 105 
    Stop
	TNT1 A 0
	83FR L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR BlueFeather
{
  Radius 1
  Height 2
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FJ ABCDEF 3 ThrustThingZ(0,12,0,0)
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ G 2
	83FJ H 3
	83FJ I 2
	83FJ J 3
	83FJ KLMN 3
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FJ O 100 
    Stop
	TNT1 A 0
	83FJ O -1
	Stop
    83FJ L 105 
    Stop
	TNT1 A 0
	83FJ L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR YellowFeather
{
  Radius 1
  Height 2
  Scale 0.8
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FO ABCDEF 3 ThrustThingZ(0,20,0,0)
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO G 2
	83FO H 3
	83FO I 2
	83FO J 3
	83FO KLMN 10
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FO O 100 
    Stop
	TNT1 A 0
	83FO O -1
	Stop
    83FO L 105 
    Stop
	TNT1 A 0
	83FO L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR GreenFeather
{
  Radius 1
  Height 2
  Scale 0.8
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FG ABCDEF 3 ThrustThingZ(0,10,0,0)
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG G 2
	83FG H 3
	83FG I 2
	83FG J 3
	83FG KLMN 6
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FG O 100 
    Stop
	TNT1 A 0
	83FG O -1
	Stop
    83FG L 105 
    Stop
	TNT1 A 0
	83FG L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR BlackFeather
{
  Radius 1
  Height 2
  Scale 0.9
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.125
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FN ABCDEF 3 ThrustThingZ(0,10,0,0)
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN G 2
	83FN H 3
	83FN I 2
	83FN J 3
	83FN KLMN 6
	GoTo Death	
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FN O 100 
    Stop
	TNT1 A 0
	83FN O -1
	Stop
    83FN L 105 
    Stop
	TNT1 A 0
	83FN L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR BrownFeather
{
  Radius 1
  Height 2
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +DONTSPLASH
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Gravity 0.2
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FB ABCDEF 3 ThrustThingZ(0,10,0,0)
	83FB G 2
	83FB H 3
	83FB I 2
	83FB J 3
	83FB G 2
	83FB H 3
	83FB I 2
	83FB J 3
	83FB G 2
	83FB H 3
	83FB I 2
	83FB J 3
	83FB G 2
	83FB H 3
	83FB I 2
	83FB J 3
	83FB G 2
	83FB H 3
	83FB I 2
	83FB J 3
	83FB KLMN 3
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FB O 100 
    Stop
	TNT1 A 0
	83FB O -1
	Stop
    83FB L 105 
    Stop
	TNT1 A 0
	83FB L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

ACTOR PrincipalityFeather
{
  Radius 1
  Height 2
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +CANNOTPUSH
  +WINDTHRUST
  +BOUNCEONWALLS
  +BOUNCEONCEILINGS
  Scale 1.2
  Gravity 0.2
  Speed 3
  States
  {
  Spawn:
	TNT1 A 0 
	TNT1 A 0 A_Jump (128,2)
	TNT1 A 0 
    83FP ABCDEF 3 ThrustThingZ(0,5,0,0)
	83FP G 2
	83FP H 3
	83FP I 2
	83FP J 3
	83FP G 2
	83FP H 3
	83FP I 2
	83FP J 3
	83FP G 2
	83FP H 3
	83FP I 2
	83FP J 3
	83FP G 2
	83FP H 3
	83FP I 2
	83FP J 3
	83FP G 2
	83FP H 3
	83FP I 2
	83FP J 3
	83FP KLMN 3
	GoTo Death
  Death:
	TNT1 A 0 A_Jump (96,5)
    83FP O 100 
    Stop
	TNT1 A 0
	83FP O -1
	Stop
    83FP L 105 
    Stop
	TNT1 A 0
	83FP L -1
	Stop
  NoSpawn:
	TNT1 A 0
	Stop
  }
}

/////////////////Items//////////

Actor AngelHealthSpawner // Spawner prevents glitch when disabling drops.
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
  +SpawnFLOAT
  -COUNTITEM
  States
  {
  Spawn:
  	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 A_DropItem("AngelicHealthBonus")
	Stop
	VanillaDrop:
	TNT1 A 0
	TNT1 A 0 A_Dropitem("HealthBonus")
	Stop
	NoDrop:
	TNT1 A 0
	Stop
	}
}

ACTOR AngelicHealthBonus : Healthbonus
{
  Radius 60
  -COUNTITEM
  Inventory.MaxAmount 250
  Inventory.PickupMessage "Picked up a life shard (Max health 250)"
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
	TNT1 A 0
    76HT A 8 Bright
	76HT B 6 Bright
	76HT C 8 Bright
	76HT B 6 Bright 
	76HT A 6 Bright
	76HT D 4 Bright
	76HT E 6 Bright
	76HT D 4 Bright 
	76HT A 8 Bright
	76HT B 6 Bright
	76HT C 8 Bright
	76HT B 6 Bright 
	76HT A 6 Bright
	76HT D 4 Bright
	76HT E 6 Bright
	76HT D 4 Bright 
	TNT1 A 0 A_jump (12, "Fadeout")
	Loop
	Fadeout:
	TNT1 A 0 A_FadeOut (0.25)
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	TNT1 A 0 A_FadeOut (0.25)
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	TNT1 A 0 A_FadeOut (0.25)
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	76HT A 3
	76HT B 3 Bright
	76HT C 3
	76HT B 3 Bright
	76HT A 3
	76HT D 3 Bright
	76HT E 3 
	76HT D 3 Bright
	Stop
  }
}

Actor AngelArmorSpawner // Spawner prevents glitch when disabling drops.
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
  +SpawnFLOAT
  -COUNTITEM
  States
  {
  Spawn:
  	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 A_DropItem("AngelicArmorBonus")
	Stop
	VanillaDrop:
	TNT1 A 0
	TNT1 A 0 A_Dropitem("ArmorBonus")
	Stop
	NoDrop:
	TNT1 A 0
	Stop
	}
}

ACTOR AngelicArmorBonus : Armorbonus
{
  Radius 60
  -COUNTITEM
  Inventory.MaxAmount 200
  Inventory.PickupMessage "Picked up an armor shard"
  Inventory.Pickupsound "armorshardd/pickup"
  States
  {
  Spawn:
	TNT1 A 0
    76AR A 8 Bright
	76AR B 6 Bright
	76AR C 8 Bright
	76AR B 6 Bright 
	76AR A 6 Bright
	76AR D 4 Bright
	76AR E 6 Bright
	76AR D 4 Bright 
	76AR A 8 Bright
	76AR B 6 Bright
	76AR C 8 Bright
	76AR B 6 Bright 
	76AR A 6 Bright
	76AR D 4 Bright
	76AR E 6 Bright
	76AR D 4 Bright 
	TNT1 A 0 A_jump (18, "Fadeout")
	Loop
	Fadeout:
	TNT1 A 0 A_FadeOut (0.25)
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	TNT1 A 0 A_FadeOut (0.25)
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	TNT1 A 0 A_FadeOut (0.25)
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	76AR A 3
	76AR B 3 Bright
	76AR C 3
	76AR B 3 Bright
	76AR A 3
	76AR D 3 Bright
	76AR E 3 
	76AR D 3 Bright
	Stop
  }
}

ACTOR RarecandySpawner1 : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "AngelicCandy" 255, 1
}

ACTOR RarecandySpawner2 : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "AngelicButterscotch" 255, 1
}


ACTOR AngelicCandy : Healthbonus
{
  -COUNTITEM
  Inventory.MaxAmount 250
  Inventory.PickupMessage "You stole some candy from a dead Cherub. What the hell is wrong with you!"
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
    C9DY A 4 Bright
	C9DY A 4 Bright
	Loop
  }
}

ACTOR AngelicButterscotch : Healthbonus
{
  -COUNTITEM
  Inventory.MaxAmount 250
  Inventory.PickupMessage "You ate an angelic butterscotch candy. Your teeth begin to rot."
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
    C8DY A 4 Bright
	C8DY A 4 Bright
	Loop
  }
}

ACTOR EyeCandy : Healthbonus
{
  -COUNTITEM
  Inventory.MaxAmount 250
  Inventory.PickupMessage "Did you enjoy the eye candy?"
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
    IC0Y A 4 Bright
	IC0Y A 4 Bright
	Loop
  }
}

ACTOR RoastCardinal : Healthbonus
{
  -COUNTITEM
  Inventory.MaxAmount 200
  Inventory.PickupMessage "Roast Cardinal. It tastes like a chicken dunked in sugar."
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
    CA2D Z 4 Bright
	Loop
  }
}


ACTOR DoomguyDoll : Healthbonus
{
  Radius 20
  Height 14
  ProjectilePassHeight -16
  -COUNTITEM
  Inventory.PickupMessage "A Doomguy collectable doll. Is this the fate of marines killed by this angel?"
  Inventory.pickupsound "lifeshardd/pickup"
  States
  {
  Spawn:
    DDOL A -1
	Stop
  }
}

ACTOR CrusaderQueenLance
{
  Radius 20
  Height 14
  ProjectilePassHeight -16
  States
  {
  Spawn:
    CQL8 A -1
    Stop
  }
}

ACTOR CrownOfMoon : PowerupGiver
{
  Radius 20
  Height 14
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  +INVENTORY.FANCYPICKUPSOUND
  Inventory.MaxAmount 0
  ProjectilePassHeight -16
  Powerup.Type "PowerUpDodger"
  -COUNTITEM
  Inventory.PickupMessage "Crown of the Moon. Disables seeker missiles for 240 seconds, + 7 to all attributes"
  States
  {
  Spawn:
    KCWN A 20
	KCWN BCDEFGHIJKLMNOPQRST 1
	KCWN U 1 Bright
	KCWN VW 1
	Loop
  }
}

ACTOR PowerUpDodger : PowerInvisibility
{
  Powerup.Duration -240
  Powerup.Color "16 0 16" 
  Powerup.Mode "Opaque"
  +CANTSEEK 
  -SHADOW
}



ACTOR EviternityCrownOfMoon : PowerupGiver
{
  Radius 20
  Height 14
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  +INVENTORY.FANCYPICKUPSOUND
  Inventory.MaxAmount 0
  ProjectilePassHeight -16
  Powerup.Type "PowerUpDodger2"
  -COUNTITEM
  Inventory.PickupMessage "Princess Crown. Disables seeker missiles for 30 seconds. Wear this to survive the final encounter"
  States
  {
  Spawn:
    KCWN A 20
	KCWN BCDEFGHIJKLMNOPQRST 1
	KCWN U 1 Bright
	KCWN VW 1
	Loop
  }
}

ACTOR PowerUpDodger2 : PowerInvisibility
{
  Powerup.Duration -30
  Powerup.Color "16 0 16" 
  Powerup.Mode "Opaque"
  +CANTSEEK 
  -SHADOW
}


// Code from Malfactors by Combine Kegan. Combined arms v2.0 easter egg

ACTOR CALinkedKillAngel
{
	Projectile
	+Nointeraction
	Speed 10
	+BRIGHT
	+CLIENTSIDEONLY
	Alpha 0.85
	Scale 3
	States
	{
	Spawn:	
		DTHZ A 3
		DTHZ B 3
		DTHZ A 3
		Stop
	}
}

/// Showtime!!! easter eggs


ACTOR CherubDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 40
	DropItem "CherubDress" 255, 1
}

ACTOR SnowballDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "SnowballDress" 255, 1
}

ACTOR KissDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "KissDress" 255, 1
}

ACTOR AphroditeKissDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 1
	DropItem "AphroditeKissCheck" 255, 2
}

ACTOR IrisDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "IrisDress" 255, 1
}

ACTOR AuthorityDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "AuthorityDress" 255, 1
}

ACTOR PrincipalityDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "PrincipalityDress" 255, 1
}

ACTOR VirginDressSpawner : RandomSpawner
{
  +NOBLOCKMAP
  +NOSECTOR
  +NOGRAVITY
  +THRUACTORS
	DropItem "AngelHealthSpawner" 255, 4
	DropItem "VirginDress" 255, 1
}

/// Elemental Testing bullets ///


ACTOR InstaStone
{
  Radius 6
  Height 8
  Speed 25
  FastSpeed 35
  Damage (1000)
  DamageType "PlayerVoid"
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  RenderStyle Add
  Alpha 1
  Scale 0.75
  SeeSound "kiss/attack"
  DeathSound "stonemaiden/hit1"
  
  States
  {
  Spawn:
    YINK AA 4 Bright
	YINK A 4 Bright
    Loop
  Death:
    YINK BCDEFGHIJKLMNOPQ 1 Bright
	YINK RSTU 2 Bright
   Stop
  }
}

ACTOR InstaFreeze : Flake
{
  Damage (1000)
  Speed 45
  Scale 1.7
  SeeSound "snow/attack2"			
  DeathSound "snow/shot2"
  +BOUNCEONWALLS
  BounceType Doom
  Bouncecount 5
  }
  
ACTOR InstaBurn : Tinyyfireball
{
  Damage (1000)
  Speed 45
  }
