actor Colourset11 : RandomSpawner replaces "Archvile"
{
    DropItem "CommonArch", 255, 420
    DropItem "GreenArch", 255, 270
	DropItem "CyanArch", 255,  100
	DropItem "BrownArch", 255,  70
    DropItem "BlueArch", 255,  130
    DropItem "PurpleArch", 255, 70
	DropItem "YellowArch", 255, 30
	DropItem "GrayArch", 255, 30
	DropItem "AbyssArch",255, 20
	DropItem "FireBluArch", 255, 30
	DropItem "RedArch", 255, 10
	DropItem "BlackArch", 255, 5
	DropItem "WhiteArch", 255,  1	
}


Actor BrownArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("CH_Brown") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Brown") == 3, "fifty") 
TNT1 A 0
Goto Third

fifty:
TNT1 A 0
TNT1 A 0 a_jump(128,"third")
TNT1 A 0

First:
TNT1 A 0 A_SpawnitemEx("Colourset11",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("BrownVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)



stop
}
}


Actor BrownVile 
{ 
  Game Doom
  Health 1400
  Species "vile1"
  BloodColor "red"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
 
  Radius 20
  Height 56
  Mass 500
  Speed  21
  floatspeed 20
  PainChance 12 
  Monster
  +NoGravity
  +Float
  +nopain
  +floatbob
  +noicedeath
  +nodamagethrust
  Obituary "%o Got rock and rolled by brown archvile"
  SeeSound "monster/wiksit" 
  PainSound "MUFFLE01" 
  DeathSound "MUFFLE02" 
  ActiveSound "monster/wikact" 
  DropItem "BackPack"
   DropItem "BackPack", 128
    DropItem "CH_Bluearmor", 64
	DropItem "ArmorBundle"
  tag "That's a messy vile"
  States 
  { 
  Spawn: 
  TNT1 A 0
  TNT1 A 0
  Goto scripted
  Scripted:
  TNT1 A 0
 
  TNT1 AAAA 12 A_SpawnItemEX("BrownVileRock",0,0,0,0,0,0,0,SXF_SETMASTER)
  TNT1 AAAA 9 A_SpawnItemEX("BrownVileRock2",0,0,0,0,0,0,0,SXF_SETMASTER)
   TNT1 A 0 a_changeflag("NOPAIN",FALSE)
  TNT1 A 0
  Goto Idle
  Idle:
    WICK ABCD 8 A_Look 
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  See:
  
      TNT1 A 0
    TNT1 A 0 //A_setspeed(19)
    WICK AABB 3 A_Chase
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	
	WICK CCDD 3 A_Chase
	TNT1 AA 0  A_SpawnItemEX("BrownVileRock3",0,0,0,0,0,0,0,SXF_SETMASTER,128)
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK A 0 A_Jump(32,"See2")
    Goto See

  See2:
    TNT1 A 0
    TNT1 A 0 //A_setspeed(25)
    WICK EEFF 2 A_Chase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	WICK GGHH 2 A_Chase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	TNT1 AA 0  A_SpawnItemEX("BrownVileRock3",0,0,0,0,0,0,0,SXF_SETMASTER,128)
    WICK E 0 A_Jump(32,"See")
    Goto See2
  Missile:
    WICK I 1
	WICK I 1 A_jump(64,"CheckThem")
	WICK I 1 A_jump(128,"HereComesThatBoi")
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK I 1  A_PlaySound("CASTBROW",7)
    WICK I 4 A_FaceTarget
    WICK J 5 BRIGHT A_FaceTarget  
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK K 6 BRIGHT A_VileTarget("VileGroundSpikeBrown") 
    WICK L 4 
    Goto See       
	
	HereComesThatBoi:
	 WICK I 1  A_PlaySound("ATKBROWV",0)
	 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK I 3 A_FaceTarget
    WICK J 4 BRIGHT A_FaceTarget 
	WICK K 9 BRIGHT A_SpawnitemEx("BrownBoiVile",32,76,32,0,0,0,0,SXF_NOCHECKPOSITION)
	WICK K 9 BRIGHT A_SpawnitemEx("BrownBoiVile",32,32,46,0,0,0,0,SXF_NOCHECKPOSITION)
	WICK K 9 BRIGHT A_SpawnitemEx("BrownBoiVile",32,0,64,0,0,0,0,SXF_NOCHECKPOSITION)
	WICK K 9 BRIGHT A_SpawnitemEx("BrownBoiVile",32,-32,46,0,0,0,0,SXF_NOCHECKPOSITION)
	WICK K 9 BRIGHT A_SpawnitemEx("BrownBoiVile",32,-76,32,0,0,0,0,SXF_NOCHECKPOSITION)
	WICK L 4 
    Goto See 
	CheckThem:
	 TNT1 A 0
		TNT1 A 0 A_Jump(64,"Healno")
  	WICK I 0 A_jump(128,"CheckThem2")
		TNT1 A 0 A_Jump(64,"Feelit")
    
  CheckThem2:
	 TNT1 A 0
  
    Goto Missile+3

	FeelIt:
	 WICK I 8 bright
	 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 WICK I 8 bright
	 WICK J 3 A_Radiusgive("ShieldUpVile",420,RGF_MONSTERS,1)
	 WICK JJJJ 1 A_spawnitemex("MediCacoBrown",random(-64,64),random(-64,64),random(-16,64),random(1,9),0,random(-5,5),random(0,359),SXF_NOCHECKPOSITION)
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	WICK K 3 A_radiusgive("health",1200,RGF_MONSTERS,500)
     WICK KKKKK 1 A_spawnitemex("MediCacoBrown",random(-64,64),random(-64,64),random(-16,64),random(1,9),0,random(-5,5),random(0,359),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 WICK K 2
     WICK L 5 
	Goto See
	
	
	
	
	  HealNo:
    DIA2 A 0
    DIA2 A 0  A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)


  WICK I 4 bright 
WICK I 1  A_SpawnItemEx("Drt2", 0 ,164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt3", -164,0 , -16, random(1,5), 0, random(1,5), Random(0, 360))
	WICK I 1  A_SpawnItemEx("Drt1", 0 , -164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt2", -164 ,164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt3", -164,-164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
	WICK I 1  A_SpawnItemEx("Drt1", 164 , 0 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt2", 0 ,164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt3", 164,0 , -16, random(1,5), 0, random(1,5), Random(0, 360))
	WICK I 1  A_SpawnItemEx("Drt1", 164 , 0 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt2", 164 ,164 , -16, random(1,5), 0, random(1,5), Random(0, 360))
WICK I 1  A_SpawnItemEx("Drt3", 164, 0 , -16, random(1,5), 0, random(1,5), Random(0, 360))
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

WICK IIII 1 bright A_SpawnitemEx("ArchRingHelp",random(-64,64),random(-64,64),3,0,0,0,0)
WICK IIII 1 bright A_SpawnitemEx("ArchRingHelp",random(-128,128),random(-128,128),3,0,0,0,0)
WICK IIIIII 1 bright A_SpawnitemEx("ArchRingHelp",random(-252,252),random(-252,252),3,0,0,0,0)
WICK IIIIIIIII 1 bright A_SpawnitemEx("ArchRingHelp",random(-352,352),random(-352,352),3,0,0,0,0)
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK J 5 BRIGHT 
    WICK K 8 BRIGHT
    WICK L 5 BRIGHT
		WICK I 1  A_SpawnItemEx("Drt1", 164 , 0 , -16, random(1,5), 0, random(1,5), Random(0, 360))

	Goto FeelIt
	
	
  Pain: 
    WICK M 3 
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    WICK M 3 A_Pain 
    WICK M 3 
    Goto See 
  Death: 
    WICK N 5 A_Scream
    WICK O 5 a_changeflag("FLOATBOB",FALSE)
	WICK P 5 a_killchildren(extreme)
    WICK P 0 A_SpawnItemEX("WickedTorso",0,0,48,0,0,0,0,16)
    WICT A 5 A_NoBlocking
    WICT BCDEF 5 
    WICT G -1 A_SetFloorClip 
    Stop 
  } 
}


ACTOR VileGroundSpikeBrown
{
  Game Doom
  speed 1
  Damage (random(1,10))
  Damagetype melee
  Projectile
  +floorhugger
  +thruactors
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
  
   TNT1 A 0
    TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 0 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", -32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,-32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32, 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))

    TNT1 AAAAA 2  A_SpawnItemEx("VileGroundSpikeBrown2",random(-128,128),random(-128,128),1,0,0,0,0)

   TNT1 A 0
    TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 0 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", -32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,-32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32, 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
TNT1 A 10
   SSPK D 8
   TNT1 A 0 A_playsound("ROCKHIT1",0)
   SSPK A 3 A_setscale(1.0,0.3)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,0.6)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,1.0)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 8 a_changeflag("thruactors",FALSE)
Goto death

	death:
	 SSPK A 8 a_setsolid
	 SSPK A 16
	 SSPK AAA 8 A_fadeout(0.33)
Stop
  }
}



ACTOR VileGroundSpikeBrown2
{
  Game Doom
  speed 1
  Damage (random(1,10))
  Damagetype melee
  Projectile
  +floorhugger
  +thruactors
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
  
   TNT1 A 0
    TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 0 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", -32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,-32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32, 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
TNT1 A 10
   TNT1 A 0
    TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 0 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", -32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", -32,-32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 0 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32,0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
	 TNT1 A 1  A_SpawnItemEx("Drt1", 32 , -32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt2", 32 ,32 , 1, random(1,5), 0, random(1,5), Random(0, 360))
 TNT1 A 1  A_SpawnItemEx("Drt3", 32, 0 , 1, random(1,5), 0, random(1,5), Random(0, 360))
TNT1 A 10
   SSPK D 8
   TNT1 A 0 A_playsound("ROCKHIT1",0)
   SSPK A 3 A_setscale(1.0,0.3)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,0.6)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,1.0)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 8 a_changeflag("thruactors",FALSE)
Goto death

	death:
	 SSPK A 8 a_setsolid
	 SSPK A 16
	 SSPK AAA 8 A_fadeout(0.33)
Stop
  }
}


ACTOR BrownBoiVile
{
  Game Doom
  Radius 12
  Height 12
  Speed 25
  mass 200
  health 50
  Damage (random(10,55))
  DamageType "Melee"
    MONSTER
  +FLOAT
  +FLOATBOB
  +NOTARGETSWITCH
  +NOGRAVITY
  +LOOKALLAROUND
  +missilemore
  +missileevenmore
  +nopain
  +NOBLOOD
  +BOUNCEONWALLS
  +bounceonfloors
  +bounceonceilings
  +bounceonactors
  +usebouncestate
  +thruspecies
  -countkill
  Species "vile1"
  bouncecount 1
  bouncefactor 0.05
  wallbouncefactor 0.05
  xScale 1.6
  yscale 1.6
  SeeSound "spit/spit"
  DeathSound "weapons/rocklx"
  Translation "0:255=%[0.19,0.14,0.09]:[1.35,1.17,1.12]"
   Obituary "%o Got rock and rolled by brown archvile"
  States
  {
  Spawn:
    GBLL A 3 Bright 
    Goto see
	See:
	TNT1 A 0
	TNT1 A 0 A_CheckFloor ("Death")
	TNT1 A 0 A_checkflag("missile","death",AAPTR_DEFAULT)
	TNT1 A 0 A_jumpif(scalex == 0.5,"death")
	GBLL A 6 bright a_chase 
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
 	GBLL B 6 bright a_chase 
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
 	GBLL C 6 bright a_chase 
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
    Goto see
	Missile:
	GBLL A 6 bright a_facetarget
	TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
 	GBLL B 6 bright a_facetarget
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
	TNT1 A 0 A_playsound("VILEBOI1",0)
	TNT1 A 0 A_changeflag("ismonster",false)
	TNT1 A 0 A_changeflag("missile",true)
 	GBLL C 30 bright a_skullattack(45)
	GBLL ABC 6 bright 
	TNT1 A 0 A_CheckFloor ("Death")
		GBLL A 6 bright a_facetarget
	TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
 	GBLL B 6 bright a_facetarget
	TNT1 A 0 A_CheckFloor ("Death")
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
	TNT1 A 0 A_playsound("VILEBOI1",0)
 	GBLL C 30 bright a_skullattack(45)
	TNT1 A 0 A_CheckFloor ("Death")
		GBLL A 6 bright a_facetarget
	TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
 	GBLL B 6 bright a_facetarget
    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
	TNT1 A 0 A_playsound("VILEBOI1",0)
	TNT1 A 0 A_CheckFloor ("Death")
 	GBLL C 30 bright a_skullattack(45)
	    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
		TNT1 A 0 A_playsound("VILEBOI1",0)
TNT1 A 0 A_CheckFloor ("Death")
	GBLL C 60 bright 
	TNT1 A 0 A_CheckFloor ("Death")
	    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
	TNT1 A 0 A_playsound("VILEBOI1",0)
	GBLL C 30 bright a_skullattack(45)
	TNT1 A 0 A_CheckFloor ("Death")
	    TNT1 A 0 Bright A_SpawnitemEx("trail12",0,0,5,0,0,0,0,SXF_TRANSFERTRANSLATION)
	TNT1 A 0 A_playsound("VILEBOI1",0)

	GBLL C 60 bright
	TNT1 A 0 A_CheckFloor ("Death")
	Goto death
	bounce:
	bounce.floor:
	bounce.actor:
	bounce.wall:
	TNT1 A 0
	TNT1 A 0
	Goto death
  xdeath:	
  Death:
    MISL B 0 bright A_SetScale(0.5,0.5)
	MISL B 0 bright thrustthingz(0,12,0,0)
	TNT1 A 0 A_scream
    MISL BC 6 Bright A_explode(random(8,37),64)
	MISL D 5 a_die
   Stop
  }
}




Actor ShieldUpVile : CustomInventory
{

        Radius 20
        Height 16
		     +INVENTORY.AUTOACTIVATE
			 +INVENTORY.ALWAYSPICKUP

states
{
Pickup:
use:
TNT1 A 0
TNT1 A 0 ACS_NamedExecuteAlways("BrownVileCommand")
TNT1 AAAA 0 A_SpawnItemEX("BrownVileRock4",0,0,0,0,0,0,0,SXF_SETMASTER,128)


Stop
}
}




ACTOR BrownVileGas
{
  Game Doom
  Radius 8
  Height 8
  Speed 0
  FastSpeed 0
  Projectile
  +noclip
+floatbob
  Scale 0.5
  Translation "0:255=%[0.18,0.13,0.13]:[1.73,1.51,1.30]"
  States
  {
  Spawn:
  TNT1 A 0
  TNT1 A 0
  Fly:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"A1","A2","A3","A4")
  A1:
   TNT1 A 0
    PSBG CDEFGHI 3 Bright
    Goto Death
	  A2:
	  TNT1 A 0
	  TNT1 A 0 A_setscale(0.7,0.25)
    PSBG CDEFGHI 3 Bright
    Goto Death
	  A3:
	    TNT1 A 0
	  TNT1 A 0 A_setscale(0.3,0.6)
    PSBG CDEFGHI 3 Bright
    Goto Death
	  A4:
	   TNT1 A 0
    PSBG IHGFEDCDEFGHI 3 Bright
    Goto Death
	
  Death:
     TNT1 A 0
	 
	  TNT1 A 0
    Stop
  }
}

Actor BrownVileRock
{
  
  Radius 2
  Height 2
  Speed 12
  monster
  +float
  +nogravity
  +noclip
	-countkill
  Scale 0.5
var int user_angle;
var int user_pitch;
  States
  {
  Spawn: 
  JUBD A 0
  Goto Fly
  Fly:
  TNT1 A 0
  	TNT1 A 0  A_SpawnItemEX("BrownVileGas",random(-2,2),random(-2,2),random(-2,2),0,0,0,0,SXF_NOCHECKPOSITION,232)

  TNT1 A 0 A_jump(255,"A1","A2","A3","A4")
  Loop
  A1:
    JUBD A 2 bright // A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 28, 0, 9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 16)
	Goto Fly
	A2:
      JUBD B 2 bright //  A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 28, 0, 9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 16)
 Goto Fly
 A3:
 JUBD C 2 bright //  A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 28, 0, 9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 16)
	 Goto Fly
	 A4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 28, 0, 9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 16)
	  	Goto Fly
   Death: 
	  TNT1 A 0
	        TNT1 AA 0 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	        TNT1 AA 0 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
		TNT1 AA 0 bright A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	Stop
  }
}


Actor BrownVileRock2
{
  
  Radius 2
  Height 2
  Speed 12
  monster
  +float
  +nogravity
  +noclip
	-countkill
  Scale 0.3
var int user_angle;
var int user_pitch;
  States
  {
  Spawn: 
  JUBD A 0
  Goto Fly
  Fly:
  TNT1 A 0
  TNT1 A 0  A_SpawnItemEX("BrownVileGas",random(-2,2),random(-2,2),random(-2,2),0,0,0,0,SXF_NOCHECKPOSITION,232)
  TNT1 A 0 A_jump(255,"A1","A2","A3","A4")
  Loop
  A1:
    JUBD A 2 bright //  A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 21, 0, -3, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	Goto Fly
	A2:
      JUBD B 2 bright //  A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 21, 0, -3, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
 Goto Fly
 A3:
 JUBD C 2 bright //  A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 21, 0, -3, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	 Goto Fly
	 A4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 21, 0, -3, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	  	Goto Fly
  Death: 
	  TNT1 A 0
	        TNT1 AA 0 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	        TNT1 AA 0 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
		TNT1 AA 0 bright A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	Stop
  }
}

Actor BrownVileRock3
{
  
  Radius 2
  Height 2
  Speed 12
   projectile
  +float
  +nogravity
  +noclip
  Scale 0.35
var int user_angle;
var int user_pitch;
  States
  {
  Spawn: 
  JUBD A 0
  Goto Flies
  
  
  Flies:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"Fly","Fly2","Fly3","Fly4")
  
  Fly:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"A1","A2","A3","A4")
  Loop
  A1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	TNT1 A 0 A_jump(16,"Death")
	Goto Fly
	A2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	TNT1 A 0 A_jump(16,"Death")
 Goto Fly
 A3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	TNT1 A  0 A_jump(16,"Death")
	 Goto Fly
	 A4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	TNT1 A 0 A_jump(16,"Death")
	  	Goto Fly
		
		  Fly2:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"B1","B2","B3","B4")
  Loop
  B1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	Goto Fly2
	B2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
 Goto Fly2
 B3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	 Goto Fly2
	 B4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 18, 0, -9, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	  	Goto Fly2
		
		
		
			  Fly3:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"C1","C2","C3","c4")
  Loop
  C1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	Goto Fly3
	C2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
 Goto Fly3
 C3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	 Goto Fly3
	 C4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER,32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	TNT1 A 0 A_jump(16,"Death")
	  	Goto Fly3
		
		
					  Fly4:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"D1","d2","D3","D4")
  Loop
  D1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
	TNT1 A 0 A_jump(16,"Death")
	Goto Fly4
	D2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
	TNT1 A 0 A_jump(16,"Death")
 Goto Fly4
 D3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
	TNT1 A 0 A_jump(16,"Death")
	 Goto Fly4
	 D4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 32, 0, 18, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
	TNT1 A 0 A_jump(16,"Death")
	  	Goto Fly4
		
  Death: 
	  TNT1 A 0
	        TNT1 AA 0 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	        TNT1 AA 0 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
		TNT1 AA 0 bright A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	Stop
  }
}


