Actor NemesisExile : LegendaryVile 28016
{
  Health 4000
  Speed 25
  PainChance 5
  Bloodcolor "Black"
  DamageType "VileFires"
  DamageFactor 0.6
  DamageFactor "PlayerNemesisPlasma", 0.0
  DamageFactor "Explosion", 0.2
  DamageFactor "PlayerDTRG", 0.4
  DamageFactor "DTRailgun", 0.4
  DamageFactor "PDTPuff", 0.4
  DamageFactor "RailG", 0.3
  DamageFactor "PlayerPyro", 0.1
  DamageFactor "SoulToxic", 0.0
  +BRIGHT
  +FORCERADIUSDMG
  DropItem "NemesisHealthBonusMax" 256 32
  DropItem "NemesisArmorBonus32" 256
  DropItem "NemesisHealthBonusMax" 256 32
  DropItem "NemesisArmorBonus32" 256
  DropItem "NemesisSuperSphere" 160
  DropItem "LegendarySalvationSphere" 240
  DropItem "LegendaryRune" 230
  DropItem "LDemonAmmoBox" 256
  DropItem "LDemonAmmo" 256
  DropItem "BossLifeEssence" 256
  DropItem "BossArmorBonusMax" 256
  DropItem "Nemesis Rifle" 256
  DropItem "Nemesis Plasmatic Cannon" 256
  SeeSound "NemesisExile/Sight" 
  PainSound "NemesisExile/Pain" 
  DeathSound "NemesisExile/Death" 
  ActiveSound "NemesisExile/Active" 
  Obituary "%o fell victim to the abyss of the Nemesis Exile."
  Tag "\c[v9]Nemesis Exile\c-"
  var int user_missile;
  var int user_bomb;
  var int user_nemesisamount;
  var int user_deathtimer;
  var int user_deathtimeractive;
  States 
  { 
  Spawn:
  Idle:
    TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL A 10 A_Look 
    Loop 
  See:
	TNT1 A 0 A_JumpIf(user_deathtimeractive == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("NemesisDeathTimerForVexed",0)
	TNT1 A 0 A_SetUserVar("user_deathtimeractive",1)
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,741)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_JumpIfInventory("RunesCheck",1,2)
	TNT1 A 0 ACS_NamedExecuteWithResult("CheckRunes")
	TNT1 A 0 A_Jump(82,"Rush")
    NVIL A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL AA 2 A_VileChase
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL BB 2 A_VileChase
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL CC 2 A_VileChase
    NVIL A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL DD 2 A_VileChase
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL EE 2 A_VileChase
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL FF 2 A_VileChase
	TNT1 A 0 A_Jump(48,"Teleport")
    Loop
  Rush:
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostA",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL A 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostA",0,0,0,0,0,0,0,128)	
	TNT1 A 0 A_VileChase	
	NVIL A 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostB",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL B 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostB",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL B 1 A_VileChase	
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostC",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL C 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostC",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL C 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostD",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL D 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostD",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL D 1 A_VileChase	
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostE",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL E 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostE",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL E 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostF",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL F 1 A_VileChase
	TNT1 A 0 A_SpawnItemEx("NemesisExileGhostF",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_VileChase
	NVIL F 1 A_VileChase
	TNT1 A 0 A_JumpIfTargetinLOS("Missile")
	TNT1 A 0 A_Jump(28,"Teleport")
	TNT1 A 0 A_Jump(32,"See")
	Loop
  Teleport:
    NVI2 A 1 A_UnSetShootable
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NVI2 AAAAAABBBB 1 A_FadeOut(0.1,0)
	NVI2 B 2 
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    NVI2 B 1 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NVI2 BBBBBCCCCCC 1 A_FadeIn(0.1)
    NVI2 C 1 A_SetShootable
    Goto See
  Missile:
	TNT1 A 0 A_JumpIf(user_bomb == 1,2)
	TNT1 A 0 A_Jump(256,3)
	TNT1 A 0 A_Jump(128,2)
	TNT1 A 0 A_JumpIfCloser(400,"ChargedBomb")
	TNT1 A 0 A_JumpIf(user_bomb == 1,"MissileBomb")
	TNT1 A 0 A_Jump(60,"Bomb")
    TNT1 A 0 A_Jump(70,"EffectVoid","VeloFire","Catalyst"/*,"EnemySummon"*/)
    TNT1 A 0 A_Jump(40,"VileSummon","FlanVoid")
    TNT1 A 0 A_Jump(128,"Skullshots","ImitationSoul","Laser")
	Goto BasicVoid
  MissileBomb:
    TNT1 A 0 A_Jump(90,"EffectVoid","VeloFire","Catalyst"/*,"EnemySummon"*/)
    TNT1 A 0 A_Jump(80,"VileSummon","NemesisSummon","EffectVoid","FlanVoid")
    TNT1 A 0 A_Jump(150,"Skullshots","Laser")
	Goto BasicVoid
  BasicVoid:
    TNT1 A 0 A_FaceTarget
    NVIL G 10 A_PlaySound("exile/voidstart")
    NVIL H 8 A_VileTarget("NemesisVileFire1")
    NVIL IJ 8 A_FaceTarget
	TNT1 A 0 A_SetUserVar("user_missile",0)
	TNT1 A 0 A_JumpIfCloser(300,"TeleportVoid")
	TNT1 A 0 A_Jump(128,"TeleportVoid")
	NVIL KLM 8 A_FaceTarget
	NVIL N 4 A_FaceTarget
  BasicVoidLoop:
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,-1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,-1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,-1.2,"Legendary")
    NVIL N 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 4 A_VileAttack("vile/stop",10,50,70,1.2,"Legendary")
	Goto BasicVoidEnd
  BasicVoidEnd:
    NVIL P 20
    TNT1 A 0 A_Jump(64,"SkullShots","Laser","ImitationSoul")
    Goto See
  TeleportVoid:
    TNT1 A 0 A_UnSetShootable
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NVIL KKKKKKKKLL 1 A_FadeOut(0.1,0)
	NVIL L 2 
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    TNT1 A 0 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NVIL LLLLMMMMMMMM 1 A_FadeIn(0.1)
    TNT1 A 0 A_SetShootable
    NVIL N 4 A_FaceTarget
	Goto BasicVoidLoop
  SkullShots:
	NVIL GHIJKLMN 2 A_FaceTarget
	TNT1 A 0 A_SetUserVar("user_missile",0)
	TNT1 A 0 A_JumpIf(user_bomb == 1,"SkullShots2Loop")
  SkullShotsLoop:
	TNT1 A 0 A_JumpIf(user_missile >= 4,"SkullShotsEnd")
	TNT1 A 0 A_SetUserVar(user_missile,user_missile+1)
	TNT1 A 0 A_FaceTarget
	NVIL O 6 A_CustomMissile("NemesisExileSkullShot",34,0,random(-5,5))
	TNT1 A 0 A_FaceTarget
	NVIL N 6 A_CustomMissile("NemesisExileSkullShot",34,0,random(-5,5))
	Loop
  SkullShots2Loop:
	TNT1 A 0 A_JumpIf(user_missile >= 8,"SkullShotsEnd")
	TNT1 A 0 A_SetUserVar(user_missile,user_missile+1)
	TNT1 A 0 A_FaceTarget
	NVIL O 3 A_CustomMissile("NemesisExileSkullShot",34,0,random(-10,10))
	TNT1 A 0 A_FaceTarget
	NVIL N 3 A_CustomMissile("NemesisExileSkullShot",34,0,random(-10,10))
	Loop
  SkullShotsEnd:
	NVIL OP 5
    TNT1 A 0 A_Jump(64,"BasicVoid","Laser","ImitationSoul")
	Goto See
  ImitationSoul:
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	TNT1 A 0 A_CustomMissile("NemesisExileSoulGhost",40)
	NVIL GHIJKLMN 6 A_FaceTarget
	NVIL O 6 A_CustomMissile("VileNemesisSoulBigBall",34,0,0)
	NVIL P 6
	NVIL GHIJKLMN 5 A_FaceTarget
	NVIL O 5 A_CustomMissile("VileNemesisSoulBigBall",34,0,0)
	NVIL P 5
	NVIL GHIJKLMN 4 A_FaceTarget
	NVIL O 4 A_CustomMissile("VileNemesisSoulBigBall",34,0,0)
	NVIL P 4
	Goto See
  Laser:
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	NVIL GHIJKLMN 6 A_FaceTarget
    TNT1 A 0 A_PlaySound("FantasyStaff/Fire",7,1.0,0,0.2) 
	TNT1 A 0 A_SetUserVar("user_missile",0)
	TNT1 A 0 A_JumpIf(user_bomb == 1,"Laser2Loop")
  LaserLoop:
	TNT1 A 0 A_JumpIf(user_missile >= 20,"LaserEnd")
	TNT1 A 0 A_SetUserVar(user_missile,user_missile+1)
	TNT1 A 0 A_FaceTarget
	NVIL OOOO 1 A_CustomMissile("VileVexedNemesisImpLaser",34)
    TNT1 A 0 A_PlaySound("FantasyStaff/FireLoop",6,1.0,0,0.2)
	Loop
  Laser2Loop:
	TNT1 A 0 A_JumpIf(user_missile >= 30,"LaserEnd")
	TNT1 A 0 A_SetUserVar(user_missile,user_missile+1)
	TNT1 A 0 A_FaceTarget
	NVIL OOOO 1 A_CustomMissile("VileVexedNemesisImpLaser",34)
    TNT1 A 0 A_PlaySound("FantasyStaff/FireLoop",6,1.0,0,0.2)
	Loop
  LaserEnd:
    TNT1 A 0 A_Jump(64,"SkullShots","BasicVoid","ImitationSoul")
	Goto See
  FlanVoid:
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
    NVIL G 10 A_PlaySound("exile/voidstart")
    TNT1 A 0 A_VileTarget("NemesisExileFireFX3")
    NVIL H 2 A_VileTarget("NemesisExileFire3")
	NVIL IHIHIHIHIHIHIHIHIHIHIHIHIH 2
	Goto See
  EffectVoid:
    TNT1 A 0 A_FaceTarget
    NVIL G 10 A_PlaySound("exile/voidstart")
	TNT1 A 0 A_GiveToTarget("NemesisExileVoidEffect1",1)
    NVIL H 16 A_VileTarget("NemesisExileEffectFire")
    NVIL IJKLMN 16 A_FaceTarget
	TNT1 A 0 A_PlaySound("exile/voidend")
    NVIL O 12 A_VileAttack("vile/stop",30,70,70,1.0,"Legendary")
    NVIL P 20
    Goto See
  VeloFire:
	TNT1 A 0 A_FaceTarget
	NVIL G 10 A_VileStart
    NVIL H 8 A_VileTarget("NemesisExileFire2")
    NVIL IJKLMN 8 A_FaceTarget
	NVIL O 8 A_VileAttack("vile/stop",20,70,70,2.0,"Legendary")
    Goto See
  Catalyst:
	TNT1 A 0 A_FaceTarget
	NVIL G 10 A_VileStart
    NVIL H 10 A_VileTarget("NemesisVileSpikeSpawner")
    NVIL IJKLMNO 10 A_FaceTarget
    NVIL P 20
    Goto See
  Bomb:
	TNT1 A 0 A_JumpIf(user_bomb == 1,"EffectVoid")
	TNT1 A 0 A_PlaySound("NemesisExile/Charge",7)
	NVIL JKL 5
	TNT1 A 0 A_SetUserVar("user_missile",0)
  BombChargeLoop:
	TNT1 A 0 A_JumpIf(user_missile >= 80,"BombExplode")
	TNT1 A 0 A_SetUserVar(user_missile,user_missile+1)
	NVIL M 2 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_Explode(100,250,XF_NOTMISSILE)
	TNT1 A 0 A_SpawnItemEx("NemesisExileBombChargeSpawner")
	TNT1 A 0 A_SpawnItemEx("PBlackLightningSpawner",0,0,0,0,0,0,0,0,128)
	Loop
  BombExplode:
	TNT1 A 0 A_SetUserVar("user_bomb",1)
	TNT1 A 0 A_PlaySound("NemesisExile/Explosion",6)
	TNT1 A 0 A_GiveInventory("NemesisExileProtectionGiver")
	TNT1 A 0 ACS_NamedExecuteAlways("NemesisExileBomb")
	TNT1 A 0 A_Explode(3000,400,XF_NOTMISSILE)
	TNT1 A 0 A_Quake(7,70,0,2048,"none")
	TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleChunkSpawner")
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleExplode")
	TNT1 A 0 A_SpawnItemEx("PBlackHoleShockwave")
	NVIL JIH 3
	NVIL H 60
	Goto See
  ChargedBomb:
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	NVIL JKLMM 4
	TNT1 A 0 A_PlaySound("NemesisExile/Explosion2",6)
	TNT1 A 0 A_Explode(700,400,XF_NOTMISSILE)
	TNT1 A 0 A_Quake(7,70,0,2048,"none")
	TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleChunkSpawner")
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleExplode")
	TNT1 A 0 A_SpawnItemEx("PBlackHoleShockwave")
	NVIL JIH 3
	NVIL H 60
	Goto See
  EnemySummon:
    NVIL GGGGGGG 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("brain/spit")
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	NVIL HIJKL 3
	NVIL MMM 6 A_SpawnItemEx("SummonerCube",0,0,65,frandom(10,20),0,frandom(0,2),random(0,360),SXF_SETMASTER)
	Goto See
  VileSummon:
    TNT1 A 0 A_JumpIf(user_amount > 5,"VeloFire")
    NVIL GGGGGGG 2 A_FaceTarget
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	NVIL HIHIHIHIHIHIHIHI 2 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_JumpIf(user_bomb == 1,2)
	TNT1 A 0 A_Jump(256,3)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,180,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,90,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,-90,0)
	NVIL HIHIHIHIHIHIHIHI 2 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
  	TNT1 AAAAAAAA 0 A_CustomMissile("LegVileResRadius",8,0,random(0,359),0)
	TNT1 A 0 A_SetUserVar("user_amount",user_amount+1)
	NVIL HIHIHI 2 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
    Goto See
  NemesisSummon:
    TNT1 A 0 A_JumpIf(user_nemesisamount > 2,"VeloFire")
	TNT1 A 0 A_SetUserVar("user_nemesisamount",user_nemesisamount+1)
    NVIL GGGGGGG 2 A_FaceTarget
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySound("NemesisExile/Attack",1)
	NVIL HIHIHIHI 2 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
    NVIL JKLM 10 A_FaceTarget
	TNT1 A 0 A_PlaySound("brain/spit",7,1.0,0,ATTN_NONE)
	NVIL MMMMMMMMMM 5 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_PlaySound("brain/spit",7,1.0,0,ATTN_NONE)
	NVIL NNN 5 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_PlaySound("brain/spit",7,1.0,0,ATTN_NONE)
	NVIL OOO 5 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	NVIL P 30 A_SpawnItemEx("NemesisExileBigSummoner",0,0,20,15,0,0,0,0)
	Goto See
  Heal:
	TNT1 A 0 A_PlaySound("brain/spit")
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,0,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,20,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,40,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,60,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,80,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,100,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,120,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,140,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,160,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,180,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,200,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,220,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,240,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,260,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,280,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,300,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,320,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,340,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,360,0)
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 AA 2
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 AA 2
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 BB 2
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 BB 2
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 CC 2
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVI2 CC 2
    Goto See
  Pain: 
	TNT1 A 0 A_StopSound(7)
  	TNT1 A 0 A_Jump(90,"Teleport")	
    NVIL Q 5 
    NVIL Q 5 A_Pain 
    TNT1 A 0 A_Jump(128,"Missile")
    Goto Rush 
  Death:
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NoVexedBoys") == 1,4)
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem",1,"VexedSpawn")
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem2",1,"VexedSpawn")
	TNT1 A 0 A_JumpIf(user_deathtimer <= 15,"VexedSpawn")	
    NVIL Q 6 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
    NVIL R 5 A_Scream
    NVIL S 5 A_Fall
    NVIL TUV 5
	NVIL W 4 A_SpawnItem("BodyCrash",0,0,0,0)
    NVIL XY 4
	NVIL Z 100
	TNT1 A 0 A_SpawnItemEx("NemesisVileSpikeSpawner")
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,180,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,225,0)
	TNT1 A 0 A_SpawnItemEx("NemesisExileSummoners",0,0,20,30,0,0,305,0)
	TNT1 A 0 A_Jump(100,"MoreStuff")
    NVIL Z -1
    Stop
  MoreStuff:
	NVIL Z 100
	TNT1 A 0 A_SpawnItem("HellionSmokeAttack")
	NVIL ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ 1 A_SpawnItem("NemesisCYNItemRandomizer")
	NVIL ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ 1 A_SpawnItem("NemesisCYNItemRandomizer")
	NVIL Z 1 A_SpawnItem("NemesisHKSuperItemRandomizer")
	NVIL Z -1
	Stop
  VexedSpawn:
	NVIL Q 3 Bright A_Pain
	TNT1 A 0 A_PlaySound("brain/spit",7)
	NVIL QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NVIL QQQQQQQQQQQQ 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("VexedNemesisExileEvent",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	Stop
	}
}

Actor VileNemesisSoulBigBall : NemesisSoulBigBall { Damagetype "VileFires" }
Actor VileVexedNemesisImpLaser : VexedNemesisImpLaser { Damagetype "VileFires" }

ACTOR NemesisVileFire1 : LegVileFire1
{
  Scale 1.5
  States
  {
  Spawn:
    TNT1 A 0
    NVFI H 1 Bright A_PlaySoundEx("exile/voidsuck","Voice")
    NVFI GGHHFFEEFFEEFFEEFFDDEEDDEEDDCCDDCCDDCCBBCCBBCCBBAAAA 1 Bright A_Fire
	NVFI B 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CCBBCCB 1 Bright A_Fire
	NVFI B 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	NVFI CDEFGH 1 Bright
	TNT1 A 20
    Stop
	}
}

ACTOR NemesisExileFire2 : LegVileFire1
{
  Scale 1.15
  RenderStyle Translucent
  Alpha 0.75
  DamageType "VileFires"
  +FORCERADIUSDMG
  States
  {
  Spawn:
    TNT1 A 0
    NVF2 A 1 Bright A_PlaySoundEx("necghost/active","Voice",1) 
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
    NVF2 A 1 Bright A_Explode(random(6,10),62)
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 C 2 Bright A_Fire	
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
    NVF2 A 2 Bright A_Explode(random(6,10),62)
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 C 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 C 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)	
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 C 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)	
    NVF2 C 2 Bright A_Explode(random(6,10),62)
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
    NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 C 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 C 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 A 2 Bright A_Fire
	TNT1 A 0 A_SpawnItem("NemesisExileMagicSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Explode(random(6,10),62)
	NVF2 B 2 Bright A_Fire	
	TNT1 A 1 A_StopSoundEx("Voice")
	TNT1 A 1 A_PlaySound("exile/voidend")
	TNT1 A 0 A_PlaySound("brain/spit",1)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,0,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,20,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,40,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,60,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,80,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,100,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,120,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,140,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,160,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,180,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,200,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,220,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,240,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,260,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,280,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,300,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,320,0)
	TNT1 A 0 A_CustomMissile("LegVileResRadius",10,0,340,0)
	TNT1 A 1 A_CustomMissile("LegVileResRadius",10,0,360,0)
    Stop
  }
}