Actor BrownVileRock4
{
  
  Radius 2
  Height 2
  Speed 12
   projectile
  +float
  +nogravity
  +noclip
  Scale 0.55
var int user_angle;
var int user_pitch;
var int user_timer;
  States
  {
  Spawn: 
  JUBD A 0
  Goto Flies
  
  
  Flies:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"Fly","Fly2","Fly3","Fly4")
  
  Fly:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"A1","A2","A3","A4")
  Loop
  A1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
	 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	Goto Fly
	A2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
 Goto Fly
 A3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	 Goto Fly
	 A4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 24)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	  	Goto Fly
		
		  Fly2:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"B1","B2","B3","B4")
  Loop
  B1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	Goto Fly2
	B2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
 Goto Fly2
 B3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	 Goto Fly2
	 B4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	  	Goto Fly2
		
		
		
			  Fly3:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"C1","C2","C3","c4")
  Loop
  C1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	Goto Fly3
	C2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
	 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
 Goto Fly3
 C3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	 Goto Fly3
	 C4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER,64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle + 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	  	Goto Fly3
		
		
					  Fly4:
  TNT1 A 0
  TNT1 A 0 A_jump(255,"D1","d2","D3","D4")
  Loop
  D1:
    JUBD A 2 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 2, 0, 3, Random(0, 360),0, 128)
	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	Goto Fly4
	D2:
      JUBD B 2 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0, 128)
   	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
 Goto Fly4
 D3:
 JUBD C 2 bright A_SpawnItemEx("Drt3", random(-1,2), random(-2,2), 0, 3, 0, 3, Random(0, 360),0, 128)
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	 Goto Fly4
	 D4:
	 JUBD D 2 bright 
	 	TNT1 A 0 A_Warp(AAPTR_MASTER, 64, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
    TNT1 A 0 A_SetUserVar("user_angle", user_angle - 21)
		 TNT1 A 0 A_SetUserVar("user_Timer", user_Timer + 1)
	 TNT1 A 0 a_Jumpif(user_timer >= 150,"Death")
	  	Goto Fly4
		
  Death: 
	  TNT1 A 0
	        TNT1 AA 0 bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	        TNT1 AA 0 bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
		TNT1 AA 0 bright A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), 0, 1, 0, 3, Random(0, 360),0)
	Stop
  }
}





Actor WickedTorso
{
  Mass 1000000
  Radius 1
  Height 1
  +IsMonster
  +Corpse
  States
  {
  Spawn:
    TNT1 A 0 // Without this, the sound below will never be played
    WICK Q 5 A_PlaySound("monster/tenpn1")
    WICK R 5
    Wait
  Crash:
    WICK S 1 A_SetFloorClip
    WICK S 4 A_PlaySound("monster/tenpn2")
    WICK TUV 5
    WICK W -1
    Stop
  }
}






Actor CyanArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("CH_Cyan") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Cyan") == 3, "fifty") 
TNT1 A 0
Goto Third

fifty:
TNT1 A 0
TNT1 A 0 a_jump(128,"third")
TNT1 A 0

First:
TNT1 A 0 A_SpawnitemEx("Colourset11",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("cyanVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)



stop
}
}


Actor CyanVile

{
  Obituary "%o got cooled off by cyan vile"
  Health 1200
  Radius 20 
  Height 56 
  Mass 500 
  Speed 21
  PainChance 10
  PainThreshold 34
  BloodColor "cyan"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  
    DamageFactor "Ice", 0.10
  DamageFactor Ice, 0.10
  
        DamageFactor "PLWater", 0.25
  PainChance "PLWater", 2
  
  PainChance "ice", 2
  PainChance "Fire", 32
  PainChance "Melee", 102 
  
    DamageFactor "Falling", 0.0
  DamageFactor Falling, 0.0
    DamageFactor "Melee", 2.5
  DamageFactor Melee, 2.5
    DamageFactor "fire", 1.0
  DamageFactor fire, 1.0
  
  
  
  Monster
  +FloorClip
  +NoTarget
  -NoRadiusDmg
  +MissileMore
  +DontHarmSpecies
  +dontharmclass
  +Nofear
  +quicktoretaliate
  +noicedeath
  SeeSound "Monster/diasit" 
  PainSound "Monster/diapai" 
  DeathSound "Monster/diadth" 
  ActiveSound "Monster/diaact" 
  DropItem "ch_SoulSphere", 42
  DropItem "BackPack", 128
	 DropItem "Backpack",128
  DropItem "HealthBundle"
  DropItem "CH_Bluearmor", 64
  tag "Barnie"
  Translation "168:191=%[0.03,0.23,0.43]:[0.89,2.00,2.00]", "32:47=%[0.00,0.00,1.69]:[1.29,2.00,2.00]", "0:2=245:247", "64:79=192:207", "144:151=192:207", "128:143=192:207", "5:8=202:207", "13:15=201:205", "236:239=203:207", "160:167=%[0.00,1.01,1.51]:[1.01,2.00,2.00]", "224:231=%[0.00,1.01,2.00]:[1.61,2.00,2.00]", "232:235=%[0.00,1.01,2.00]:[0.00,2.00,2.00]", "208:223=%[0.00,1.01,2.00]:[1.47,2.00,2.00]", "48:63=%[0.00,1.01,2.00]:[1.01,2.00,2.00]", "248:249=%[0.00,2.00,2.00]:[1.56,2.00,2.00]"


  
  States 
  { 
  Spawn: 
    DIAB AB 10 A_Look 
						 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  See: 
    DIAB AABBCC 2 a_vilechase
							 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	DIAB DDEEFF 2 A_VileChase
							 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		LOHS A 0 A_Jump(128,"Dodger")
	LOHS A 0 A_Jump(32,"DashBack")
    Loop
	
	
	  DashBack:
  TNT1 A 0
   TNT1 A 0 A_JumpIf(CallACS("CH_CyanBounce") == 1, "Dodger")
    	 DIAB G 3 thrustthingz(0,72,0,0)
		 						 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 DIAB G 3 thrustthing(angle-180,18,0,0)
	Goto See
	
	
  Dodger:
    LOHS A 0 


    DIAB AABB 2 A_FastChase
							 		TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LOHS A 0 A_Jump(64,"See")
	
	DIAB CCDD 2 A_FastChase
							 		TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LOHS D 0  
	LOHS A 0 A_Jump(64,"DashBack")
	Goto see
	
  Missile:
    DIAB A 0
							 		TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    DIAB A 0 a_jumpifcloser(900,"Choice")
	TNT1 A 0
	Goto Classical
	Choice:
	TNT1 A 0
	DIAB A 0 A_Jump(256,"Classical","Floor")
	Goto see

  Floor:
    DIAB HH 3 Bright A_FaceTarget
	DIAB I 6 Bright A_Custommissile("IceStartVile4",64,0)
	DIAB PON 7 Bright A_FaceTarget
	DIAB N 0 Bright A_Custommissile("IceToMeetVile1",32,0)
	DIAB N 0 Bright A_Custommissile("IceToMeetVile1",32,0,33)
	DIAB N 0 Bright A_Custommissile("IceToMeetVile1",32,0,-33)
		DIAB N 0 Bright A_Custommissile("IceToMeetVile1",32,0,66)
	DIAB N 0 Bright A_Custommissile("IceToMeetVile1",32,0,-66)
	Goto See
  Classical:
    DIAB G 0 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 bright A_VileTarget("IceStartVile1")
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
	TNT1 A 0 A_checksight("See")
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
	TNT1 A 0 A_checksight("Dodger")
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_VileTarget("IceStartVile2")
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
	TNT1 A 0 A_checksight("See")
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
	TNT1 A 0 A_checksight("Dodger")

    DIAB G 3 Bright A_VileAttack("Ice/hit",random(10,60),random(10,60),64,-5,"ice")
	DIAB H 0 Bright A_VileTarget("IceStartVile3")
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB G 0 Bright     
	Goto See
	
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Pain: 
    DIAB Q 5 
							 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    DIAB Q 5 A_Pain 
	DIAB Q 0 A_jump(128,"DashBack")
    Goto See 
  Heal:
    DIA2 A 0
    DIA2 A 0  A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
    DIA2 A 10 Bright 
	DIAB B 2 Bright 
    DIA2 BB 5 Bright  a_spawnitemex("CyanLSoul2",random(-16,16),random(-16,16),random(12,64),0,0,0,0,SXF_NOCHECKPOSITION)
    DIA2 C 4 Bright 
	DIA2 CC 2
	Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    DIAB Q 7 
    DIAB R 7 A_Scream 
    DIAB S 7 A_NoBlocking
    DIAB TUVW 7 
    DIAB XY 5 
	DIAB Z 10
	TNT1 A 0 A_SpawnItemEx ("CH_Cirno", 0,0,24, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM| SXF_NOCHECKPOSITION,246)
    DIAB Z 1 A_iceguydie 
    Stop    
  } 
}


ACTOR IceToMeetVile1
{
   Radius 2
   Height 2
   Speed 28


   Alpha 0.67
   PROJECTILE
   +thruactors
   +THRUGHOST   
     +dontblast
  +mthruspecies
  -nogravity
  +usebouncestate
  bouncetype "Doom"
  Bouncecount 99
  Bouncefactor 1.0
  WallBounceFactor 1.0
  xScale 0.75
  yscale 0.75
  gravity 5.0
   States
   {
   Spawn:
   TNT1 A 1
   Fly:
      TNT1 AA 2 Bright A_CStaffMissileSlither
      TNT1 A 0 Bright A_SpawnItemex("IceToMeetVile2",0,0,0)
      loop
	  
	  	Bounce.floor:
	TNT1 A 0
	TNT1 A 0 thrustthing(angle,12,0,0)
	Goto fly
	
		Bounce.Wall:
	TNT1 A 0
	TNT1 A 0 a_stop
	Goto death
	
	  
	  
   Death:
  TNT1 A 0
      stop
   }
}


ACTOR IceToMeetVile2
{
  Game Doom
  Radius 8
  Height 8
  Speed 1
  xscale 1.25
  yscale 0.15
  Damage (random(1,2))
  DamageType "Ice"
  Projectile
  +floorhugger
  +dontharmclass
  +ripper
  +dontharmspecies
  SeeSound ""
  DeathSound "Ice/Hit2"
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    CHCY ABCDFG 5 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
  CHCY ABCDFG 5 Bright A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
   TNT1 A 0 Bright a_jump(12,"Death")
   CHCY ABCDFG 5 Bright A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
   TNT1 A 0 Bright a_jump(12,"Death")
   CHCY ABCDFG 5 Bright A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
	 TNT1 A 0 Bright a_jump(12,"Death")
	 CHCY ABCDFG 5 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
    	 CHCY ABCDFG 4 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
	 CHCY ABCDFG 3 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
	 CHCY ABCDFG 2 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))
	 CHCY ABCDFG 1 Bright  A_SpawnItemex("SpikeCyanRev",0,0,6,random(-2,2),0,random(9,45),random(0,359))

  Death:
	TNT1 A 0
	TNT1 A 0 A_scream

    
    Stop
  }
}




ACTOR IceStartVile1
{
  Game Doom
  Radius 16
  Height 4
  Speed 5
  floatspeed 5
  +nogravity
  +float
  RenderStyle Add
  Alpha 0.95
  States
  {
  Spawn:
  GBLL A 0
  Goto Fly
  Fly:
    GBLL A 0 ThrustThingz(0,4,0,0)
    C3BB A 10 bright A_Playsound("Ice/Fly")
	C3BB B 10 bright
    Goto Death
  Death:
    	C3BB DEFG 10 bright a_fadeout(0.33)
    Stop
  }
}



ACTOR IceStartVile2
{
  Game Doom
  Radius 16
  Height 4
  Speed 5
  floatspeed 5
  DamageType Ice
  
  +nogravity
  +float
  RenderStyle Add
  Alpha 0.95
  States
  {
  Spawn:
  GBLL A 0
  Goto Fly
  Fly:
    GBLL A 0 ThrustThingz(0,4,0,0)
	TNT1 A 0 A_Playsound("Ice/Fly")
    C3BB E 10 bright A_explode(random(1,15),64,0)
	C3BB F 10 bright A_explode(random(1,15),64,0)
    Goto Death
  Death:
    	C3BB GHI 8 bright a_fadeout(0.33)
    Stop
  }
}



ACTOR IceStartVile3
{
  Game Doom
  Radius 16
  Height 4
  Speed 5
  +thruactors
  DamageType Ice
  RenderStyle Add
  Alpha 0.95
  States
  {
  Spawn:
  GBLL A 0
  Goto Fly
  Fly:
    C3BB I 10 bright A_explode(random(1,15),64,0)
	
	C3BB H 10 bright A_explode(random(1,15),64,0)
    Goto Death
  Death:
    	C3BB GFE 8 bright a_fadeout(0.33)
    Stop
  }
}


ACTOR IceStartVile4
{
  Game Doom
  Radius 16
  Height 4
  Speed 5
  Scale 0.5
  RenderStyle Add
  Alpha 0.95
  States
  {
  Spawn:
  GBLL A 0
  Goto Fly
  Fly:
    C3BB I 10 bright 
	
	C3BB H 10 bright
    Goto Death
  Death:
  TNT1 A 0
    	TNT1 A 0 A_iceguydie
    Stop
  }
}


// 


Actor AbyssArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_Abyssmal") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Abyssmal") == 3, "fifty") 
TNT1 A 0
Goto Third
Fifty:

TNT1 A 0
TNT1 A 0 A_jump(128,"Third")
TNT1 A 0
Goto First
First:
TNT1 A 0 A_SpawnitemEx("YellowArch",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}



ACTOR AbyssVile {

	Health 2500
  Species "vile1"
  BloodColor "black"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
 
  Radius 20
  Height 56
  Mass 800
  Speed 25
  PainChance 32
  yscale 0.95
  Xscale 0.65
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  SeeSound "queen/sight"
  activesound "deepone/active"
  PainSound "queen/pain"
  DeathSound "queen/death"
  MeleeSound "vile/stop"
  DropItem "ArmorBundle", 72
  Dropitem "CH_GreenArmor"
  DropItem "Backpack"
  Dropitem "CH_SoulSphere",128
  Dropitem "BackPack", 128
  Dropitem "CH_BlueArmor", 64
  Dropitem "CH_CellPack",64
   DropItem "Backpack",128
  Obituary "%o was alienized by abyss archvile"
  Translation "0:79=%[0.02,0.02,0.02]:[0.26,0.44,0.39]", "96:167=%[0.06,0.09,0.21]:[0.06,0.23,0.09]", "80:95=0:0", "168:191=0:0", "192:255=%[0.00,0.00,0.00]:[0.14,0.22,0.28]"
  tag "Aliens?"

	
	States
	{
	Spawn:
		DGRD A 10 A_Look
								 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	See:
		DGRD B 0 
		DGRD BBCC 3 A_VileChase
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,62))
		DGRD DDEE 3 A_VileChase
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,62),1,0,2,random(-359,359))
		Loop
			See2:
		DGRD B 0 
		DGRD BB 2 A_VileChase
				TNT1 A 0 A_Spawnitemex("SplashAbyssVile",-2,0,random(5,24),0,0,0,0,0,128)
								 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		DGRD CC 2 A_VileChase
		
		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,62),1,0,2,random(-359,359))
		TNT1 A 0 A_Spawnitemex("SplashAbyssVile",-2,0,random(5,24),0,0,0,0,0,128)

		DGRD DD 2 A_VileChase
				TNT1 A 0 A_Spawnitemex("SplashAbyssVile",-2,0,random(5,24))
								 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		DGRD EE 2 A_VileChase
		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,62),1,0,2,random(-359,359))
		TNT1 A 0 A_Spawnitemex("SplashAbyssVile",-2,0,random(5,24),0,0,0,0,0,128)
		TNT1 A 0 a_checksight("See")

		Loop
		
		Missile:
		TNT1 A 0
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		DGRD A 1 A_facetarget
		TNT1 A 0 A_jumpifcloser(1500,"Choice")
		TNT1 A 0
		
		DarkTangle:
		TNT1 a 0
		DGRD A 5 bright a_facetarget
		DGRD A 4 bright	A_Playsound("queen/sight", 7, 2, false, ATTN_NONE)
		Tangle:
		DGRD K 1 bright
		DGRD K 5 bright A_facetarget
		DGRD K 1 bright A_checksight("See2")
		DGRD K 5 bright A_viletarget("PsychicTangleAbyVile")
		DGRD K 2 A_Monsterrefire(128,"See2")
	    Goto Tangle
		
		
		
		Choice:
		TNT1 A 0
		TNT1 A 0 A_jump(255,"Tendrils", "DarkTangle","Icicles")
		
		Goto see2
		
		Tendrils:
		DGRD A 5 bright a_facetarget
		DGRD A 10 
		DGRD J 5 bright A_viletarget("ABVileTend")
		DGRD I 5
		TNT1 AAAAAAAA 0 A_SpawnitemEx("SplashAbyssVile2",random(32,728),random(-78,78),0,0,0,0,0,SXF_NOCHECKPOSITION)
		
		
		Goto see2
		
		Icicles:
		DGRD I 15 bright a_facetarget
		IceIt:
		DGRD J 2 bright a_facetarget
		DGRD JJJ 2 bright A_Custommissile("IceABVile",random(24,42),0,random(-9,9))

		DGRD J 1 A_checksight("See2")
		DGRD J 1 A_Monsterrefire(128,"See2")
	    Goto IceIt
		
		
		
	Melee:
		DGRD F 6 A_FaceTarget
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		DGRD G 6 A_Custommeleeattack(random(16,62),"imp/melee")
			 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",56,0,random(-25,25),CMF_OFFSETPITCH,random(-25,-5))

		DGRD H 6 A_Custommeleeattack(random(16,62),"imp/melee")
	 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",56,0,random(-15,15),CMF_OFFSETPITCH,random(-25,-5))