ACTOR NemesisExileMagicSmokeSpawner : RedParticleSpawner
{
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(CallAcs("LCAEffectCheck"),"Toaster")
    TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmoke",random(12,-12),random(12,-12),random(12,20),0,0,random(8,12),0,128,0)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmoke",random(24,-24),random(24,-24),random(2,10),0,0,random(2,6),0,128,0)
    TNT1 A 1
    Stop
  }
}

ACTOR NemesisExileFire3 : LegVileFire2
{
  +FORCERADIUSDMG
  States
  {
  Spawn:
    TNT1 A 0
    NFVI A 1 Bright A_PlaySoundEx("BFlan/Vile","Voice",1)
    NFVI ABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ 1 Bright A_Fire
    NFV0 AABBCCDD 1 Bright A_Fire
    NFVI ABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ 1 Bright A_Fire
    NFV0 AABBCCDD 1 Bright A_Fire
	NFVI A 1 Bright A_StopSoundEx("Voice")
	NFVI A 1 Bright A_PlaySoundEx("exile/voidend","Voice")
	TNT1 A 0 A_Explode(150,300,1)
	TNT1 A 0 Radius_Quake(5,15,0,20,0)
    TNT1 AAAAAAAA 0 A_SpawnItemEx ("2huBossDeathFlame", 0, 0, 0, random(-3,3), random(-3,3), random(-3,3), random (0, 360))
	TNT1 AAAAAAAA 0 A_CustomMissile("2huBossDeathFlame3", random(5, 55), 0, random(0,360), CMF_OFFSETPITCH, frandom(-40, 70))
	NFVI BBCCDDEE 1 Bright
	TNT1 A 20
    Stop
	}
}