TNT1 A 0 A_jump(32,"Jumpy")
		Goto See2
		
		Heal:
		DGRD A 4 bright A_SpawnitemEx("AbyssBaronRing",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		DGRD A 10 bright
		TNT1 AAAAAAAAAAAA 0  bright A_SpawnitemEx("SplashAbyssVile",random(-258,258),random(-258,258),0,0,0,0,0,SXF_NOCHECKPOSITION)
		TNT1 A 0 A_jump(76,"Portal")
		TNT1 A 0 A_jump(32,"Jumpy")

		goto see2
		
		Portal:
		DGRD A 4 bright
		DGRD A 4 bright A_SpawnitemEx("AbyssPortalVile",0,0,random(64,252),0,0,0,0,SXF_NOCHECKPOSITION)
		DGRD A 2 bright
		Goto Jumpy
		
		Jumpy:
		DGRD R 6 a_facetarget
		DGRD S 1 thrustthingz(0,64,0,0)
		DGRD S 1 thrustthing(angle-180,12,0,0)
		DGRD S 5
		DGRD T 12
		Goto see2
		
		Warp:
			DGRD A 1
	DGRD A 1 a_changeflag("NOPAIN",TRUE)
	DGRD A 1 a_changeflag("NOGRAVITY",TRUE)
	DGRD A 1 a_changeflag("FLOAT",TRUE)
	DGRD A 1 //a_setspeed(99)
	TNT1 A 0 A_SetTranslucent(0.45)
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Spawnitemex("SplashAbyss2",random(-128,128),random(-128,128),random(6,16),0,0,2,0,SXF_NOCHECKPOSITION)
	DGRD BBB 0 a_wander
	DGRD B 1 a_wander
	DGRD CCC 0 a_wander
	DGRD C 1 a_wander
	DGRD DDD 0 a_wander
	DGRD D 1 a_wander
	DGRD EEE 0 a_wander
	DGRD E 1 a_wander
	DGRD FFF 0 a_wander
	DGRD F 1 a_wander
	DGRD BBB 0 a_wander
	DGRD B 1 a_wander
	DGRD CCC 0 a_wander
	DGRD C 1 a_wander
	DGRD DDD 0 a_wander
	DGRD D 1 a_wander
	DGRD EEE 0 a_wander
	DGRD E 1 a_wander
	DGRD FFF 0 a_wander
	DGRD F 1 a_wander
	DGRD BBB 0 a_wander
	DGRD B 1 a_wander
	DGRD CCC 0 a_wander
	DGRD C 1 a_wander
	DGRD DDD 0 a_wander
	DGRD D 1 a_wander
	DGRD EEE 0 a_wander
	DGRD E 1 a_wander
	DGRD FFF 0 a_wander
	DGRD F 1 a_wander
	DGRD BBB 0 a_wander
	DGRD B 1 a_wander
	DGRD CCC 0 a_wander
	DGRD C 1 a_wander
	DGRD DDD 0 a_wander
	DGRD D 1 a_wander
	DGRD EEE 0 a_wander
	DGRD E 1 a_wander
	DGRD FFF 0 a_wander
	DGRD F 1 a_wander
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Spawnitemex("SplashAbyss2",random(-128,128),random(-128,128),random(6,16),0,0,2,0,SXF_NOCHECKPOSITION)
	DGRD A 1 //a_setspeed(25)
	TNT1 A 0 A_SetTranslucent(1)
		DGRD A 1 a_changeflag("NOGRAVITY",false)
	DGRD A 1 a_changeflag("FLOAT",false)
    DGRD A 1 a_changeflag("NOPAIN",False)
		
		Goto see2
		
	Pain:
		DGRD L 3
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		DGRD L 3 A_Pain
		DGRD L 1 A_jump(64,"Warp")
		TNT1 A 0 A_jump(32,"Jumpy")
		Goto See2
	Death:
		DGRD L 6
		DGRD M 6 A_Scream
		DGRD N 6 A_Fall
		DGRD O 6
		DGRD P 6
		DGRD Q -1
		Stop
	}

}


Actor AbyssPortalVile
{    
	Health 250
    Radius 20
    Height 64
	Monster
	+NoPain
	+NoTarget
	+Float
	+noblood
	+Floatbob
    +NOGRAVITY
	+LookAllaround
	Speed 2
	floatspeed 2
	SeeSound "holy2/holy4"
    DeathSound "wraith/wraith5"
	DropItem "HealthBundle"
	Dropitem "CH_Cell", 128
	Scale 0.5
	Tag "Abyss portal"
	
	var int user_charge;
	
    States
    {
    Spawn:
	    T4TE ABCDE 7 bright
	See:
	     T4TE FGHIJKLM 8 bright A_Chase
		 T4TE FGHIJKLM 8 bright A_Chase
		 
		 TNT1 A 0 a_jumpif(user_charge==7,"missile")
		 TNT1 A 0 a_jumpif(user_charge==14,"missile")
		 TNT1 A 0 a_jumpif(user_charge==21,"missile")
		  T4TE FGHIJKLM 8 bright A_Chase
		 T4TE FGHIJKLM 8 bright A_Chase
		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Loop
	Missile:
	     T4TE F 1 bright
		 T4TE F 1 bright A_playsound("SYNTPORT", 7, 2, false, ATTN_NONE)
		 T4TE MLKJIHGF 4 bright
		 
		 TNT1 A 0 a_jumpif(user_charge>=25,"A5")
		 TNT1 A 0 a_jumpif(user_charge>=20,"A4")
		 TNT1 A 0 a_jumpif(user_charge>=15,"A3")
		 TNT1 A 0 a_jumpif(user_charge>=10,"A2")
		 TNT1 A 0 a_jumpif(user_charge>=5,"A1")
	     T4TE F 1 bright A_PainAttack("AbyssBaronSoul",1, PAF_NOSKULLATTACK)
		
		 Goto See
		 
		 A1:
		 	     T4TE F 1 bright A_PainAttack("CommonRevenant",1, PAF_NOSKULLATTACK)
		 		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Goto See
		 
		 		 A2:
		 	     T4TE F 1 bright A_PainAttack("AbyssImp2",1, PAF_NOSKULLATTACK)
		 		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Goto See
		 
		 		 A3:
		 	     T4TE F 1 bright A_PainAttack("AbyssDemon2",1, PAF_NOSKULLATTACK)
		 		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Goto See
		 		 A4:
		 	     T4TE F 1 bright A_PainAttack("AbyssCaco2",1, PAF_NOSKULLATTACK)
		 		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Goto See
		 
		 		 A5:
		 	     T4TE F 1 bright A_PainAttack("AbyssRevenant2",1, PAF_NOSKULLATTACK)
		 		 TNT1 A 0 a_setuservar("User_charge",user_charge+1)
		 Goto See
		 
		 
		 
	Death:
	TNT1 A 0
	 TNT1 A 2 A_Screamandunblock
	 TNT1 A 0 A_setscale(1,1)
	 	  TNT1 AAAAAAAAAAAAAAAA 0 A_Spawnitemex("SplashAbyss",random(-2,2),random(-2,2),random(0,12),6,0,2,random(-359,359))

	  MISL BCD 6 bright

	   Stop
		
    }
}


ACTOR IceABVile
{
  Game Doom
  Radius 5
  Height 2
  Speed 46
  Damage (random(9,45))
  DamageType Ice
  Projectile
  RenderStyle Add
  Alpha 0.85
  xScale 1.5
  yscale 0.25
  SeeSound "Ice/Hit2"
  DeathSound "spike/spiked"
  States
  {
  Spawn:
    ICEY A 3 Bright 
		    TNT1 A 0 BRIGHT A_SpawnItemEx("AbyssShotIdentifier", 0, 0, 0, random(1,7), 0, random(-5,5), random(0,359),SXF_TRANSFERTRANSLATION | SXF_NOCHECKPOSITION)

	ICEY B 3 Bright 
	    TNT1 A 0 BRIGHT A_SpawnItemEx("AbyssShotIdentifier", 0, 0, 0, random(1,7), 0, random(-5,5), random(0,359),SXF_TRANSFERTRANSLATION | SXF_NOCHECKPOSITION)

	ICEY C 3 Bright 
	
    Loop
  Death:
    ICEY FGHI 5 Bright A_Explode(random(5,12),64)
    Stop
  }
}

ACTOR PsychicTangleAbyVile
{
  Projectile
  +NOBLOCKMAP
  +NOGRAVITY
  +invisible
  RenderStyle stencil
  Alpha 0.95
  Damage (random(1,10))
  DamageType "Getoutofmyheadcharles"
  Scale 0.4
  DeathSound "deepone/active" //"queen/active"
  Mass 50
  States
  {
  Spawn:
  Death:
  TNT1 A 0 
  TNT1 A 0 A_explode(1,32)
    TNT1 A 0 Radius_Quake(9,9,0,30,0)
		    TNT1 A 0 BRIGHT A_SpawnItemEx("AbyssShotIdentifier", 0, 0, 0, random(1,7), 0, random(1,5), random(0,359),SXF_TRANSFERTRANSLATION | SXF_NOCHECKPOSITION)

	SPIR ABCDE 1 bright A_SpawnitemEx("PsychicTangleAbyVile2",random(1,8),random(-12,12),random(0,3),0,0,0,0,SXF_NOCHECKPOSITION)
    SPIR ABCDE 1 bright A_SpawnitemEx("PsychicTangleAbyVile2",random(-12,12),random(-28,28),random(0,12),0,0,0,0,SXF_NOCHECKPOSITION)
    SPIR ABCDE 1 bright A_SpawnitemEx("PsychicTangleAbyVile2",random(-12,12),random(-28,28),random(0,12),0,0,0,0,SXF_NOCHECKPOSITION)

	Stop
  }
}

ACTOR PsychicTangleAbyVile2
{
  Projectile
  +NOBLOCKMAP
  +NOGRAVITY
  RenderStyle stencil
  Stencilcolor "black"
  Alpha 0.95
  xScale 0.2
  yscale 0.76
  States
  {
  Spawn:
  T6TE ABCDE 1 bright
  Death:
  TNT1 A 0
  	TNT1 AAA 0 bright A_SpawnitemEx("ArchRingHelp",random(-24,24),random(-28,28),0,0,0,0,0,SXF_NOCHECKPOSITION)

T6TE JLMNOP 3 bright

    Stop
  }
}





actor SplashAbyssVile
{
  radius 12
  height 1
  speed 1
  damage (random(10,30))
  Xscale 1.7
  YScale 0.15
  +Floorhugger
  +DontHarmClass
  +DontHarmSpecies
  +Thruactors
  +RANDOMIZE
  +Bounceonwalls
  
  BounceCount 999
  Bouncetype doom
  Bouncefactor 1
  wallbouncefactor 1
  Translation "0:255=%[0.02,0.02,0.03]:[0.29,0.49,0.65]"

  states
  {
  Spawn:
  TNT1 A 0
  Fly:
  TNT1 A 0

    BOGY ABC 4 bright
	TNT1 A 0 bright A_SpawnitemEx("ArchRingHelp",random(-24,24),random(-28,28),0,0,0,0,0,SXF_NOCHECKPOSITION)
	BOGY CBA 4 Bright 
	TNT1 A 0 A_setscale(1.6,0.15)
    BOGY BAC 4 bright
	BOGY BCA 4 Bright 
	TNT1 A 0 A_setscale(1.5,0.15)
	    BOGY ABC 4 bright
			TNT1 A 0 bright A_SpawnitemEx("ArchRingHelp",random(-24,24),random(-28,28),0,0,0,0,0,SXF_NOCHECKPOSITION)
	BOGY CBA 4 Bright 
		TNT1 A 0 A_setscale(1.6,0.15)
	    BOGY BAC 4 bright
	BOGY BCA 4 Bright 
	TNT1 A 0 A_setscale(1.7,0.15)
	    BOGY ABC 4 bright
			TNT1 A 0 bright A_SpawnitemEx("ArchRingHelp",random(-24,24),random(-28,28),0,0,0,0,0,SXF_NOCHECKPOSITION)
	BOGY CBA 4 Bright 
	TNT1 A 0 A_setscale(1.8,0.15)
		    BOGY ABC 4 bright
	BOGY CBA 4 Bright  
	
    goto death

	
  Death:
    BOGY D 0 bright 
					TNT1 A 0 bright A_SpawnitemEx("ArchRingHelp",random(-24,24),random(-28,28),0,0,0,0,0,SXF_NOCHECKPOSITION)
    BOGY DEF 6 bright
    stop
  }
}

actor ABVileTend
{
  radius 1
  height 1
  speed 1
  Xscale 1.85
  YScale 0.15
  +Floorhugger
  +DontHarmClass
  +DontHarmSpecies
  +Thruactors
  +RANDOMIZE
  +Bounceonwalls
  +noclip
  -countkill
  Translation "0:255=%[0.02,0.02,0.03]:[0.29,0.49,0.65]"

  states
  {
  Spawn:
  TNT1 A 0
Death:

	TNT1 A 0 bright A_SpawnitemEx("SplashAbyssVile2",64,0,1,0,0,0,0,SXF_NOCHECKPOSITION)
		TNT1 A 0 bright A_SpawnitemEx("SplashAbyssVile2",0,64,1,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 bright A_SpawnitemEx("SplashAbyssVile2",-64,0,1,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 bright A_SpawnitemEx("SplashAbyssVile2",0,-64,1,0,0,0,0,SXF_NOCHECKPOSITION)

	
    stop
  }
}

actor SplashAbyssVile2
{
  radius 1
  height 1
  speed 1
  Xscale 1.85
  YScale 0.15
  +Floorhugger
  +DontHarmClass
  +DontHarmSpecies
  +Thruactors
  +RANDOMIZE
  +Bounceonwalls
  +noclip
  -countkill
  Translation "0:255=%[0.02,0.02,0.03]:[0.29,0.49,0.65]"

  states
  {
  Spawn:
  TNT1 A 0
  Fly:
		    BOGY ABC 6 bright
    goto death

  Death:
    BOGY D 0 bright 
    BOGY DEF 6 bright
	TNT1 A 0 bright A_SpawnitemEx("ABVileTentacle",0,0,3,0,0,0,0,SXF_NOCHECKPOSITION)
    stop
  }
}


ACTOR ABVileTentacle
{
  Obituary "%o was tentacle love'd"
  Health 30
    Species "vile1"
  DamageFactor "Heroic", 3.0
  DamageFactor "DIMp", 0
  Radius 32
  Height 112
  xScale 0.55
  yscale 0.75
  Meleerange 128
  Mass 0x7FFFFFFF // [Blue Shadow] "infinite" mass
  PainChance 96
  SeeSound "monster/tensit"
  PainSound "monster/tenpai"
  DeathSound "monster/tendth"
  ActiveSound "monster/tenact"
  Monster
  +FLOORCLIP
  +DONTHURTSPECIES
  +LOOKALLAROUND
  +NOTARGET
  +thruactors
  +MISSILEEVENMORE
  -Noradiusdmg
  -countkill
   Translation "0:255=%[0.02,0.02,0.03]:[0.29,0.49,0.65]"

  States
  {
  Spawn:
    TNT1 A 0 a_look
  See:
    T6TE ABCDE 6
  SeeLoop:
    T6TE EFGH 2 A_Chase
	T5TE F 2 a_jump(4,"Death")
    Loop
  Melee:
	T6TE I 2 A_facetarget
	T6TE JLMNOP 2 A_Custommeleeattack(random(1,7),"")
	T6TE Q 2  a_facetarget
	T6TE RTS 2  A_Custommeleeattack(random(1,7),"")
	T6TE UVWZ 2  A_Custommissile("SplashAbyss2",64,0,random(-25,25),CMF_OFFSETPITCH,random(-45,-5))

	
 Goto SeeLoop
  Missile: 
	T5TE A 3 a_Facetarget
	T5TE BC 3 a_facetarget
    TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",64,0,random(-25,25),CMF_OFFSETPITCH,random(-45,-5))
	T5TE DE 3 a_facetarget
	 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",64,0,random(-15,15),CMF_OFFSETPITCH,random(-45,-5))
	T5TE F 3 
    Goto SeeLoop
  Pain:
    T6TE E 3
    T6TE E 3 A_Pain
    Goto SeeLoop
  Death:
    T6TE E 4
    T6TE D 4 A_Scream
   T6TE C 4 A_NoBlocking
    T6TE BA 4
    TNT1 AAAA 0  bright A_SpawnitemEx("SplashAbyssVile",random(-128,128),random(-128,128),0,1,0,1,random(-359,359),SXF_NOCHECKPOSITION)
    TNT1 AAAA 0  bright A_SpawnitemEx("SplashAbyss2",random(-128,128),random(-128,128),0,1,0,1,random(-359,359),SXF_NOCHECKPOSITION)

    TNT1 A 0
    	TNT1 A 0 A_die
	Stop
  }
}


Actor GrayArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_Grayscale") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("YellowArch",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("GrayArch2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

// 

ACTOR GrayArch2 
{
  Game Doom
  Health 1400
  Species "vile1"
  BloodColor "red"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
 
  Radius 20
  Height 56
  Mass 500
  Speed 19
  PainChance 16
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "ArmorBundle"
  Dropitem "CH_GreenArmor"
  DropItem "Backpack"
   DropItem "Backpack",128
  Obituary "%o was stone hilled by gray archvile"
  Translation "64:79=96:111", "48:63=91:106", "128:143=101:111", "208:223=91:95", "13:15=109:111", "144:151=100:105", "160:167=240:247", "224:231=240:247", "248:249=241:242", "232:235=243:246"
  tag "Like a stone"
 States
  {
  Spawn:
    VILE AB 10 A_Look
									 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
  
    VILE G 2 Bright A_VileStart
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE G 0 A_jump(128,"GroundSpike")
	
    VILE G 12 Bright A_FaceTarget
	 VILE G 1 Bright A_Playsound("vile/sight",9)
	 VILE G 6 Bright A_FaceTarget
    VILE H 5 Bright A_VileTarget("CHBSTarget")
    VILE IJ 5  bright A_FaceTarget
	VILE K 5 bright A_VileTarget("CHBSTarget")
	VILE L 5 Bright A_FaceTarget
	VILE M 0 Bright A_CheckSight("See")
	VILE M 9 Bright A_VileTarget("RockVileDrop")
	VILE N 3 Bright 
    VILE O 7 Bright 
    VILE P 16 Bright
    Goto See
	
			 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	GroundSpike:
		
    VILE G 12 Bright A_FaceTarget
	 VILE G 1 Bright A_Playsound("vile/sight",9)
	 VILE G 6 Bright A_FaceTarget
	 VILE HIJ 4 bright 
	  VILE "[\]" 4 A_facetarget
	  TNT1 A 1
	  VILE "[\]" 2 Bright A_CustomMissile("VileGroundSpike",0,0,0,0) 
	    VILE "[\]" 1 Bright A_CustomMissile("VileGroundSpike",0,0,-45,0) 
		VILE "[\]" 1 Bright A_CustomMissile("VileGroundSpike",0,0,45,0) 
	  TNT1 A 1
	  VILE "[\]" 4 
	Goto see
	
  Heal:
    VILE "[\]" 10 Bright
	VILE G 0 Bright A_Jump(128,"SG", "CG", "REV", "HK", "LSOUL", "CACO") 
    Goto See
	SG:
	VILE G 0 Bright A_Spawnitemex("GrayDemon",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	CG:
	VILE G 0 Bright A_Spawnitemex("GrayCGuy",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	REV:
	VILE G 0 Bright A_Spawnitemex("GrayRevenant",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	HK:
	VILE G 0 Bright A_Spawnitemex("GrayHK",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
     LSOUL:
	VILE G 0 Bright A_Spawnitemex("GraySpectre",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	CACO:
	VILE G 0 Bright A_Spawnitemex("GrayCaco",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
  Pain:
    VILE Q 5   
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Pain
	VILE Q 0 A_jump(128,"Decoy")
    Goto See
	
	Decoy:
	TNT1 A 0
	VILE A 0 A_Spawnitemex("VileGrayDecoy",random(-32,32),random(-32,32),3,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
    TNT1 AAA 2 A_wander 
	Goto See
	
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}


ACTOR VileGroundSpike
{
  Game Doom
  speed 24
  Projectile
  +thruactors
  +floorhugger
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    TNT1 A 4 Bright A_SpawnItemEx("Drt1", random(-3,4), random(-2,2), random(1,3), 1, 0, 1, Random(0, 360), 128)
          TNT1 A 4 Bright A_SpawnItemEx("VileGroundSpikes2", 0, 0, random(1,3), 0, 0,0,0, 128)
     TNT1 AA 0 Bright A_SpawnItemEx("Drt2", random(-3,4), random(-2,2), random(1,3), 1, 0, 1, Random(0, 360), 128)

    TNT1 A 4 Bright A_SpawnItemEx("Drt2", random(-2,2), random(-4,3), random(1,3), 1, 0, 1, Random(0, 360), 128)
   TNT1 A 4 Bright A_SpawnItemEx("VileGroundSpikes2", 0, 0, random(1,3), 0, 0,0,0, 128)
         TNT1 AA 0 Bright A_SpawnItemEx("Drt3", random(-3,4), random(-2,2), random(1,3), 1, 0, 1, Random(0, 360), 128)

    TNT1 A 4 Bright A_SpawnItemEx("Drt3", random(-4,4), random(-4,4), random(1,3), 1, 0, 1, Random(0, 360), 128)
TNT1 A 4 Bright A_SpawnItemEx("VileGroundSpikes2", 0, 0, random(1,3), 0, 0,0,0)
     TNT1 AA 0 Bright A_SpawnItemEx("Drt1", random(-3,4), random(-2,2), random(1,3), 1, 0, 1, Random(0, 360), 128)

 loop
	death:
	TNT1 AAAAAA 0 A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), random(-3,3), 1, 0, 1, Random(0, 360), 128)
	TNT1 AAAAAA 0 A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), random(-3,3), 1, 0, 1, Random(0, 360), 128)
	TNT1 AAAAAA 0 A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), random(-3,3), 1, 0, 1, Random(0, 360), 128)

Stop
  }
}

ACTOR VileGrayDecoy
{
  Game Doom
  speed 0
  Health 99
  Monster
  +notrigger
  -countkill
    Translation "64:79=96:111", "48:63=91:106", "128:143=101:111", "208:223=91:95", "13:15=109:111", "144:151=100:105", "160:167=240:247", "224:231=240:247", "248:249=241:242", "232:235=243:246"

  States
  {
  Spawn:
  TNT1 A 10 a_jump(256, "A1", "A2", "A3", "A4")
  A1:
  VILE A 90
Goto death
  A2:
  VILE B 90
Goto death
  A3:
  VILE C 90
Goto death
  A4:
  VILE D 90
Goto death
	death:

	 VILE GGG 8 A_fadeout(0.33)
Stop
  }
}

ACTOR VileGroundSpikes2
{
  Game Doom
  speed 1
  Damage (random(1,10))
  Damagetype melee
  Projectile
  +floorhugger
  +thruactors
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
   SSPK C 30 a_jump(128,"WaitMore")
   SSPK D 10
   SSPK A 3 A_setscale(1.0,0.3)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,0.6)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 3 A_setscale(1.0,1.0)
   TNT1 A 0 A_explode(random(60,100),32,0)
   SSPK A 8 a_changeflag("thruactors",FALSE)
Goto death

Waitmore:
SSPK C 45 
TNT1 A 0  a_jump(8,"WaitMore")
SSPK D 15
Goto fly+1

	death:
	 SSPK A 8 a_setsolid
	 SSPK A 16
	 SSPK AAA 8 A_fadeout(0.33)
Stop
  }
}

ACTOR RockVileDrop
{
  Game Doom
  speed 1
  Projectile
  +noclip
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    BAL1 A 1 Bright A_Spawnitemex("ROCKDROPVILE2",0,0,126,0,0,0,0,SXF_NOCHECKPOSITION)
    Stop
  }
}