ACTOR NemesisExileFireFX3 : NemesisExileFire3
{
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(Random(1,3),62)
    Stop
	}
}

ACTOR NemesisVileSpikeSpawner : LegVileFire1
{
  Scale 1.5
  var int user_loop;
  States
  {
  Spawn:
    TNT1 A 0 NoDelay A_PlaySound("NemesisExile/Scream",1)
	TNT1 A 0 A_JumpIf(user_loop >= 100,"Spawn2")
	TNT1 A 0 A_SetUserVar(user_loop,user_loop+1)
	TNT1 A 1 Light("SmallLegNemesisLight") A_Fire
    Goto Spawn+1
  Spawn2:
	TNT1 A 0 A_Quake(9,8,0,128,"None")
	TNT1 A 0 A_Explode(random(100,250),96,0)
	TNT1 A 0 A_PlaySound("StoneArmor/Destroy",CHAN_AUTO,1.5,0)
	TNT1 AAAAAA 0 A_SpawnItemEx("StoneBitsSpawner2",0,0,35,0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX",10,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 10 Light("SmallLegNemesisLight")
	TNT1 A 1 A_SpawnItemEx("NemesisCatalyst")
	Stop
	}
}

Actor NemesisCatalyst
{
  Health 500
  Height 128
  Radius 10
  Mass 0x7FFFFFFF
  +ISMONSTER
  -COUNTKILL
  +LOOKALLAROUND
  +QUICKTORETALIATE
  +FORCERADIUSDMG
  +FLOORCLIP
  +SOLID
  +NOTARGET
  +NOBLOOD
  +SHOOTABLE
  +FLOORHUGGER
  +MOVEWITHSECTOR
  +THRUSPECIES
  +DONTHARMSPECIES
  Species "Viles"
  Damagetype "VileFires"
  DamageFactor "VileFires", 0.0
  DamageFactor "Legendary", 0.0
  Damagefactor "PlayerNemesisPlasma", 0.0
  DamageFactor 0.5
  Tag "\c[v9]Nemesis Catalyst\c-"
  Obituary "%o was splintered by the Nemesis Exile's summoned Catalyst."
  States
	{
  Spawn:
	TSPK VUTSRQPONMLKJIHGFEDCBA 1
  See:
	TSPK A 18
	Goto Missile
  Missile:
	TNT1 A 0 A_Quake(5,19,0,1024,"none")
	TSPK AA 10 Bright A_SpawnItemEx("ObsidianFlare2",0,0,128,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_PlaySound("NemesisExile/Explosion2",2)
	TNT1 A 0 A_Explode(700,500,XF_NOTMISSILE)
	TNT1 A 0 A_Quake(7,70,0,2048,"none")
	TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleChunkSpawner")
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("PBlackHoleExplode")
	TNT1 A 0 A_SpawnItemEx("PBlackHoleShockwave")
	Stop
  Death:
	TSPK ABCDEFGHIJKLMNOPQRSTUV 1
	TNT1 A 0 A_Quake(9,8,0,128,"None")
	TNT1 A 0 A_Explode(random(100,250),96,0)
	TNT1 A 0 A_PlaySound("StoneArmor/Destroy",0,1.5,0)
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("StoneBitsSpawner2",0,random(-10,10),0,0,0,0,random(0,360),SXF_CLIENTSIDE,0)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX",10,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 10 A_NoBlocking
	Stop
	}
}

ACTOR NemesisExileSkullShot : LegVileSkullShot
{
  Speed 70
  Damage 10
  +FORCERADIUSDMG
  States
  {
  Spawn:
	TNT1 A 0 A_SeekerMissile(5,5)
    NFX1 AA 1 Bright A_SpawnItemEx("TrueNemesisHellionSmoke",-10)
	TNT1 A 0 A_SeekerMissile(5,5)
    NFX1 AA 1 Bright A_SpawnItemEx("TrueNemesisHellionSmoke",-10)
	TNT1 A 0 A_SeekerMissile(5,5)
    NFX1 AA 1 Bright A_SpawnItemEx("TrueNemesisHellionSmoke",-10)
	TNT1 A 0 A_SeekerMissile(5,5)
    NFX1 AA 1 Bright A_SpawnItemEx("TrueNemesisHellionSmoke",-10)
    Loop
  Death:
	TNT1 A 0 A_Setscale(1.0)
	TNT1 A 0 A_Explode(30,100)
    NESK ABCDEFGHIJKL 2 Bright A_Explode(10,100)
    Stop
  }
}

Actor NemesisExileProtection : PowerProtection
{
  DamageFactor "Normal", 0.4
}
Actor NemesisExileProtectionGiver : PowerupGiver
{
  inventory.maxamount 1
  powerup.type "NemesisExileProtection"
  powerup.duration 0x7FFFFFFD
  +NOTIMEFREEZE
  +INVENTORY.ALWAYSPICKUP
  +INVENTORY.AUTOACTIVATE
}

Actor NemesisExileEffectFire : LegVileFire1
{
  +FORCERADIUSDMG
  var int user_loop;
  States
  {
  Spawn:
    TNT1 A 0 NoDelay A_PlaySound("LegVile/Void1",2)
  SpawnLoop:
	TNT1 A 0 A_JumpIf(user_loop >= 55,"Death")	 
	TNT1 A 0 A_SetUserVar("user_loop",user_loop+1)
    TNT1 A 2 A_Fire
	TNT1 A 0 A_Explode(random(2,3),62)
	TNT1 A 0 A_SpawnItem("NemesisExileFireSpawner",0,0,0,0)
	Loop
  Death:
	TNT1 A 0 A_PlaySound("exile/voidend",2)
	TNT1 A 0 A_Explode(150,300,1)
	TNT1 A 0 Radius_Quake(5,15,0,20,0)
    TNT1 AAAAAAAA 0 A_SpawnItemEx ("2huBossDeathFlame", 0, 0, 0, random(-3,3), random(-3,3), random(-3,3), random (0, 360))
	TNT1 AAAAAAAA 0 A_CustomMissile("2huBossDeathFlame3", random(5, 55), 0, random(0,360), CMF_OFFSETPITCH, frandom(-40, 70))
    Stop
	}
}

Actor NemesisExileVoidEffect1 : CustomInventory 
{
  +AUTOACTIVATE
  inventory.maxamount 1
  +ALWAYSPICKUP
  States 
  {
	Use:
	TNT1 A 0 A_SetBlend("black", 0.9, 120)
	TNT1 A 0 A_GiveInventory("LegVileSlowDebuff")
	Stop
  }
}

Actor NemesisExileFireSpawner : RedParticleSpawner
{
  +NOTIMEFREEZE
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("NemesisKaboomNoSound",random(16,-16),random(16,-16),random(6,12),0,0,random(2,4),0,128,0)
    TNT1 A 0 A_SpawnItemEx("WhiteNemesisKaboomNoSound",random(16,-16),random(16,-16),random(6,12),0,0,random(4,6),0,128,0)
    TNT1 A 1
    Stop
  }
}

Actor NemesisExileSummoners
{
 Height 8
 Radius 25
 Speed 30
 Damage (0)
 +RippeR
 +BloodlessImpact
 +NOTIMEFREEZE
  States
   {
    Spawn:
	 TNT1 A 5
	Death:
	 TNT1 A 0
	 TNT1 AAAAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,128)
	 TNT1 A 2
	 TNT1 A 0 A_SpawnItemEx("NemesisExileMinions")
	 Stop
   }
}