ACTOR RockDropvile2
{
  Game Doom
  speed 1
  Projectile
  +noclip
  +ceilinghugger
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    BAL1 A 1 Bright A_Spawnitemex("ROCKDROPVILE",0,0,-20,1,1,1,0,SXF_NOCHECKPOSITION)
    Stop
  }
}

ACTOR ROCKDROPVILE
{
  Game Doom
  Radius 16
  Height 16
  Speed 10
  Damage (Random(75,155))
  DamageType "Melee"
  Projectile
  -nogravity
  +bounceonfloors
  +touchy
  bouncetype "Hexen"
  Bouncecount 1
  BounceFactor 0.7
  gravity 1.25
  scale 1.2
  SeeSound "monster/hamflr"
  DeathSound "moloch/thud"
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    JUBD ABCD 3 A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), random(-3,3), 1, 0, 1, Random(0, 360), 128)

    Loop	
  Death:
    JUBD DDDD 0 Bright A_SpawnItemEx("Drt1", random(-2,2), random(-2,2), random(-2,2), 1, 0, 1, Random(0, 360), 128)
    JUBD DDDD 0 Bright A_SpawnItemEx("Drt2", random(-2,2), random(-2,2), random(-2,2), 1, 0, 1, Random(0, 360), 128)
	JUBD DDDD 0 Bright A_SpawnItemEx("Drt3", random(-2,2), random(-2,2), random(-2,2), 1, 0, 1, Random(0, 360), 128)
    JUBD D 1 Bright a_explode(random(60,115),64,0)
	TNT1 AAAAAAAAAAAAAAAAAAA 0 A_Custommissile("WDRock4",32,0,random(-359,359))
    Stop
  }
}




Actor FireBluArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_FireBLUES") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("PurpleArch",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("FireBluArch2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

ACTOR FireBluArch2 
{
  Game Doom
  Health 1000
  Species "vile1"
  BloodColor "Blue"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 19
  PainChance 4
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "ArmorBundle"
  Dropitem "Backpack"
   DropItem "Backpack",64
    DropItem "Backpack",128
  DropItem "CH_RocketLauncher", 32
  Obituary "%o was fireblu fired by fireblu archvile!"
  Translation "48:52=195:199", "53:57=177:184", "58:61=202:206", "62:63=190:191", "208:213=176:182", "214:223=201:207", "64:68=200:203", "69:74=180:185", "75:79=204:207", "135:143=181:188", "128:135=201:207", "13:14=179:181", "15:15=203:203", "144:146=199:201", "147:149=179:182", "150:151=205:207", "5:12=186:191","160:162=200:203", "163:165=181:184", "166:167=205:207", "249:249=198:198", "226:231=178:183"
  tag "Horrible sight"
 States
  {
  Spawn:
    VILE AB 10 A_Look
										 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
											 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
											 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
    VILE G 0 Bright A_VileStart
											 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 16 Bright A_FaceTarget
	TNT1 A 3
	 VILE G 3 Bright A_FaceTarget
	 	TNT1 A 3 A_CheckSight("See")
	 VILE G 2 Bright A_FaceTarget
	 TNT1 A 2 A_CheckSight("See")
	 VILE G 2 Bright A_FaceTarget
	 	 TNT1 A 2
	 VILE G 2 Bright A_FaceTarget
	 	 TNT1 A 1 A_CheckSight("See")
	 VILE G 1 Bright A_FaceTarget
	 	 	 TNT1 A 1 A_CheckSight("See")
	 VILE G 1 Bright A_FaceTarget
	 	 	 TNT1 A 1 A_CheckSight("See")
	 VILE G 1 Bright A_Playsound("vile/sight",9)
	 VILE G 6 Bright A_FaceTarget
    VILE H 5 Bright A_VileTarget("FireBluVile")
    VILE IJKL 5 Bright A_FaceTarget
	VILE M 0 Bright A_CheckSight("See")
	VILE M 9 Bright A_VileTarget("FireBluVile")
	VILE N 3 Bright 
    VILE O 7 Bright A_VileAttack("vile/stop",random(6,64),random(6,64),128,2,"Fire")
    VILE P 16 Bright
    Goto See
	
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Heal:
    VILE "[\]" 10 Bright
	VILE G 0 Bright A_Jump(128,"SG", "CG", "REV", "HK", "LSOUL", "CACO") 
    Goto See
	SG:
	VILE G 0 Bright A_Spawnitemex("FireBluSG",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	CG:
	VILE G 0 Bright A_Spawnitemex("FireBluCGuy",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	REV:
	VILE G 0 Bright A_Spawnitemex("FireBluRevenant",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	HK:
	VILE G 0 Bright A_Spawnitemex("FireBluHK",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
     LSOUL:
	VILE G 0 Bright A_Spawnitemex("FireBluLSoul",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
	CACO:
	VILE G 0 Bright A_Spawnitemex("FireBluCaco",-1,1,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
  Pain:
    VILE Q 5   
											 		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Pain
	VILE Q 0 Bright A_Jump(128,"SG", "CG", "REV") 
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}

ACTOR FireBluVile
{
  Game Doom
  Radius 12
  Height 16
  Speed 1
  FastSpeed 1
  Damage (random(5,23))
  DamageType "Fire"
  Projectile
  +RANDOMIZE
  +thruactors
  RenderStyle Add
  Alpha 0.85
  SeeSound "imp/attack"
  DeathSound "imp/shotx"
  Translation "161:161=200:200", "160:160=177:177", "162:162=184:184", "163:163=204:204", "164:164=186:186", "165:165=204:204", "166:166=189:189", "167:167=207:207"
  States
  {
  Spawn:
    FIRE AB 1 Bright 
    Goto Death
  Death:
    FIRE CDE 4 A_Explode(random(3,10),64)
	   MISL D 0 A_CustomMissile("FireSGguy2",0,0,15,0)    
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,45,0)   
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,75,0) 
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,105,0)    
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,135,0)     
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,165,0)     
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,195,0)     
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,225,0)      
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,255,0)       
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,285,0)     
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,315,0)       
       MISL D 0 A_CustomMissile("FireSGguy2",0,0,345,0)
    FIRE FGH 6 Bright A_Explode(random(3,10),64)
    Stop
  }
}

ACTOR FireSGguy2
{
  Game Doom
  Radius 12
  Height 16
  Speed 17
  Damage (random(5,15))
  DamageType "Fire"
  Projectile
  +RANDOMIZE
  +thruactors
  RenderStyle Add
  Alpha 0.85
  SeeSound "imp/attack"
  DeathSound "imp/shotx"
  Translation "161:161=200:200", "160:160=177:177", "162:162=184:184", "163:163=204:204", "164:164=186:186", "165:165=204:204", "166:166=189:189", "167:167=207:207"
  States
  {
  Spawn:
    FIRE AB 6 Bright 
    Goto Death
  Death:
    FIRE CDEEDCDE 5 A_Explode(random(3,9),64)
    FIRE FGH 4 Bright A_Explode(random(5,15),64)
    Stop
  }
}


Actor CommonArch : Archvile
{
Game doom
Species "Vile1"
DamageFactor "Extinguishing", 3.0
DamageFactor "DIMp", 0
PainChance "DIMp", 0
PainChance "Fire", 4
PainChance fire, 4
Monster
+Donthurtspecies
tag "Archvile"
states
{




 Spawn:
    VILE AB 10 A_Look
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
    VILE G 0 Bright A_VileStart
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 10 Bright A_FaceTarget
    VILE H 8 Bright A_VileTarget
    VILE IJKLMN 8 Bright A_FaceTarget
    VILE O 8 Bright A_VileAttack
    VILE P 20 Bright
    Goto See
  Heal:
    VILE "[\]" 10 Bright
    Goto See
  Pain:
    VILE Q 5   
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Pain
    Goto See


Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1

			 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop


Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
}
}

ACTOR GreenArch : Archvile
{
  Game Doom
  Health 750
  Species "vile1"
  BloodColor "Green"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 16
  PainChance 8
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "ArmorBundle", 72
  Obituary "%o got green painted by green archvile"
  Translation "48:63=112:121", "64:79=118:127", "128:143=120:127", "144:151=121:127", "208:223=112:127", "13:15=124:127", "160:167=112:127", "249:249=112:112","168:191=112:127"
  tag "Green Archvile"
  States
  {
  Spawn:
    VILE AB 10 A_Look
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
    VILE G 0 Bright A_VileStart
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 16 Bright A_FaceTarget
    VILE H 5 Bright A_VileTarget("Greenening")
    VILE IJKL 5 Bright A_FaceTarget
	VILE M 0 Bright A_CheckSight("See")
	VILE M 9 Bright A_VileTarget("Greenening2")
	VILE N 3 Bright 
    VILE O 7 Bright A_VileAttack("vile/stop",random(6,32),random(6,32),64,2,"plasma")
    VILE P 16 Bright
    Goto See
  Heal:
    VILE "[\]" 10 Bright
    Goto See
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Pain:
    VILE Q 5   
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}

ACTOR Greenening
{
  Game Doom
  Radius 32
  Height 16
  Speed 5
  floatspeed 5
  +nogravity
  +float
  RenderStyle Add
  Alpha 0.85
  States
  {
  Spawn:
  GBLL A 0
  Goto Fly
  Fly:
    GBLL A 0 ThrustThingz(0,8,0,0)
    GBLL A 3 Bright A_SetScale(4.7,4.7)
    GBLL A 0 Bright A_Playsound("Vile/active",0,1.5)
	GBLL B 3 Bright A_SetScale(4.4,4.4)
	GBLL B 0 Bright A_Playsound("Vile/active",0,1.5)
	GBLL C 3 Bright A_SetScale(3,3)
	GBLL C 0 Bright A_Playsound("Vile/active",0,1.5)
    Goto Death
  Death:
    GBLL C 6 Bright  A_SetScale(3.5,3.5)
    GBLL B 6 Bright  A_SetScale(3,3)
    GBLL A 6 Bright  A_SetScale(2,2)
    Stop
  }
}

ACTOR Greenening2
{
  Game Doom
  Radius 32
  Height 16
  +nogravity
  +float
  Speed 5
  floatspeed 5
  RenderStyle Add
  Alpha 0.85
  States
  {
  Spawn:
    GBLL A 0
  Goto Fly
  Fly:
    GBLL A 0 ThrustThingz(0,8,0,0)
    GBLL A 3 Bright  A_SetScale(2.5,2.5)
    GBLL A 0 Bright A_Playsound("Vile/active",0,1.5)
	GBLL B 3 Bright  A_SetScale(3.2,3.2)
	GBLL B 0 Bright A_Playsound("Vile/active",0,1.5)
	GBLL C 3 Bright  A_SetScale(3.8,3.8)
	GBLL C 0 Bright A_Playsound("Vile/active",0,1.5)
    Goto Death
  Death:
    GBLL C 6 Bright  A_SetScale(4.7,4)
    GBLL B 6 Bright  A_SetScale(4,4.7)
    GBLL A 6 Bright A_Playsound("Weapons/bfgx")
	BFE2 BCD 2 Bright A_Explode(random(2,8),32)
	BFE2 D 2  Bright A_Burst("Greenies2")
    Stop
  }
}

ACTOR Greenies2
{
  Game Doom
  Radius 2
  Height 2
  Speed 10
  FastSpeed 20
  Mass 5
  Damage (random(1,2))
  DamageType "Poison"
  Projectile
  -Nogravity
  +RANDOMIZE
  +Bounceonfloors
  +Explodeonwater
  RenderStyle Add
  Alpha 0.75
  Bouncetype "Hexen"
  Bouncecount 6
  Bouncefactor 1.3
  Wallbouncefactor 1.1
  Scale 0.25
  SeeSound "caco/attack"
  DeathSound "caco/shotx"
  Translation "168:191=112:127", "250:254=117:119", "208:223=112:124"
  States
  {
  Spawn:
    BAL2 AB 6 Bright 
    Loop
  Death:
    BAL2 C 3 Bright A_SetTranslucent(0.4)
    BAL2 DE 6 Bright 
   Stop
  }
}

ACTOR BlueArch : Archvile
{
  Game Doom
  Health 860
  Species "vile1"
  BloodColor "Blue"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 17
  PainChance 6
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  +Dontharmclass
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "HealthBundle"
  DropItem "HealthBundle", 128
  DropItem "CH_SoulSphere", 42
  Dropitem "RLPlasmaShieldArmorPickup", 32
  Obituary "%o was lifted up to the blues"
  Translation "48:63=195:203", "64:79=197:207", "128:143=200:207", "144:151=199:207", "208:223=200:207", "13:15=243:247", "160:167=192:207", "249:249=192:192","168:191=192:207"
  tag "Blue Archvile"
  States
  {
  Spawn:
    VILE AB 10 A_Look
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_SpawnitemEx("Bluegash",0,0,32)
    Loop
  See:
    VILE AABBCC 2 a_vilechase
			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_SpawnitemEx("Bluegash",0,0,32)
    Loop
  Missile:
  		TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 0 A_Jump(255, "Classic1","Boltings2")
  Classic1:
    VILE G 0 Bright A_VileStart
    VILE G 16 Bright A_FaceTarget
    VILE H 7 Bright A_VileTarget("BlueGash3")
    VILE IJKL 7 Bright A_FaceTarget
	VILE MN 4 Bright A_VileTarget("BlueGash3")
    VILE O 6 Bright A_VileAttack("vile/stop",random(12,42),random(12,42),64,10,"plasma")
    VILE P 16 Bright
    Goto See
  Boltings2:
    VILE G 5 A_Facetarget
	VILE G 5 A_Playsound("Vile/sight")
	VILE H 4 A_SpawnitemEx("Bluegash",0,0,32) 
	VILE IJKLM 8 Bright A_Facetarget
	VILE N 1 Bright A_Custommissile("BigBolt2",32,0)
	VILE O 7 Bright
	VILE P 8 Bright
	Goto See
  Heal:
    VILE "[\]" 10 Bright
    Goto See
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Pain:
    VILE Q 5  
			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE Q 0 A_SpawnitemEx("Bluegash",0,0,32)
    VILE Q 5 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}

ACTOR BlueGash
{
  Game Doom
  Radius 13
  Height 8
  Speed 0
  +RANDOMIZE
  +NOGRAVITY
  RenderStyle Add
  Alpha 0.45
  Scale 2
  States
  {
  Spawn:
    PLSS AB 6 Bright 
    Goto Death
  Death:
    PLSE ABCDE 4
    Stop
  }
}

ACTOR BlueGash3
{
  Game Doom
  Radius 13
  Height 8
  Speed 0
  +NOGRAVITY
  RenderStyle Add
  Alpha 0.65
  xScale 2.5
  yScale 3.8
  States
  {
  Spawn:
    PLSS AB 4 Bright 
    Goto Death
  Death:
    PLSE ABCDE 3 Bright A_custommissile("BlueGash2",random(2,24),random(-24,24),random(-180,180),CMF_AIMOFFSET,random(45,180))
	PLSE EEEEEEEEEE 0 A_custommissile("BlueGash2",random(2,24),random(-24,24),random(-180,180),CMF_AIMOFFSET,random(45,180))
	PLSE E 0
    Stop
  }
}

ACTOR BlueGash2
{
  Game Doom
  Radius 13
  Height 8
  Speed 6
  +RANDOMIZE
  +NOGRAVITY
  RenderStyle Add
  Alpha 0.55
  Scale 1.25
  States
  {
  Spawn:
    PLSS AB 4 Bright
    Goto Death
  Death:
    PLSE ABCDE 3 Bright 
    Stop
  }
}


ACTOR BigBolt2
{
  Game Doom
  Radius 13
  Height 8
  Speed 17
  Damage (random(25,95))
  DamageType "Plasma"
  Projectile
  +RANDOMIZE
  +Seekermissile
  RenderStyle Add
  Alpha 0.75
  DeathSound "weapons/bfgx"
  Translation "112:127=192:207"
  States
  {
  Spawn:
    BFS1 A 2 Bright A_SpawnitemEx("Bluegash",0,0,6)
	BFS1 B 2 Bright A_Seekermissile(7,10)
    Loop
  Death:
    BFE1 AB 8 Bright
    BFE1 C 8 Bright A_Explode(random(25,75),128)
    BFE1 DEF 8 Bright
    Stop
  }
}


ACTOR PurpleArch : Archvile
{
  Game Doom
  Health 1001
  Species "vile1"
  BloodColor "purple"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 18
  PainChance 4
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +THRUSPECIES
  +DontharmClass
  +Dontharmspecies
  -NORADIUSDMG
  +NOFEAR
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "CH_SoulSphere", 64
  DropItem "HealthBundle"
   DropItem "Backpack"
  Obituary "%o met monarchy of vile kind"
  Translation "48:63=[250,173,250]:[148,23,174]", "64:79=[176,19,160]:[89,26,91]", "128:143=[183,27,205]:[86,24,85]", "208:223=[240,159,226]:[108,19,100]", "144:151=[214,63,191]:[89,34,94]", "13:15=[184,48,173]:[94,31,99]", "249:249=253:253", "224:231=250:254", "96:96=252:254", "160:167=250:254","168:191=250:254"  //"48:63=250:252", "64:79=251:254", "128:143=252:254", "144:151=252:254", "208:223=252:254", "13:15=253:254", "160:167=250:254", "249:249=250:250"
  Var Int User_Summon;
  tag "Purple Archvile"
  States
  {
  Spawn:
    SKUL A 0 Bright A_Spawnitemex("SpecialRev",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)
	SKUL A 1 Bright A_Spawnitemex("SpecialRev",0,5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)
	SKUL A 1 Bright A_Spawnitemex("SpecialRev",5,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)
	SKUL A 1 Bright A_Spawnitemex("SpecialRev",-5,5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)	
  Idle:
    VILE AB 10 A_Look
			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_Jump(12,"Summon")
    Loop
  Missile:
  			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 0 A_Jump(64,"Classic2")
    VILE G 0 A_Jump(255, "Classic2","Summon")
	Goto See
  Classic2:
    VILE G 0 Bright A_VileStart
    VILE G 13 Bright A_FaceTarget
    VILE H 8 Bright A_VileTarget("PurpleWorry")
    VILE IJKLM 11 Bright A_FaceTarget
	VILE N 0 Bright A_CheckSight("See")
	VILE N 9 Bright A_VileTarget("PurpleWorry2")
    VILE O 7 Bright 
    VILE P 16 Bright
    Goto See
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Summon:
    VILE G 1 A_JumpIf(User_Summon==8, "See")
    VILE G 8 A_Facetarget
	VILE G 8 A_Playsound("Vile/sight")
	VILE H 7 
	VILE IJKH 11 Bright A_Facetarget
	VILE G 3 Bright A_SpawnitemEx("SpecialRev",random(-8,8),random(-12,12),6,SXF_SETMASTER) 
	VILE P 9 Bright A_Setuservar("User_Summon", User_Summon+1)
	VILE P 2
	Goto See
  Heal:
	VILE A 1 A_SpawnItemEx("PurpleWorry",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
	VILE A 1 A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
    VILE "[\]" 10 Bright 
    Goto See
  Pain:
  			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Setuservar("User_Summon", User_Summon==0)
    VILE Q 5 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}


ACTOR PurpleWorry
{
  Game Doom
  Radius 13
  Height 8
  Speed 0
  +RANDOMIZE
  +NOGRAVITY
  RenderStyle Add
  Alpha 0.85
  Scale 2
  Translation "192:207=250:254"
  States
  {
  Spawn:
    SBFX HIJK 6 Bright
    Goto Death
  Death:
    SBFX L 0 A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,6)
    SBFX LKJKL 6 Bright 
    Stop
  }
}

ACTOR PurpleWorry2
{
  Game Doom
  Radius 13
  Height 8
  Speed 0
  +RANDOMIZE
  +NOGRAVITY
  RenderStyle Add
  Alpha 0.85
  SeeSound "Spell/SpellCast1"
  Scale 2
  Translation "192:207=250:254"
  States
  {
  Spawn:
    SBFX HIJKHIJK 5 Bright A_Custommissile("TheBangers",8,0,Random(-180,180))
	SBFX L 2 Bright A_Jump(65,"Death")
    Loop
  Death:
    SBFX KLJK 7 Bright 
	SBFX L 7 Bright A_Burst("TheBangers")
    Stop
  }
}

ACTOR TheBangers
{
  Game Doom
  Radius 8
  Height 10
  Speed 32
  FastSpeed 54
  Mass 2
  Damage (random(1,8))
  DamageType "Plasma"
  Projectile
  -NOGRAVITY
  +RANDOMIZE
  +DontharmClass
  +Bounceonfloors
  +Explodeonwater
  +Seekermissile
  RenderStyle Add
  Alpha 0.75
  Bouncetype "Hexen"
  Bouncecount 4
  Bouncefactor 1
  Wallbouncefactor 1.1
  Scale 1.3
  SeeSound "caco/attack"
  DeathSound "caco/shotx"
  Translation "168:223=250:254", "224:231=250:250"
  Obituary "%o met monarchy of vile kind"
  States
  {
  Spawn:
    SBS4 ABC 8 Bright A_seekermissile(4,5)
	SBS4 ABC 8 Bright A_seekermissile(4,5)
    Goto Death
  Death:
    BAL2 C 1 Bright A_SetTranslucent(0.4)
    BAL2 C 0 Bright //A_SetSpeed(1)
	BAL2 C 0 Bright A_changeflag(ismonster,true)
	BAL2 C 0 Bright A_changeflag(notarget,true)
    BAL2 C 0 Bright A_Jump(256,"See")
	stop
	See:
	BAL2 CC 2 Bright A_Chase("","",CHF_RESURRECT)
	Stop
	Heal:
	BAL2 DE 4 Bright A_explode(random(2,8),88)
    Stop
  }
}


ACTOR SpecialRev : CommonRevenant
{
  Game Doom
  Species "Vile1"
  Health 80
  Radius 20
  Height 56
  Mass 500
  Speed 11
  PainChance 100
  RenderStyle Add
  Monster
  MeleeThreshold 236
  +MISSILEMORE 
  +FLOORCLIP
  +DONTHARMSPECIES
  +THRUSPECIES
  -COUNTKILL
  -ACTIVATEMCROSS
  +notrigger
  SeeSound "skeleton/sight"
  PainSound "skeleton/pain"
  DeathSound "skeleton/death"
  ActiveSound "skeleton/active"
  MeleeSound "skeleton/melee"
  HitObituary "%o was agitated by a revenant."
  Obituary "%o had a meeting with purple archviles personal assistants"
  Meleerange 88
  tag "Ghost agitation"
 States
  {
   See:
     SKEL AABBCCDDEEFF 2 A_Chase
	 			TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 SKEL A 0 A_JumpIfMasterCloser(1000,"See")
     SKEL A 1 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
	 SKEL A 1
   loop
 }
}



ACTOR SparkPuff1
{
  Game Doom
  +NOBLOCKMAP
  +NOGRAVITY
  +SPAWNFLOAT
  +NOINTERACTION
  RenderStyle Add
  Speed 1
  Alpha 0.95
  VSpeed 4
  Mass 2
  States
  {
  Spawn:
    PUFF A 4 Bright
    PUFF B 4 Bright
	PUFF A 4 Bright
    PUFF B 4 Bright
    Stop
  }
}

// // // // // // // // // // //

ACTOR YellowArch : Archvile
{
  Game Doom
  Health 1333
  Species "vile1"
  BloodColor "Yellow"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 18
  PainChance 4
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +THRUSPECIES
  +DontharmClass
  +Dontharmspecies
  -NORADIUSDMG
  +NOFEAR
  RenderStyle "Add"
  SeeSound "vile/sight"
  PainSound "vile/pain"
  DeathSound "vile/death"
  ActiveSound "vile/active"
  MeleeSound "vile/stop"
  DropItem "CH_SoulSphere", 64
  DropItem "BackPack", 128
   DropItem "Backpack", 128
  DropItem "BackPack"
  DropItem "HealthBundle"
  Obituary "%o met the terror that is the (more yellow than) Orange Archvile"
  Translation "48:63=[255,230,125]:[141,103,33]", "64:79=[236,173,79]:[112,62,16]", "13:15=[85,67,6]:[140,83,26]", "128:143=[241,202,65]:[99,58,18]", "144:151=[118,68,22]:[74,41,26]","168:191=160:167"
  Var Int User_Summon2;
  tag "Golden Archvile"
  States
  {
  Spawn:
    SKUL A 0 Bright A_Spawnitemex("ArchSpawnerOrb",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	SKUL A 1 Bright A_Spawnitemex("ArchSpawnerOrb",0,5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	SKUL A 1 Bright A_Spawnitemex("ArchSpawnerOrb",5,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	SKUL A 1 Bright A_Spawnitemex("ArchSpawnerOrb",-5,5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	SKUL A 1 Bright A_Spawnitemex("ArchSpawnerOrb",0,5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	SKUL A 1 Bright A_Spawnitemex("ArchSpawnerOrb",5,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
  Idle:
    VILE AB 10 A_Look
				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    VILE AABBCC 2 a_vilechase
					TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE DDEEFF 2 A_VileChase
					TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_Jump(11,"Summon")
    Loop
  Missile:
  				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE G 0 A_Jump(64,"Fires")
    VILE G 0 A_Jump(255, "Fires","Summon")
	Goto See
  Fires:
    VILE G 0 Bright A_VileStart
    VILE G 13 Bright A_FaceTarget
    VILE H 6 Bright A_VileTarget("ArcRing1")
    VILE IJKLM 7 Bright A_FaceTarget
	VILE N 7 Bright A_VileTarget("ArcRing1")
	VILE O 0 Bright A_CheckSight("See")
    VILE O 7 Bright A_VileTarget("ArcRing2")
	VILE O 4 Bright A_Custommissile("ArcRing2",12,0,random(-3,3))
	VILE O 2 Bright A_Custommissile("ArcRing2",12,0,random(-3,3))
    VILE P 12 Bright
    Goto See
  Summon:
    VILE G 0
    VILE G 1 A_JumpIf(User_Summon2>=8, "See")
    VILE G 8 A_Facetarget
	VILE G 8 A_Playsound("Vile/sight")
	VILE H 7  A_SetUserVar("User_Summon2",User_Summon2+1)
	VILE IJKH 11 Bright A_Facetarget
	VILE G 3 Bright A_SpawnitemEx("ArchSpawnerOrb",random(-24,24),random(-24,24),6,SXF_NOCHECKPOSITION|SXF_SETMASTER) 
	VILE G 2 Bright A_SpawnitemEx("ArchSpawnerOrb",random(-24,24),random(-24,24),6,SXF_NOCHECKPOSITION|SXF_SETMASTER) 
	VILE G 1 Bright A_SpawnitemEx("ArchSpawnerOrb",random(-24,24),random(-24,24),6,SXF_NOCHECKPOSITION|SXF_SETMASTER)
	VILE P 2
	Goto See
  Heal:
	VILE A 1 A_SpawnItemEx("ArcRing1",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
	VILE A 1 A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
    VILE "[\]" 10 Bright 
	VILE A 1 Bright A_SpawnitemEx("ArchSpawnerOrb",random(-24,24),random(-12,12),6,SXF_NOCHECKPOSITION|SXF_SETMASTER)
    Goto See
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
		TNT1 A 0 A_die
	Stop
	
  Pain.fire:
    VILE Q 0 A_Jump(24,"Summon")
  Pain:
  				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Setuservar("User_Summon2", User_Summon2-4)
    VILE Q 5 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    VILE Q 7 A_Killchildren
    VILE R 7 A_Scream
    VILE S 7 A_NoBlocking
    VILE TUVWXY 7
    VILE Z -1
    Stop
  }
}

ACTOR ArcRing1
{
  Game Doom
  Radius 6
  Height 8
  Speed 8
  Projectile
  +Floorhugger
  +Thruactors
  +RANDOMIZE
  +NoInteraction
  RenderStyle Add
  SeeSound "Fire/fire3"
  Alpha 0.75
  Scale 1
  States
  {
  Spawn:
    RNGG ABCDABCDABCD 3 Bright 
	RNGG ABCDABCDABCD 3 Bright
    Goto Death
  Death:
    RNGG A 0 A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
    RNGG ABCD 4 Bright
   Stop
  }
}

ACTOR ArcRing2
{
  Game Doom
  Radius 6
  Height 8
  Speed 18
  Mass 999999
  gravity 10
  Projectile
  -nogravity
  +bounceonfloors
  +Thruactors
  +RANDOMIZE
  +Bounceonwalls
    +dontblast
  BounceCount 999
  Bouncetype hexen
  Bouncefactor 1
  wallbouncefactor 0.9
  RenderStyle Add
  SeeSound "Fire/fire3"
  Alpha 0.75
  Scale 1
  States
  {
  Spawn:
    RNGG A 0 
	Goto Fly
	Fly:
	TNT1 A 0 A_changeflag("floorhugger",true)
	RNGG A 1 bright A_changeflag("nogravity",true)
	TNT1 A 0 A_changeflag("floorhugger",false)
	RNGG A 0 bright A_changeflag("nogravity",false)
    TNT1 A 0  A_SetScale(0.7,1.44)
    RNGG BB 1 Bright A_Wander
	RNGG C 1 Bright A_CustomMissile("FireHKBall1",4,random(-20,20), CMF_AIMOFFSET,random(0,360), random(0,360))
	RNGG C 1 Bright A_SpawnItemEx("ArchRingHelp",0,0,3,0,0,0,0,SXF_NOCHECKPOSITION,128)
    	TNT1 A 0 A_changeflag("floorhugger",true)
	RNGG D 1 bright A_changeflag("nogravity",true)
	TNT1 A 0 A_changeflag("floorhugger",false)
	RNGG A 0 bright A_changeflag("nogravity",false)
	 TNT1 A 0  A_SetScale(1.0,1.0)
	RNGG D 1 Bright A_Explode(random(5,12),24)
	RNGG D 0 Bright A_Jump(6,"Death")
    Loop
	
  Death:
    TNT1 A 0 a_stop
    TNT1 A 0 A_changeflag("floorhugger",true)
    RNGG ABCD 4 Bright 
	RNGG C 0 Bright
    RNGG C 0 Bright 
	stop
   }
}

ACTOR ArchRingHelp
{
  Game Doom
  Health 9999
  Monster
  Radius 12
  Height 2
  -ACTIVATEMCROSS
  -CountKill
  -shootable
  +Notarget
  +nevertarget
  +Thruactors
  +invisible
  +Noclip
  Speed 4
  Mass 5000
  States
  {
    Spawn:
	TNT1 A 0
	TNT1 A 0 
	Goto See
 	See:
	RMGG A 0
	RNGG A 0 A_Radiusgive("GrowRaisin",60,RGF_MONSTERS|RGF_CORPSES,1)
	RNGG A 3  Bright A_VileChase
	RMGG A 0 a_checksight("Death")
	RNGG A 3  Bright A_VileChase
	RMGG A 0 a_checksight("Death")
	RNGG A 3  Bright A_VileChase
	RMGG A 0 a_checksight("Death")
	RNGG A 3  Bright A_VileChase
	RMGG A 0 a_checksight("Death")
	goto death
	Heal:
	BBOM CDE 2 Bright
   goto death
	Death:
	TNT1 A 2
	stop
  }
}


ACTOR ArchSpawnerOrb
{
  Game Doom
  Health 13
  Monster
  Radius 17
  Height 13
  +NOGRAVITY
  +SPAWNFLOAT
  +noblood
  +notrigger
  +Missilemore
  +missileevenmore
  -ACTIVATEMCROSS
  -CountKill
  +LookAllAround
  +Thruactors
  RenderStyle Add
  ActiveSound "vile/active"
  Speed 33
  FloatSpeed 33
  Scale 0.75
  Alpha 0.95
  Mass 2
  States
  {
  Spawn:
    VIOB A 1 Bright A_SetScale(0.75,0.65)
    VIOB B 1 Bright A_Wander
	VIOB C 1 Bright A_Look
	VIOB D 1 Bright A_SetScale(0.75,0.75)
    VIOB E 3 Bright A_Wander
	VIOB F 1 Bright A_Look
	VIOB G 1 Bright A_SetScale(0.65,0.75)
	VIOB H 1 BRIGHT  A_Wander
	VIOB I 1 BRIGHT A_Look
	VIOB J 1  BRIGHT A_SetScale(0.65,0.75)
    Loop
  See:
    VIOB A 1 Bright A_SetScale(0.75,0.65)
    VIOB B 1 Bright A_Wander
	VIOB C 1 Bright A_chase
	VIOB D 1 Bright A_SetScale(0.75,0.75)
    VIOB E 3 Bright A_Wander
	VIOB F 1 Bright A_chase
	VIOB G 1 Bright A_SetScale(0.65,0.75)
	VIOB H 1 BRIGHT  A_Wander
	VIOB I 1 BRIGHT A_chase
	VIOB J 1  BRIGHT A_SetScale(0.65,0.75)
	Loop
  Missile:
    VIOB A 1 Bright //A_SetSpeed(40)
	VIOB A 2 Bright A_Wander
	VIOB C 2 Bright 
    VIOB E 2 Bright A_CheckSight("FireIt")
	VIOB G 2 Bright A_Wander
	VIOB I 2 Bright 
  Goto Missile+1
	FireIt:
	VIOB B 1 A_SpawnItemEx("ArchvileFire",0,0,3,0,0,0,SXF_NOCHECKPOSITION) 
    VIOB B 1 A_SpawnItemEx("RandomizerArc",0,0,6,0,0,0,SXF_NOCHECKPOSITION) 
	TNT1 A 0 a_die
	Stop
  Death:
    MISL BCD 3 bright
	Stop
  }
}
actor RandomizerArc : RandomSpawner
{
    DropItem "CommonImp", 255, 439
    DropItem "GreenImp", 255, 270
    DropItem "BlueImp", 255,  120
    DropItem "PurpleImp", 255, 83
	DropItem "YellowImp", 255, 47
	DropItem "CommonZombie", 255, 439
    DropItem "GreenZombie", 255, 270
    DropItem "BlueZombie", 255,  120
    DropItem "PurpleZombie", 255, 83
	DropItem "YellowZombie", 255, 47
    DropItem "CommonSG", 255, 439
    DropItem "GreenSG", 255, 270
    DropItem "BlueSG", 255,  120
    DropItem "PurpleSG", 255, 83
	DropItem "YellowSG", 255, 47
	DropItem "CommonRevenant", 255, 666
    DropItem "GreenRevenant", 255, 270
    DropItem "BlueRevenant", 255,  120
    DropItem "PurpleRevenant", 255,  90
	DropItem "CommonBaron", 255, 439
    DropItem "GreenBaron", 255, 270
    DropItem "BlueBaron", 255,  120
    DropItem "PurpleBaron", 255, 83
	DropItem "YellowBaron", 255, 47
	DropItem "CommonCGuy", 255, 439
    DropItem "GreenCGuy", 255, 270
    DropItem "BlueCGuy", 255,  120
    DropItem "PurpleCGuy", 255, 83
	DropItem "YellowCGuy", 255, 47
	DropItem "CommonRevenant", 255, 666
	DropItem "CommonLSoul", 255, 439
    DropItem "GreenLSoul", 255, 270
    DropItem "BlueLSoul", 255,  120
    DropItem "PurpleLSoul", 255, 83
	DropItem "YellowLSoul", 255, 47
	DropItem "CommonCaco", 255, 439
    DropItem "GreenCaco", 255, 270
    DropItem "BlueCaco", 255,  120
    DropItem "PurpleCaco", 255, 83
	DropItem "YellowCaco", 255, 47
	DropItem "CommonHK", 255, 439
    DropItem "GreenHK", 255, 270
    DropItem "BlueHK", 255,  120
    DropItem "PurpleHK", 255, 83
	DropItem "YellowHK", 255, 47
	DropItem "CommonDemon", 255, 439
    DropItem "GreenDemon", 255, 270
    DropItem "BlueDemon", 255,  120
    DropItem "PurpleDemon", 255, 83
	DropItem "YellowDemon", 255, 47
    DropItem "CommonArch", 255, 180
}

//A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))

/////////

Actor SpecialVile : CommonArch
{
  Species "Vile1"
  Monster
  +THRUSpecies
  -COUNTKILL
  -ACTIVATEMCROSS
  +notrigger
  Renderstyle "Add"
  Alpha 1
  Obituary "%o ala Vile, medium rare."
  Meleerange 88
  Tag "ArchArchvile"
  States
  {
   See:
     VILE AABBCCDDEEFF 2 A_VileChase
	 				TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 VILE A 0 A_JumpIfMasterCloser(1000,"See")
     VILE A 1 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
	 VILE A 1
   loop
   }
}

Actor RedArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_Red") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Red") == 2, "Second") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("RedArch3",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Second:
TNT1 A 0 A_Jump(256,"First","Third")
Stop
Third:
TNT1 A 0 A_SpawnitemEx("RedArch2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

Actor RedArch2

{
  Obituary "%o got fried up nicely by a Red Archvile"
  Health 1480
  Radius 20 
  Height 56 
  Mass 500 
  Speed 17 
  PainChance 10
  BloodColor "08 08 08"
  DamageFactor "Extinguishing", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  DamageFactor "Fire", 0.2
  DamageFactor fire, 0.2
  Monster
  +FloorClip
  +NoTarget
  -NoRadiusDmg
  +MissileMore
  +DontHarmSpecies
  +dontharmclass
  +Nofear
  +quicktoretaliate
  SeeSound "Monster/diasit" 
  PainSound "Monster/diapai" 
  DeathSound "Monster/diadth" 
  ActiveSound "Monster/diaact" 
  DropItem "CH_SoulSphere", 68
  DropItem "BackPack", 128
   DropItem "Backpack"
    DropItem "Backpack"
	 DropItem "Backpack",128
  DropItem "HealthBundle"
  DropItem "CH_Bluearmor", 74
  tag "Infernovile"
  States 
  { 
  Spawn: 
    DIAB AB 10 A_Look 
					TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  See: 
    DIAB AABBCC 2 A_Chase("","Missile",CHF_RESURRECT)
						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	DIAB DDEEFF 2 A_Chase("","Missile",CHF_RESURRECT)
						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  Missile:
    DIAB A 0
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    DIAB A 0 A_JumpIfCloser(420,"Breath")
	DIAB A 0 A_Jump(256,"Classical","Meteorr")
	Goto see
  Breath:
    DIA2 A 0 A_PlaySound("Spell/SpellCast1")
    DIA2 A 9 A_FaceTarget 
	DIA2 C 5 A_FaceTarget
	DIAB A 0 A_FaceTarget
	DIAB ACE 2 A_custommissile("ReABreath",38,0,random(-5,5))
	DIAB A 1 A_CheckRange(420,"See")
	DIAB A 1 A_Monsterrefire(128,"See")
	Goto Breath+3
  Meteorr:
    DIAB HH 3 Bright A_FaceTarget
	DIAB I 6 Bright A_Custommissile("BaronRing",64,0)
	DIAB PON 7 Bright A_FaceTarget
	DIAB N 0 Bright A_Custommissile("ReAComet",42,0)
	Goto See
  Classical:
    DIAB G 0 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 A_CustomMissile("DFire", 32, 0, 0)
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB G 0 Bright     
	Goto See
	
				 			   	 			Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	Stop
	
  Pain: 
    DIAB Q 5 
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    DIAB Q 5 A_Pain 
    Goto See 
  Heal:
    DIA2 A 0
    DIA2 A 0  A_Radiusgive("GrowRaisin",100,RGF_MONSTERS|RGF_CORPSES,3)
    DIA2 A 10 Bright  A_SpawnItemEx("ArcRing1",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
	DIAB B 2 Bright 
    DIA2 BB 5 Bright  
    DIA2 C 4 Bright 
	DIA2 CC 6 A_Spawnitemex("ArchSpawnerOrb",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    DIAB Q 7 
    DIAB R 7 A_Scream 
    DIAB S 7 A_NoBlocking 
    DIAB TUVW 7 
    DIAB XY 5 
    DIAB Z -1 
    Stop    
  } 
}

Actor ReABreath
{
  Game doom
  Radius 6
  Height 6
  Speed 18
  Damage (Random(5,25))
  DamageType "Fire"
  Projectile
  Renderstyle Add
  Seesound "CacoFlame/Attack"
  DeathSound "Fire/fire5"
  Scale 1.7
  States
  {
  Spawn: 
    FLUM ABCDE 2 Bright 
	Goto death
  Death: 
    BBOM ABC 2 Bright A_setScale(0.6,0.6)
	BBOM DEFG 2 Bright A_Explode(random(1,5),64)
	Stop
  }
}

Actor ReAComet
{
  Radius 12
  Height 12
  Speed 28
  Damage (random(15,88))
  RenderStyle Add
  DamageType Fire
  Alpha 0.85
  Projectile
  +Bounceonwalls
  Bouncetype doom
  Bouncecount 2
  Bouncefactor 1.05
  Wallbouncefactor 1.1
  BounceSound "Fire/fire4"
  Seesound "weapons/firmfi"
  DeathSound "weapons/firex4"
  Scale 3
  States
  {
  Spawn:
    VBA3 AB 3 Bright A_SpawnItemEx("ReATrail", 0, 2, 0, 0, 0, 0, 0, 128)
    Loop
  Death:
    CBAL C 0 Bright A_changeflag(ismonster,true)
    CBAL C 0 Bright A_Jump(256,"See")
	See:
	CBAL C 0 //A_Setspeed(1)
	CBAL CDEFG 3 Bright A_Chase("","",CHF_RESURRECT)
	Stop
	Heal:
	CBAL CDEFG 1 Bright
    Stop
  }
}

ACTOR ReATrail
{
  Game Doom
  Radius 6
  Height 8
  Speed 28
  FastSpeed 38
  Damage (random(5,10))
  DamageType "Fire"
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 1
  Scale 0.7
  SeeSound "caco/attack"
  DeathSound "spell/Impact1"
  States
  {
  Spawn:
    STRS A 0 Bright 
    Goto Death
  Death:
    BBOM A 2 Bright
	BBOM B 2 A_SetTranslucent(0.65)
    BBOM CD 1 Bright A_explode(random(3,10),88)
    BBOM EFG 6 Bright A_explode(random(3,10),88)
   Stop
  }
}


Actor RedArch3
{
  Obituary "%o was charred up red by the bossy Red Archvile"
  Health 3200
  Species "Vile1"
  Radius 20 
  Height 56 
  Mass 500 
  Speed 15
  PainChance 3
  BloodColor "08 08 08"
   RadiusDamageFactor 0.33
  DamageFactor Fire, 0.5
  DamageFactor "Fire", 0.5
  DamageFactor "Heroic", 3.0
     Damagefactor "ice", 2.0
    Damagefactor ice, 2.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  PainChance "fire", 0
  PainChance fire, 0
  Monster
  +FloorClip
  +NoTarget
  +MissileMore
  +dontmorph 
  +Boss
  +DontHarmSpecies
  +DontHarmClass
  -NoRadiusDmg
  +NOFEAR
  SeeSound "Monster/diasit" 
  PainSound "Monster/diapai" 
  DeathSound "Monster/diadth" 
  ActiveSound "Monster/diaact"
  MeleeSound "vile/stop"
  DropItem "CH_MegaSphere", 64
  DropItem "BackPack", 128
   DropItem "BackPackBundle"

  DropItem "HealthBundle"
  DropItem "ArmorBundle"
  DropItem "CH_RocketBox", 128
  DropItem "CH_RocketBox", 128
  DropItem "CH_RocketBox", 128
  DropItem "CH_BFG9000", 24
  Var int User_Rage;
  tag "Grand Redfirevile"
  States 
  { 
  Spawn: 
    SKUL A 0
    SKUL A 1 Bright A_Spawnitemex("SpecialVile",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)
	SKUL A 1 Bright A_Spawnitemex("SpecialVile",0,5,-6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER|SXF_TRANSFERAMBUSHFLAG)
	SKUL A 0
	Goto Scripted
  Scripted:
    SKUL A 1 ACS_NamedExecuteAlways("AnnounceVile")
	Goto Idle
  Idle:
    DIAB AB 10 A_Look 
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  See: 
    DIAB AABBCC 2 a_chase
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	DIAB DDEEFF 2 A_Chase 
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop 
  Missile:

    DIAB G 0 Bright A_JumpIfHealthLower(1650,"AggroUP")
	  						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	DIAB G 0 Bright A_Jump(60,"Fires")
	DIAB G 0 Bright A_Jump(132,"Fires","SummonSouls","GroundVhirl")
    DIAB G 0 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 A_CustomMissile("DFire", 32, 0, 0)
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB G 3 Bright A_FaceTarget
    DIAB H 3 Bright A_FaceTarget
    DIAB I 3 Bright A_FaceTarget
    DIAB G 0 Bright      
    Goto See
  Fires:
    DIA2 A 2 Bright A_Custommissile("BaronRing",1,0)
    DIA2 ABC 10 Bright A_PlaySound("Spell/SpellCast1")
	DIAB PON 9 Bright A_FaceTarget
	DIAB I 6 Bright A_Custommissile("BaronRing",64,0)
	DIAB IH 7 Bright
	DIAB GHGH 2 Bright A_Custommissile("Dflare",random(20,46),0,random(-12,12))
	DIAB GHGH 1 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 2 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 1 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 2 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 2 Bright A_Custommissile("Dflare",random(20,46),0,random(-12,12))
	DIAB GHGH 1 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 2 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHGH 1 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB GHI 2 Bright A_Custommissile("Dflare",random(20,46),0,random(180,-180))
	DIAB I 1 Bright A_Jump(48,"GroundVhirl")
	DIAB I 1 Bright A_Jump(24,"SummonSouls")
	Goto See
  SummonSouls:
    DIA2 A 10 Bright A_FaceTarget
	DIAB B 2 Bright A_PlaySound("Forgotten/Pain")
    DIA2 BB 6 Bright  A_Spawnitemex("ArchSpawnerOrb",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
    DIA2 C 4 Bright A_FaceTarget
	DIA2 CC 6 A_Spawnitemex("ArchSpawnerOrb",0,-5,6,0,0,0,0, SXF_NOCHECKPOSITION|SXF_SETMASTER)
	Goto See
  GroundVhirl:
    DIA2 A 12 Bright A_FaceTarget
	DIA2 A 2 Bright A_Custommissile("BaronRing",64,0)
	DIA2 B 2 Bright A_FaceTarget
    DIA2 C 5 Bright
	DIA2 C 0 Bright A_Custommissile("ArcRing2",12,0,random(-13,-3))
	DIA2 C 0 Bright A_Custommissile("ArcRing2",12,0,random(3,13))
	Goto See
  AggroUP:
    DIAB G 1
	DIAB G 1 A_JumpIf(User_Rage >= 1, "Nah") 
	DIAB G 1
	DIAB G 0 A_ChangeFlag("NOPAIN", TRUE)
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 9 A_PlaySound("Monster/diasit")
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
	DIAB G 1 A_CustomMissile("SparkPuff1",34,0, CMF_AIMOFFSET,random(0,360), random(0,360))
    DIAB G 1 A_ChangeFlag("Missileevenmore", TRUE)
	DIAB G 1 A_SetUserVar("User_Rage", User_Rage+1)
	DIAB G 1
	Goto Missile+1
  Nah:
    DIAB G 1
	Goto Missile+1
  Pain: 
    DIAB Q 5 
							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    DIAB Q 5 A_Pain 
    Goto See 
  Death: 
    DIAB Q 7 
    DIAB R 7 A_Scream 
    DIAB S 7 A_NoBlocking 
    DIAB TUVW 7 
    DIAB XY 5 
    DIAB Z -1 
    Stop    
    
  } 
}

Actor DFire
{
  Obituary "%o was charred up red by Red Archvile"
  Radius 0
  Height 1
  Speed 0
  RenderStyle Add
  DamageType Fire
  ALPHA 1.00
  +NoGravity
  +SeekerMissile
  +NoTarget
  +NoDamageThrust
  States
  {
  Spawn:
    HLFR A 2 Bright A_StartFire
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR B 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR A 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR B 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR C 2 Bright A_FireCrackle
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR B 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR C 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR B 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR C 2 Bright A_Fire 
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR D 2 Bright A_Fire 
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR C 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR D 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR C 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR D 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR E 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR D 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR E 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(5, 32)
    HLFR D 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR E 2 Bright A_FireCrackle
    TNT1 A 0 Bright A_Explode(4, 32)
    HLFR F 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(3, 32)
    HLFR E 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(3, 32)
    HLFR F 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(3, 32)
    HLFR E 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(2, 32)
    HLFR F 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(2, 32)
    HLFR G 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(2, 32)
    HLFR H 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(1, 32)
    HLFR G 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(1, 32)
    HLFR H 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(1, 32)
    HLFR G 2 Bright A_Fire
    TNT1 A 0 Bright A_Explode(1, 32)
    HLFR H 2 Bright A_Fire
    Stop
  }
}

ACTOR DFlare
{
  Radius 5
  Height 5
  Speed 25
  Damage (random(10,38))
  RenderStyle Add
  DamageType Fire
  Alpha 0.85
  Projectile
  +ThruGhost
  Seesound "weapons/firmfi"
  DeathSound "weapons/firex4"
  States
  {
  Spawn:
    VBA3 AB 3 Bright A_SpawnItemEx("MFlareFX", 0, 0, 0, 0, 0, 0, 0, 128)
    Loop
  Death:
    CBAL CDEFG 3 Bright
    Stop
  }
}

Actor MFlareFX
{   
  Radius 0
  Height 1
  Speed 0
  Projectile
  RenderStyle Add
  Alpha 0.67
  States
  {
  Spawn:
    FDFX ABCDEF 4 Bright
    Stop 
  }
}


//============================================


ACTOR BVileCloud
{
    Radius 20
    Height 56
  	Speed 14
	Damage (random(1,2))
	DamageType Melee
	RenderStyle Stencil
	Alpha 1
	PROJECTILE
	+noclip
	states
	{
	Spawn:
                VILE A 1 //a_setspeed(12)
                VILE B 1 A_FadeOut(0.25)
				VILE C 1 //a_setspeed(8)
				VILE D 1 A_FadeOut(0.25)
				VILE E 1 A_FadeOut(0.25)
		Goto Death
		Death:
	    		VILE F 1 A_SpawnItemEx("ArchRingHelp",0,0,3,0,0,0,SXF_NOCHECKPOSITION) 
		Stop
		
	}
}


ACTOR BVileCloud2
{
    Radius 20
    Height 56
  	Speed 2
	RenderStyle Stencil
	Alpha 1
	PROJECTILE
	+noclip
	+nointeraction
	states
	{
	Spawn:
                VILE A 1 
                VILE B 1 A_FadeOut(0.15)
				VILE C 1 
				VILE D 1 A_FadeOut(0.15)
				VILE C 1 
				VILE E 1 A_FadeOut(0.15)
				VILE E 1 
				VILE F 1 A_FadeOut(0.15)
				VILE F 1 
		stop
	}
}

Actor EyeIseeViles : Inventory
{
  Inventory.MaxAmount 1
}



ACTOR BVileEye
{
	Radius 40
	Height 70
	Speed 1
	RenderStyle add
	Alpha 1.25
	scale 0.1
	monster
	-countkill
	+nointeraction
	+noclip
	translation "112:127=250:254"
	states
	{
	Spawn:
	TNT1 A 0
	Goto Live
	Live:
         BFE1 C 1 bright A_Warp(AAPTR_MASTER, 9, 5, 60, 0,WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)       
		 BFE1 B 0 bright a_spawnitemex("BVileDummy",0,0,1,0,0,0,0)
		 BFE1 B 1 bright A_Warp(AAPTR_MASTER, 9, 5, 60, 0,WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
		 BFE1 B 0 bright a_spawnitemex("BVileDummy",0,0,1,0,0,0,0)
		 BFE1 B 0 Bright a_JumpIfInventory("EyeIseeViles",1,"Death")
		loop
		Death:
		 TNT1 A 0
		Stop
	}
}

ACTOR BVileEye2
{
	Radius 40
	Height 70
	Speed 1
	RenderStyle add
	Alpha 1.25
	scale 0.1
	monster
	-countkill
	+nointeraction
	+noclip
	translation "112:127=250:254"
	states
	{
	Spawn:
	TNT1 A 0
	Goto Live
	Live:
         BFE1 C 1 bright A_Warp(AAPTR_MASTER, 9, -5, 60, 0,WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)       
		 BFE1 B 0 bright a_spawnitemex("BVileDummy",0,0,1,0,0,0,0)
		 BFE1 B 1 bright A_Warp(AAPTR_MASTER, 9, -5, 60, 0,WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
		 BFE1 B 0 bright a_spawnitemex("BVileDummy",0,0,1,0,0,0,0)
		 BFE1 B 0 Bright a_JumpIfInventory("EyeIseeViles",1,"Death")
		loop
		Death:
		 TNT1 A 0
		Stop
	}
}

actor BvileDummy
{
    Radius 1
	Height 1
    speed 1
	projectile
	+nointeraction
	+noclip
		states
	{
	Spawn:
         TNT1 A 0 bright 
		 Goto Death
		 Death:
		  TNT1 A 1
		  TNT1 A 1
		Stop
	}
}

Actor DarkFlameVile
{
   Radius 4
   Height 4
   Speed 7
   DamageType fire
   PROJECTILE
   +FLOORHUGGER
   -NOGRAVITY
   +DONTSPLASH
   +thruactors
   +seekermissile
   Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
   Scale 1.5
   Seesound "Bvile/Air1"
  States
   {
   Spawn:
   TNT1 A 0 
   goto Fly
   Fly:
   FTRA C 1 bright A_SeekerMissile(0,1)
   FTRA C 1 Bright A_Explode(random(4,20),32)
   FTRA C 0 bright A_spawnitemex("DarkFlameTrailVile",0,0,1,0,0,0,0)
   FTRA C 0 bright A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,random(-180,180),SXF_nocheckposition)
   FTRA C 1 Bright A_SeekerMissile(1,3)
   FTRA D 1 Bright A_Explode(random(4,20),32)
   FTRA C 0 bright A_spawnitemex("DarkFlameTrailVile",0,0,1,0,0,0,0)
   FTRA C 0 bright A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,random(-180,180),SXF_nocheckposition)
   FTRA E 1 Bright A_SeekerMissile(1,3)
   FTRA F 1 Bright A_Explode(random(4,20),32)
   FTRA C 0 bright A_spawnitemex("DarkFlameTrailVile",0,0,1,0,0,0,0)
   FTRA C 0 bright A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,random(-180,180),SXF_nocheckposition)
   FTRA E 1 bright A_SeekerMissile(1,3)
   FTRA D 1 Bright A_Explode(random(4,20),32)
   FTRA C 0 bright A_spawnitemex("DarkFlameTrailVile",0,0,1,0,0,0,0)
   FTRA C 0 bright A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,random(-180,180),SXF_nocheckposition)
   FTRA C 1 Bright A_SeekerMissile(1,3)
   FTRA C 1 Bright A_Explode(random(4,20),32)
   FTRA C 0 bright A_spawnitemex("DarkFlameTrailVile",0,0,1,0,0,0,0)
   FTRA C 0 bright A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,random(-180,180),SXF_nocheckposition)
    Loop
	Death:
	FTRA GHIJ 2 Bright A_spawnitemex("DFlameBoomVile",random(-128,128),random(-128,128),random(1,32),0,0,0,0,SXF_nocheckposition)
	TNT1 AAAA 0 bright A_spawnitemex("DarkFlameTrailVile",random(-32,32),random(-32,32),1,0,0,0,0)
	Stop
   }
}

ACTOR DarkFlameTrailVile
{
  Game Doom
  Health 9999
  Monster
  Radius 12
  Height 1
  Gravity 5
  -ACTIVATEMCROSS
  -CountKill
  -shootable
  +LookAllAround
  +Notarget
  +nevertarget
  +Thruactors
  +Noclip
  Damage 2
  Damagetype fire
  Speed 2
  Scale 1.25
  RenderStyle Translucent
  Alpha 0.65
  Mass 90000
  Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
  States
  {
    Spawn:
	RNGG A 0
	Goto See
 	See:
	FTRA C 0 A_spawnitemex("DFlamePuffVile",random(-16,16),random(-16,16),1,0,0,0,0)
	FTRA C 0 A_Radiusgive("GrowRaisin",60,RGF_MONSTERS|RGF_CORPSES,1)
	FTRA CDEFGH 8 Bright A_vilechase
	FTRA IJ 3 a_fadeout(0.25)
	Goto death
	
	death:
	TNT1 A 0
	TNT1 A 0 a_die
	TNT1 A 0
	Stop
	
	Heal:
	FTRA IJ 1 Bright
    goto death
  }
}

ACTOR DFlamePuffVile
{
   Radius 1
   Height 1
   Speed 8
   RENDERSTYLE ADD
   ALPHA 1.25
   PROJECTILE
   +FLOORHUGGER
   -NOGRAVITY
   +DONTSPLASH
   +nointeraction
   +thruactors
   Scale 1
   Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
   States
   {
   Spawn:
   FTRA A 0 
   goto fly
   fly:
      FTRA ABCDEFGHIJ 4 Bright a_setangle(random(-360,360))
      stop
   }
}

ACTOR DFlameBoomVile
{
  Game Doom
  Radius 8
  Height 8
  Speed 4
  DamageType "Fire" 
  Projectile
  +floatbob
  +thruactors
  Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
  scale 0.75
  States
  {
  Spawn:
  TNT1 A 0
    Goto Death
  Death:
    MISL B 8 Bright A_Explode(random(12,42),42)
    MISL C 6 Bright a_playsound("weapons/rocklx")
    MISL D 4 Bright
    Stop
  }
}

Actor BVileOrb1
{
  Game Doom
  Radius 8
  Height 9
  Speed 6
  Damage (Random(12,45))
  DamageType "Fire"
  Projectile
  +BOUNCEONWALLS
  bouncefactor 1.2
  bouncetype Hexen
  Wallbouncefactor 1.2
  BounceCount 6
  SeeSound "caco/attack"
  DeathSound "caco/shotx"
  Translation "32:47=0:0", "168:191=5:8", "208:223=109:112", "231:231=250:250"
  States
  {
  Spawn:
    BAL2 A 6 bright
	Goto Fly
	Fly:
	BAL2 AB 8 Bright a_spawnitemex("BVileOrb2",0,0,1)
    Loop
  Death:
    BAL2 C 6 bright a_setscale(2,2)
	BAL2 DE 6 Bright a_explode(random(12,64),64)
   Stop
  }
}

Actor BVileOrb2
{
  Game Doom
  Radius 8
  Height 9
  Speed 2
  Projectile
  +nointeraction
  RenderStyle Add
  Alpha 0.85
  Scale 0.85
  Translation "32:47=0:0", "168:191=5:8", "208:223=109:112", "231:231=250:250"
  States
  {
  Spawn:
	BAL2 AB 6 Bright 
    Goto Death
  Death:
    BAL2 A 6 bright A_setscale(0.6,0.6)
	BAL2 B 6 bright A_setscale(0.35,0.35)
	BAL2 A 6 bright A_setscale(0.2,0.2)
   Stop
  }
}

ACTOR DFlamePuffVile2
{
   Radius 1
   Height 1
   Speed 7
   RENDERSTYLE ADD
   ALPHA 1.25
   PROJECTILE
   -NOGRAVITY
   +floatbob
   +DONTSPLASH
   +nointeraction
   +thruactors
   Scale 1
   Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
   States
   {
   Spawn:
   FTRA A 0 
   goto fly
   fly:
      FTRA ABCDEFGHIJ 4 Bright
      stop
   }
}

Actor BlackArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_BlackBossy") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("BlackVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("RedArch",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

ACTOR BlackVile
{
  Game Doom
  Health 7750
  Species "vile1"
  BloodColor "Black"
  DamageFactor "Heroic", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Radius 20
  Height 56
  Mass 500
  Speed 17
  PainChance 8
  Renderstyle Stencil
  Alpha 0.5
  Monster
  +QUICKTORETALIATE
  +FLOORCLIP
  +NOTARGET
  +Dontharmspecies
  +DONTHARMCLASS
  +dontmorph 
  +DONTDRAIN
  +Boss
  +CANTSEEK
  +SEEINVISIBLE
  +notimefreeze
  +nofear
  -noradiusdmg
  SeeSound "Bvile/Air6"
  PainSound "Bvile/Air5"
  DeathSound "Bvile/Air4"
  ActiveSound "Bvile/Air3"
  DropItem "CH_MegaSphere"
  DropItem "BackPack"
   DropItem "BackPack"
    DropItem "BackPackBundle"

  DropItem "CH_Berserk"
  DropItem "CH_BFG9000", 128
  DropItem "CH_BlueArmor", 128
    DropItem "CH_BlueArmor", 128
	  DropItem "CH_BlueArmor", 64
    Dropitem "RareArmorPool", 128
  Dropitem "RLDemonicWeaponSpawner",12
  Dropitem "RLUniqueWeaponSpawner",24
  Obituary "%o existence was voided by the Black Vile"
  //Translation "48:63=[75,75,75]:[0,0,0]", "64:79=[32,32,32]:[3,3,3]", "128:143=[60,60,60]:[0,0,0]", "208:223=108:111", "144:151=108:111", "13:14=0:0", "15:15=111:111"
  Tag "Void Gazes Back"
  var int user_limit;
  States
  {
  Spawn:
    VILE A 0
	Goto Scripted
	Scripted:
	VILE A 0 
	VILE A 1 a_spawnitemex("BVileEye",0,4,64,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	VILE A 1 a_spawnitemex("BVileEye2",0,4,64,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	VILE A 0 
	VILE A 1 ACS_NamedExecuteAlways("AnnounceBVile")
	VILE A 0 
	Goto Idle
	Idle:
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
    VILE A 5 A_Look
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE B 5 A_Look
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	Loop
  See:
    VILE AA 1 A_Chase 
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE BB 1 A_Chase 
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_CustomMissile("BVileCloud",1,random(-5,5),0,CMF_AIMOFFSET,random(0,90))
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE CC 1 A_Chase 
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE DD 1 A_Chase
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_CustomMissile("BVileCloud",1,random(-5,5),0,CMF_AIMOFFSET,random(0,90))
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE EE 1 A_Chase 
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE FF 1 A_Chase
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 0 A_CustomMissile("BVileCloud",1,random(-5,5),0,CMF_AIMOFFSET,random(0,90))
    VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	Loop
  Missile:
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
        						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE A 8 a_facetarget 
	VILE A 0 a_jump(256,"GroundFlame","Balls","Summon")
	Balls:
	VILE M 6 A_facetarget
	VILE N 5 A_custommissile("BVileOrb1",32,0,random(-5,5))
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE M 3 A_facetarget
	VILE N 3 A_custommissile("BVileOrb1",32,0,random(-12,12))
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE M 3 A_facetarget
	VILE N 3 A_custommissile("BVileOrb1",32,0,random(-19,19))
	Goto See
	Summon:
	VILE G 0
	VILE G 0 A_jumpIf(user_limit>=1,"Balls")
	VILE G 12 a_playsound("Bvile/Air2", 7, 2, false, ATTN_NONE)
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
    VILE GGGGGGGGGGGGG 4 a_custommissile("DFlamePuffVile2",random(42,72),random(-34,34),random(-180,180),0,random(-64,64)) 
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE J 15 a_playsound("Bvile/Air1", 7, 2, false, ATTN_NONE)
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
    VILE "[\]" 15 
	VILE AA 0 a_spawnitemex("CommonRevenant",random(-24,24),random(-24,24),6,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	//a_spawnitemex("RedRevenant",random(-24,24),random(-24,24),6,0,0,0,0,SXF_TRANSFERRENDERSTYLE|SXF_SETMASTER|SXF_NOCHECKPOSITION)
	VILE AAAA 0 a_spawnitemex("MrBones",random(-24,24),random(-24,24),6,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	VILE GGGGGGGGGG 0 a_custommissile("DFlamePuffVile2",random(6,32),random(-34,34),random(-180,180),0,random(-64,64)) 
    VILE A 1 a_setuservar("user_limit",user_limit+2)
	Goto See
    GroundFlame:
	VILE G 8 A_facetarget
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE JJJJJJJJJ 1 a_custommissile("DFlamePuffVile2",random(4,42),0,random(-64,64),0,random(-64,64))
	VILE A 0  a_spawnitemex("BVileCloud2",random(-7,7),random(-7,7),1,frandom(-1.1,1.1),frandom(-1.1,1.1),0.1,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPITCH)
	VILE "[\]" 10 
	VILE A 0 a_custommissile("DarkFlameVile",3,23,12,CMF_AIMDIRECTION)
	VILE A 0 a_custommissile("DarkFlameVile",3,-23,-12,CMF_AIMDIRECTION)
	Goto See
  Pain:
    VILE Q 5 
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    VILE Q 5 A_Pain
	VILE Q 5 A_Jump(88,"Phase")
    Goto See
	Phase:
	VILE Q 1 //A_SetSpeed(99)
	VILE AAAAA 0 A_Wander
	VILE A 1  A_Wander
	VILE BBBBB 0 A_Wander
	VILE B 1  A_Wander
	VILE CCCCC 0 A_Wander
	VILE C 1  A_Wander
	VILE DDDDD 0 A_Wander
	VILE D 1  A_Wander
	VILE EEEEE 0 A_Wander
	VILE E 1  A_Wander
	VILE FFFFF 0 A_Wander
	VILE F 1  A_Wander
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	VILE Q 1 //A_SetSpeed(17)
	VILE Q 1 a_setuservar("user_limit",user_limit-1)
	Goto See
Death:
    VILE Q 7 
    VILE Q 7 A_Scream
    VILE Q 7 A_NoBlocking
	VILE QQ 1 A_RadiusGive("EyeIseeViles",64,RGF_NOSIGHT,2)
	VILE QQ 1 A_RadiusGive("EyeIseeViles",64,RGF_NOSIGHT,2)
	VILE Q 1 a_killchildren(extreme)
    VILE QQQQQQQ 7 A_Fadeout(0.1)
    Stop
  }
}


Actor WhiteArch
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_WhiteBossy") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("WhiteVile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("BlackArch",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

Actor VBtrail
{
  Radius 6
  Height 16
  Speed 18
  Projectile
  +Nointeraction
  RenderStyle Add
  Scale 0.75
  Alpha 0.6
  translation "168:191=80:95", "32:47=80:80", "208:223=168:168", "231:231=168:168", "160:167=80:95", "224:230=4:4"
  States
  {
  Spawn:
    FBXP ABC 3 Bright
    Goto Death
  Death:
    FBXP CBA 3 Bright
    Stop
  }
}

Actor VBtrail2
{
  Radius 6
  Height 16
  Speed 1
  Projectile
  +Nointeraction
  RenderStyle Add
  Scale 0.50
  Alpha 0.5
  translation "168:191=80:95", "32:47=80:80", "208:223=168:168", "231:231=168:168", "160:167=80:95", "224:230=4:4"
  States
  {
  Spawn:
    MANF ABAB 6 Bright
    Goto Death
  Death:
    MANF A 6 Bright a_setscale(0.5,0.3)
	MANF B 6 bright a_setscale(0.4,0.2)
	MANF A 6 bright a_setscale(0.3,0.1)
	MANF B 6 bright a_setscale(0.2,0.1)	
    Stop
  }
}



Actor VBtrail3 : VBtrail2
{
speed 20
}

Actor VBtrail4
{
  Radius 6
  Height 16
  Speed 1
  Projectile
  +Nointeraction
  RenderStyle Add
  Scale 0.30
  Alpha 0.3
  States
  {
  Spawn:
    MANF AB 6 Bright
    Goto Death
  Death:
	MANF B 6 bright a_setscale(0.3,0.2)
	MANF A 6 bright a_setscale(0.2,0.1)
	MANF B 6 bright a_setscale(0.1,0.1)	
    Stop
  }
}

Actor WVEyeGo : Inventory
{
  Inventory.MaxAmount 1
}

Actor WVileEye1
{
height 6
Radius 6
Damage (random(10,40))
speed 0
monster
-countkill
+seekermissile
+noclip
+SCREENSEEKER
scale 0.5
deathsound "Forgotten/Attack"
states
{
spawn:
WVEY FGO 7
goto set
set:
WVEY P 2 a_setscale(0.3,0.5)
goto seek
seek:
WVEY P 1 A_Warp(AAPTR_TARGET, 2,random(-24,24),random(42,78),0, WARPF_NOCHECKPOSITION)
WVEY P 3 a_spawnitemex("VBtrail4",0,-3,2)
TNT1 A 0 A_JumpIfInventory("WVEyeGo",1,"Charge")
loop
Charge:
WVEY P 1 A_FaceTracer
WVEY P 1 A_ChangeFlag(noclip,false)
WVEY P 2 //A_setspeed(21)
Goto Fly
Fly:
WVEY P 1 A_playsound("fire/fire1")
WVEY P 1 a_spawnitemex("VBtrail4",0,-3,2)
WVEY P 2 a_seekermissile(21,30,SMF_LOOK)
WVEY P 1 a_spawnitemex("VBtrail4",0,-3,2)
WVEY P 2 A_Weave(1,1,1,1)
WVEY P 1 a_spawnitemex("VBtrail4",0,-3,2)
loop
Death:
TNT1 A 0 A_setscale(1,1) 
SSUL ABCD 4 bright
stop
}
}

Actor WVileBolt1
{
  Game Doom
  Radius 6
  Height 16
  Speed 21
  FastSpeed 25
  Damage (random(10,50))
  DamageType "Plasma"
  Projectile
  RenderStyle Add
  Alpha 1
  SeeSound "baron/attack"
  DeathSound "baron/shotx"
translation "168:191=80:95", "32:47=80:80", "208:223=168:168", "231:231=168:168", "160:167=80:95", "224:230=4:4"
states
{
Spawn:
FATB A 1 bright a_spawnitemex("VBtrail",0,0,-1)
FATB B 1 bright
loop
TNT1 A 0 bright a_explode(random(10,25),32)
FBXP ABC 6 bright
stop
}
}

actor WVilequake
{

  Radius 1
  Height 1
  Speed 10
  MASS 9999
  Projectile
  -nogravity
  RenderStyle Add
  Scale 1
  Alpha 0.3
  States
  {
  Spawn:
    TNT1 A 0 Bright
    Goto Death
  Death:
   TNT1 A 20 Bright radius_quake(180,90,0,900,0)
   TNT1 A 0  a_viletarget("BrightUpVile")
   TNT1 A 20 Bright radius_quake(280,90,0,1200,0)
   TNT1 A 0  a_viletarget("BrightUpVile")
   TNT1 A 20 Bright radius_quake(300,90,0,3000,0)
   TNT1 A 0  a_viletarget("BrightUpVile")
    Stop
}
}

actor BrightUpVile {
  Projectile
  +NOBLOCKMAP
  +NOGRAVITY
  +ALLOWPARTICLES
  RenderStyle stencil
  Stencilcolor "White"
  Alpha 0.95
  Damage (random(2,20))
  Scale 2
  Speed 2
  DeathSound "deepone/active" //"queen/active"
  Mass 50
states
{
  Spawn:
  TNT1 A 0
  Goto AAA
  AAA:
      SPIR ABCDE 6 bright A_Warp(AAPTR_TRACER,2,random(-4,4),random(32,50), 0, WARPF_NOCHECKPOSITION)
	  TNT1 A 0 A_spawnitemex("WhiteVileResser")
	  SPIR ABCDE 6 bright A_Warp(AAPTR_TRACER,2,random(-4,4),random(32,50), 0, WARPF_NOCHECKPOSITION)
	  TNT1 A 0 A_spawnitemex("WhiteVileResser")
	   SPIR ABCDE 6 bright A_Warp(AAPTR_TRACER,2,random(-4,4),random(32,50), 0, WARPF_NOCHECKPOSITION)
	   Goto Death
  Death:
    SPIR ABCDE 6 bright A_Warp(AAPTR_TRACER,2,random(-4,4),random(32,50), 0, WARPF_NOCHECKPOSITION)
	TNT1 A 0 A_spawnitemex("WhiteVileResser")
    Stop
}
}

actor BrightUpVile2 {
  Projectile
  +NOBLOCKMAP
  +NOGRAVITY
  +ALLOWPARTICLES
  RenderStyle stencil
  Stencilcolor "White"
  Alpha 0.95
  Damage (random(5,30))
  Scale 1
  Speed 2
  DeathSound "deepone/active" //"queen/active"
  Mass 50
states
{
  Spawn:
  TNT1 A 0
  Goto AAA
  AAA:
      SPIR ABCDE 6 bright a_explode(random(1,3),32)
	  SPIR ABCDE 6 bright a_explode(random(1,3),32)
	   SPIR ABCDE 6 bright a_explode(random(1,3),32)
	   Goto Death
  Death:
    SPIR ABCDE 6 bright a_explode(random(1,3),32)
    Stop
}
}

ACTOR WhiteVileResser
{
  Game Doom
  Health 9999
  Monster
  Radius 32
  Height 1
  Gravity 5
  -ACTIVATEMCROSS
  -CountKill
  -SHOOTABLE
  +LookAllAround
  +Notarget
  +NEVERTARGET
  +Thruactors
  +Noclip
  +invisible
  Damage 0
  Speed 9
  Scale 1.25
  RenderStyle Translucent
  Alpha 0.01
  Mass 90000
  Translation "32:47=0:0", "176:191=5:8", "208:223=104:111", "224:231=105:105", "160:167=103:103"
  States
  {
    Spawn:
	RNGG A 0
	Goto See
 	See:
	FTRA C 0 A_Radiusgive("GrowRaisin",60,RGF_MONSTERS|RGF_CORPSES,1)
	FTRA CDEFGH 12 Bright A_Chase("","",CHF_RESURRECT)
	FTRA IJ 3 
	Goto death
	Heal:
	FTRA IJ 1 Bright 
   goto death
	Death:
	TNT1 A 0
	Stop
  }
}

Actor WVileEye2
{
height 12
Radius 8
health 999
speed 0
  monster
  -ACTIVATEMCROSS
  -CountKill
	+nointeraction
  +noblood
  +LookAllAround
  +Notarget
  +float
  +nogravity
  +floatbob
+noclip
SeeSound "vile/active"
states
{
spawn:
WVEY FGOP 12
goto set
set:
WVEY P 10 A_setscale(1,1)
WVEY P 10 A_setscale(0.9,1.0)
WVEY P 10 A_setscale(1,0.9)
TNT1 A 1
loop
death:
WVEY OGF 5
stop
}
}

Actor WVileEye3
{
height 12
health 999
Radius 8
speed 0
  monster
  -ACTIVATEMCROSS
  -CountKill
	+nointeraction
  +noblood
  +LookAllAround
  +Notarget
  +float
  +nogravity
  +floatbob
+noclip
SeeSound "vile/active"
states
{
spawn:
WVEY ABCD 12
goto set
set:
WVEY E 10 A_setscale(1,1)
WVEY E 10 A_setscale(0.9,1.0)
WVEY E 10 A_setscale(1,0.9)
TNT1 A 1
loop
Death:
WVEY DCBA 3
stop
}
}

ACTOR WvileSpot
{
  Game Doom
  Radius 12
  Height 12
  health 9999
  Speed 0
  Mass 255
  monster
  -ACTIVATEMCROSS
  -CountKill
  -shootable
  +invulnerable
  +noblood
  +LookAllAround
  +Notarget
  +nevertarget
  +Thruactors
  +missilemore
  +missileevenmore
  RenderStyle Stencil
  Stencilcolor "black"
  SeeSound "Fire/fire3"
  Alpha 1
  Scale 0.75
  var int user_count;
  var int user_ded;
  States
  {
  Spawn:
    RNGG A 0 
	Goto See
	See:
	TNT1 A 0
	Goto Set
	Set:
	TNT1 A 0 A_setuservar("user_count",user_count==0)
	Goto Charge
	Charge:
    RNGG A 5 bright 
	RNGG B 5 bright A_Chase
	RNGG C 5 Bright  A_Chase
	RNGG C 5 Bright A_Chase
	RNGG D 1 Bright A_SpawnItemEx("Whitevileresser",0,0,3,0,0,0,SXF_NOCHECKPOSITION)
	RNGG D 1 Bright A_setuservar("user_ded",user_ded+1)
	RNGG D 5 bright a_jumpif(user_ded>=20,"death")
    Loop
	Missile:
	TNT1 A 0 
	Goto v1
	v1:
	RNGG D 5 bright a_jumpif(user_count==1,"v2")
	RNGG D 3 bright a_spawnitemex("Wvileeye2",2,16,18,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	Goto charge
	v2:
	RNGG D 5 bright a_jumpif(user_count==2,"v3")
	RNGG D 3 bright a_spawnitemex("WVileEye3",2,-6,32,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
		v3:
	RNGG D 5 bright a_jumpif(user_count==3,"v4")
	RNGG D 3 bright a_spawnitemex("Wvileeye2",2,48,46,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
		v4:
	RNGG D 5 bright a_jumpif(user_count==4,"v5")
	RNGG D 3 bright a_spawnitemex("WVileEye3",-2,-24,64,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
		v5:
	RNGG D 5 bright a_jumpif(user_count==5,"v6")
	RNGG D 3 bright a_spawnitemex("Wvileeye2",2,32,78,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
		v6:
	RNGG D 5 bright a_jumpif(user_count==6,"v7")
	RNGG D 3 bright a_spawnitemex("WVileEye3",2,-32,78,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
		v7:
	RNGG D 5 bright a_jumpif(user_count==7,"ded7")
	RNGG D 3 bright a_spawnitemex("Wvileeye2",2,0,90,0,0,0,0,SXF_SETMASTER|SXF_NOCHECKPOSITION)
	RNGG D 1 bright A_setuservar("user_count",user_count+1)
	goto charge
  Death:
    RNGG ABCD 4 Bright 
	TNT1 A 0 A_jumpif(user_count>=7,"ded7")
	TNT1 A 0 A_jumpif(user_count>=6,"ded6")
	TNT1 A 0 A_jumpif(user_count>=5,"ded5")
	TNT1 A 0 A_jumpif(user_count>=4,"ded4")
	TNT1 A 0 A_jumpif(user_count>=3,"ded3")
	TNT1 A 0 A_jumpif(user_count>=2,"ded2")
	TNT1 A 0 A_jumpif(user_count>=1,"ded1")
	RNGG C 0 Bright a_killchildren(extreme)
    RNGG C 0 Bright 
	stop
	Ded1:
	    RNGG C 12 Bright 
				RNGG D 12 bright a_spawnitemex("MrBones",0,0,6)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded2:
	    RNGG C 12 Bright 
				RNGG D 12 bright a_spawnitemex("PurpleLSoul",0,0,6)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded3:
	    RNGG C 12 Bright 
					LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,6)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,0)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,-6)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,-12)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,12)	
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded4:
	    RNGG C 12 Bright 
				RNGG D 12 bright a_spawnitemex("CommonRevenant",0,0,6)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded5:
	    RNGG C 12 Bright 
				RNGG D 12 bright a_spawnitemex("PurpleRevenant",0,0,6)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded6:
	    RNGG C 12 Bright 
				RNGG D 12 bright a_spawnitemex("RedRevenant",0,0,6)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
		Ded7:
	    RNGG C 12 Bright 
				RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
								RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
												RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
																RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
																				RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
																								RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
																												RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
																																RNGG D 12 bright A_CustomRailgun(random(2,10),0,"none","red",RGF_FULLBRIGHT,1,12,"none",0,0,0,34,1,15,"none",0)
		RNGG C 0 Bright a_killchildren(extreme)
	stop
   }
}


Actor Whitevile
{

obituary "%o was terrified to death by white archvile"
health 13000
  Radius 20
  Height 56
  Mass 10
  Speed 40
painchance 64
SEESOUND "wizard/sight"
painsound "wizard/pain"
deathsound "wizard/death"
activesound "wizard/active"
MONSTER
  +float
  +QUICKTORETALIATE
  +NOTARGET
  +Dontharmspecies
  +DONTHARMCLASS
  +DONTDRAIN
  +Boss
  +CANTSEEK
  +SEEINVISIBLE
  +notimefreeze
  +dontmorph 
  +nofear
  +avoidmelee
  -noradiusdmg
  -nogravity
    DropItem "CH_MegaSphere"
  DropItem "BackPack"
    DropItem "BackPack"
    DropItem "BackPackBundle"

  DropItem "CH_Berserk"
  DropItem "CH_BFG9000"
    DropItem "CH_Berserk"
  DropItem "CH_BFG9000"
  DropItem "CH_Berserk"
  DropItem "CH_BlueArmor", 128
  DropItem "CH_BlueArmor", 128
  DropItem "CH_BlueArmor", 128
    DropItem "CH_BlueArmor", 128
  DropItem "CH_BlueArmor", 128
  DropItem "CH_BlueArmor", 128
    Dropitem "RareArmorPool"
  Dropitem "RLDemonicWeaponSpawner", 64
  Dropitem "RLLegendaryWeaponSpawner", 32
  Dropitem "RLUniqueWeaponSpawner",92
translation "48:63=[255,255,255]:[192,192,192]", "64:79=[205,205,205]:[13,13,13]", "144:151=0:0", "128:143=0:0", "13:15=0:0"
tag "Here I am"
var int user_courage;
var int user_hoho;

states
  {
	Spawn:
	TNT1 A 0
	TNT1 A 0
	Goto Scripted
	Scripted:
	TNT1 A 0
	TNT1 A 0 ACS_NamedExecuteAlways("AnnounceWVile")
	TNT1 A 0
	Goto Idle
	idle:
	LMWZ E 10 A_Look
	    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	loop
	See:
	LMWZ EEFF 1 a_chase
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ EEFF 1 A_chase
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 1 A_changeflag(Noclip,true)
	Goto Clippy
	Clippy:
	LMWZ E 0 A_spawnitemex("WhiteVileResser")
	LMWZ E 0 A_jumpif(user_courage>=160,"Agro2")
	LMWZ E 0 A_jumpif(user_courage>=100,"Agro")
	LMWZ E 0 A_jumpif(user_courage>=60,"Approach")
	LMWZ E 1 a_fastchase
	LMWZ E 1 A_facetarget
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.75)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.5)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.25)
	LMWZ E 3 a_stop
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.01)
	LMWZ EE 2 a_chase
	LMWZ E 0 A_checksight("nowander")
	LMWZ EEEEEE 10 a_wander
	LMWZ EEEEEE 10 a_wander
	LMWZ EE 2 a_chase
	LMWZ E 0 A_setuservar("User_courage",user_courage+1)
	LMWZ F 1 A_SetTranslucent(0.25)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.5)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.75)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(1)
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 15 A_stop
	loop
	Approach:
	LMWZ E 0 //A_setspeed(30)
	TNT1 A 0 A_spawnitemex("WhiteVileResser")
	LMWZ EE 6 a_chase 
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 0 A_setuservar("User_courage",user_courage+2)
	LMWZ E 5 a_fastchase
	LMWZ E 3 A_stop
	loop
	nowander:
	LMWZ EE 2 a_chase
	TNT1 A 0 A_spawnitemex("WhiteVileResser")
	LMWZ F 1 A_SetTranslucent(0.25)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.5)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(0.75)
	LMWZ E 1 a_chase
	LMWZ F 1 A_SetTranslucent(1)
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 0 A_setuservar("User_courage",user_courage+3)
	LMWZ E 15 A_stop
	Goto Clippy
	Agro:
	LMWZ E 0 //A_setspeed(30)
	TNT1 A 0 A_spawnitemex("WhiteVileResser")
	LMWZ E 0 A_changeflag(missilemore,true)
	LMWZ EE 6 a_chase 
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 4 A_fastchase
	LMWZ E 1 A_stop
	LMWZ E 0 A_setuservar("User_courage",user_courage+4)
	LMWZ E 5 a_chase
	LMWZ E 4 A_fastchase
	LMWZ E 1 A_stop
	loop
	Agro2:
	LMWZ E 0 //A_SetSpeed(38)
	TNT1 A 0 A_spawnitemex("WhiteVileResser")
	LMWZ E 0 A_changeflag(missileevenmore,true)
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 0 A_setuservar("User_courage",user_courage+100)
	LMWZ E 4 a_chase 
	LMWZ E 4 A_fastchase
	LMWZ E 4 a_chase 
	loop
	Missile:
	LMWZ E 0 A_SetTranslucent(1)
		    						TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 0 //A_JumpIf(user_hoho>=1,"EyeSeekers")
	LMWZ E 0 A_JumpifCloser(1500,"Choices2")
	LMWZ E 0 A_Jump(256,"Choices1")
	Goto Clippy
	Choices1:
	LMWZ E 0 A_Jump(256,"SpawnEye","Bolts")//,"EyeSees"
	Goto Clippy
	Choices2:
	LMWZ E 0 A_Jump(256,"Scream","SpawnEye","BoltVolley")//,"EyeSees"
	Goto Clippy
	SpawnEye:
	LMWZ EF 10 A_facetarget
	LMWZ GGG 5 bright A_spawnitemex("WVileSpot",random(-128,128),random(-128,128),1,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_NOCHECKPOSITION|SXF_Setmaster)
		LMWZ HG 12
	LMWZ E 2 A_setuservar("User_courage",user_courage-15)
	TNT1 AAA 0 A_spawnitemex("WhiteVileResser",random(-128,128),random(-128,128),1,0,0,0,0,SXF_NOCHECKPOSITION|SXF_Setmaster)
	Goto Clippy
	Bolts:
	LMWZ EF 12 A_facetarget
	LMWZ G 5 bright A_custommissile("WVilebolt1",42,0,random(-1,1))
	LMWZ G 5 bright A_custommissile("WVilebolt1",42,0,0)
	LMWZ G 5 bright A_custommissile("WVilebolt1",42,0,random(-1,1))
	LMWZ G 5 bright A_custommissile("WVilebolt1",42,0,random(-3,3))
	LMWZ HG 12
	LMWZ E 2 A_setuservar("User_courage",user_courage-10)
	Goto Clippy
		BoltVolley:
	LMWZ EFG 10 bright A_facetarget 
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,6)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,0)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,-6)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,-12)
	LMWZ G 0 bright A_custommissile("WVilebolt1",42,0,12)	
	LMWZ HG 12 
	LMWZ E 2 A_setuservar("User_courage",user_courage-15)
	Goto Clippy
	Scream:
	FLWM A 24 bright 
	FLWM A 0 A_checksight("See")
	FLWM A 24 bright
	FLWM A 0 A_checksight("See")
	FLWM B 14 bright a_spawnitemex("wvileQuake",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS )
	FLWM B 14 bright A_Playsound("Wvile/scream", 7, 2, false, ATTN_NONE)
	TNT1 AAAAAAAAA 0 A_spawnitemex("WhiteVileResser",random(-728,728),random(-728,728),1,0,0,0,0,SXF_NOCHECKPOSITION|SXF_Setmaster)
	TNT1 AAAA 0 A_spawnitemex("BrightUpVile2",random(-128,128),random(-128,128),random(1,12),0,0,0,0,SXF_NOCHECKPOSITION|SXF_Setmaster)
	FLWM C 12 bright  
		TNT1 AAAA 0 A_spawnitemex("BrightUpVile2",random(-328,328),random(-328,328),random(1,12),0,0,0,0,SXF_NOCHECKPOSITION|SXF_Setmaster)
	FLWM DE 10 bright 
		TNT1 AAAAAA 0 A_spawnitemex("WhiteVileResser",random(-128,128),random(-128,128),1,0,0,0,0,SXF_NOCHECKPOSITION|SXF_Setmaster)
	FLWM EDCBA 5 bright
	LMWZ E 0 A_setuservar("User_courage",user_courage-15)
	Goto Clippy
	//EyeSees:
	//LMWZ E 1 A_playsound("Forgotten/active")
	//LMWZ EFG 10 A_facetarget
	//TNT1 A 0 A_custommissile("WVileEye1",78,0)
	//TNT1 A 0 A_custommissile("WVileEye1",64,12)
	//TNT1 A 0 A_custommissile("WVileEye1",64,-12)
	//TNT1 A 0 A_custommissile("WVileEye1",48,24)
	//TNT1 A 0 A_custommissile("WVileEye1",48,-24)
	//TNT1 A 0 a_setuservar("user_hoho",user_hoho+1)
	//LMWZ HG 10
	//LMWZ E 2
	//Goto Clippy
	//EyeSeekers:
	//LMWZ G 5 bright a_facetarget
	//TNT1 A 0 A_radiusgive("WVEyeGo",320,RGF_MONSTERS,10)
	//LMWZ E 0 A_setuservar("User_courage",user_courage-10)
	//TNT1 A 0 a_setuservar("user_hoho",user_hoho-1)
	//Goto Missile
//	LMWZ E 0 A_SetShootable
//	LMWZ EFG 10 A_FaceTarget
//	LMWZ H 20 A_CustomMissile
//	LMWZ G 5
//        LMWZ E 5 A_UnSetShootable
//        LMWZ E 1 A_PlaySound 
	Goto See
	Pain:
	LMWZ I 3
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ E 0 A_setuservar("User_courage",user_courage+5)
	LMWZ I 5 A_Pain
	LMWZ I 3 A_jump(128,"Whatthe")
	Goto clippy
	whatthe:
	LMWZ F 1 A_changeflag(nopain,true)
    LMWZ F 1 A_SetTranslucent(0.66)
	LMWZ F 1 A_SetTranslucent(0.33)
	LMWZ F 1 A_SetTranslucent(0.01)
	LMWZ EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 A_wander
	LMWZ F 1 A_SetTranslucent(0.5)
	LMWZ F 1 A_SetTranslucent(1)
		    						TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	LMWZ F 1 A_changeflag(nopain,false)
	LMWZ E 0 A_setuservar("User_courage",user_courage-15)
	LMWZ F 4 A_stop
	Goto Clippy
	Death:
	LMWZ J 6 A_Scream
	TNT1 A 0 a_killchildren(extreme)
	LMWZ K 6 A_NoBlocking
	LMWZ LMNO 6
	LMWZ P -1
	Stop
  }
}