Actor NemesisExileMinions : RandomSpawner
{
DropItem "Diabolist", 256, 15
DropItem "ImpureVile", 256, 11
DropItem "Infernalist", 256, 7
DropItem "DarkHellion", 256, 7
DropItem "PhaseExile", 256, 5
DropItem "Summoner", 256, 4
DropItem "Velocirator", 256, 1
DropItem "Illusionist", 256, 1
}

Actor NemesisExileBigSummoner : NemesisExileSummoners
{
  States
   {
    Spawn:
	 TNT1 A 5
	Death:
	 TNT1 A 0
	 TNT1 AAAAAA 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner",0,0,0,0,0,0,0,128)
	 TNT1 A 2
	 TNT1 A 0 A_SpawnItemEx("NemesisExileBigSummons")
	 Stop
   }
}

Actor NemesisExileBigSummons : RandomSpawner
{
DropItem "NemesisZombieNoVexed", 256, 10
//DropItem "NemesisSoul", 256, 10
DropItem "NemesisImpNoVexed", 256, 7
DropItem "NemesisAssaultCaptainNoVexed", 256, 5
DropItem "NemesisStealthTrooper", 256, 4
DropItem "NemesisCommando", 256, 2
}



ACTOR NemesisExileBombChargeSpawner : LHellionSmokeSpawner
{
States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 Bright A_JumpIf(CallAcs("LCAEffectCheck"),"Toaster")
	TNT1 A 0 A_CheckSight("Toaster")
	TNT1 AA 0 A_SpawnItemEx("PBlackSmokeTrailNormal",random(-200,200),random(-200,200),random(12,64),frandom(-1,1),frandom(-1,1),frandom(-1,1),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	TNT1 AA 0 A_SpawnItemEx("PBlackSmokeTrailDark",random(-200,200),random(-200,200),random(12,64),frandom(-1,1),frandom(-1,1),frandom(-1,1),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	TNT1 A 1
	Stop	
  }
}

ACTOR NemesisExileBombSmokeSpawner : LHellionSmokeSpawner
{
States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 Bright A_JumpIf(CallAcs("LCAEffectCheck"),"Toaster")
	TNT1 A 0 A_CheckSight("Toaster")
	TNT1 AA 0 A_SpawnItemEx("PBlackSmokeTrailNormal",random(-20,20),random(-20,20),random(12,64),frandom(-1,1),frandom(-1,1),frandom(0,3),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	TNT1 AA 1 A_SpawnItemEx("PBlackSmokeTrailDark",random(-20,20),random(-20,20),random(12,64),frandom(-1,1),frandom(-1,1),frandom(0,3),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	Stop	
  }
}


ACTOR NemesisExileSoulGhost : LegVileLegImpGhost
{   
scale 1.6
+BRIGHT
States
{
Spawn:
	NSOL RRRRRRRR 5 A_FaceTracer
	TNT1 A 0 A_FaceTracer
	NSOL R 5 A_FadeOut(0.1)
	Goto Spawn+8
	}
}


Actor NemesisExileGhostA
{
RENDERSTYLE Translucent
Alpha 0.75
Scale 1.15
+CLIENTSIDEONLY
+NOINTERACTION
+NOTIMEFREEZE
+BRIGHT
States
{
Spawn:
    NVIL A 2 A_FadeOut(0.18)
    Loop
    }
}

Actor NemesisExileGhostB : NemesisExileGhostA
{
States
{
Spawn:
    NVIL B 2 A_FadeOut(0.18)
    Loop
    }
}

Actor NemesisExileGhostC : NemesisExileGhostA
{
States
{
Spawn:
    NVIL C 2 A_FadeOut(0.18)
    Loop
    }
}

Actor NemesisExileGhostD : NemesisExileGhostA
{
States
{
Spawn:
    NVIL D 2 A_FadeOut(0.18)
    Loop
    }
}

Actor NemesisExileGhostE : NemesisExileGhostA
{
States
{
Spawn:
    NVIL E 2 A_FadeOut(0.18)
    Loop
    }
}

Actor NemesisExileGhostF : NemesisExileGhostA
{
States
{
Spawn:
    NVIL F 2 A_FadeOut(0.18)
    Loop
    }
}