ACTOR ZamasuZombie
{ 
  Health 7500
  Radius 20
  Height 56
  Speed 20
  BloodColor "Black"
+BOSS
+NOTIMEFREEZE
+MISSILEMORE
+MISSILEEVENMORE
+NOICEDEATH
+DONTGIB
+NOTELEFRAG
+QUICKTORETALIATE
+DONTHARMSPECIES
+NORADIUSDMG
+NOFEAR
DamageFactor 0.4
Damagefactor "Acid", 2.5
DamageFactor "PDTBFG", 0.05
DamageFactor "PDTBFGTracer", 0.05
DamageFactor "BFGSplash", 0.25
DamageFactor "BFGSpray", 0.25
DamageFactor "PlayerDevBall", 0.025
DamageFactor "PlayerDevBall2", 0.025
DamageFactor "PlayerDTBFGRailgunSlug", 0.025
DamageFactor "PlayerDevTracer", 0.025
DamageFactor "ImpComet", 0.0
DamageFactor "Cyber10K", 0.0
DamageFactor "Legendary", 0.0
DamageFactor "LegendaryPlayer", 0.0
DamageFactor "LegendaryGuru", 0.0
DamageFactor "LegendaryGuruPlayer", 0.0
DamageFactor "CadaverRocket", 0.0
DamageFactor "DemolisherEx", 0.0
DamageFactor "DarkDemoEx", 0.0
DamageFactor "CerChainguns", 0.0
DamageFactor "CerEnergyBall", 0.0
DamageFactor "LegMind", 0.0
DamageFactor "BeheComet", 0.0
DamageFactor "NobleCOmet", 0.0
DamageFactor "CacoComet", 0.0
DamageFactor "CadaverRocket", 0.0
DamageFactor "HellComet", 0.0
DamageFactor "Legendary1", 0.0
DamageFactor "T3rm", 0.0
DamageFactor "C0mm4nder", 0.0
DamageFactor "DBFG10K2", 0.0
DamageFactor "HFCyb3r", 0.0
DamageFactor "PlayerDBFG10K2", 0.0
DamageFactor "PlayerDTRG", 0.3
DamageFactor "DBFG2", 0.0
DamageFactor "PlayerDBFG2", 0.0
DamageFactor "PyroShot", 0.0
DamageFactor "PlayerPyro", 0.0
DamageFactor "PDTPuff", 0.0
DamageFactor "Touhou", 0.0
DamageFactor "Hell", 0.0
DamageFactor "PlayerBHole", 0.0
DamageFactor "PlayerNemesisPlasma", 0.0
DamageFactor "SatanGuard", 0.0
DamageFactor "Explosion", 0.01
DamageFactor "NemesisBall", 0
DamageFactor "NemesisBeam", 0.3
  DropItem "Zamasu Plasmatic Cannon", 256, 33
  DropItem "NemesisHealthBonusMax", 256, 32
  DropItem "NemesisArmorBonus32", 256
  DropItem "NemesisHealthBonusMax", 256, 32
  DropItem "NemesisDemonicEnergy", 256
  DropItem "NemesisGreaterDemonicEnergy", 256
  DropItem "NemesisArmorBonus32", 256
  DropItem "EnragedLegendaryArmor", 85, 1
  DropItem "LegAmmoSphere", 88, 3
  DropItem "EnragedLegendaryPowerShard", 35, 1
  DropItem "HandGrenadeAmmo", 235, 2
  DropItem "MineAmmo", 235, 2
  DropItem "Backpack", 198, 1
  DropItem "LegendaryRune", 128, 1
  DropItem "Nemesis Rifle", 128, 1
  DropItem "ZamasuArmor", 256, 1
  DropItem "ZamasuAgilityRune", 128, 1 
  DropItem "ZamasuWeakRune", 128, 1
  DropItem "ZamasuVitalityRune", 256, 1
  SeeSound "ZamasuZombie/Sight"
  PainSound "ZamasuZombie/Pain"
  DeathSound "ZamasuZombie/Death"
  ActiveSound "ZamasuZombie/Active"
  Monster
  Obituary "%o was eradicated by the Zamasu Zombie's dark energy."
  Tag "\c[s5]Zamasu Zombie\c-"
  var int user_deathtimer;
  var int user_deathtimeractive;
  var int user_music;
  var int user_missile;
  States
  {
Spawn:
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	ZAZM 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("InfinityMusic",0,1772,910)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_JumpIfTargetInLOS("Strafing")
	ZAZM AA 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZAZM BB 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_JumpIfTargetInLOS("Strafing")
	ZAZM CC 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZAZM DD 3 Bright A_Chase
	TNT1 A 0 A_Jump(20,"Teleport")
	TNT1 A 0 A_Jump(80,"Rush")
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	Loop
  Rush:
	TNT1 A 0 A_JumpIfTargetInLOS("Strafing")
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostA",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostA",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostB",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM B 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostB",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM B 1 Bright A_Chase
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostC",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM C 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostC",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM C 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostD",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM D 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ZamasuZombieGhostD",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	ZAZM D 1 Bright A_Chase
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	TNT1 A 0 A_Jump(84,"See")
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	Loop
  Teleport:
	ZAZM A 1 Bright A_UnSetShootable
	TNT1 AAAA 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZAZM AAAAAAAAAA 1 Bright A_FadeOut(0.1,0)
	ZAZM A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	ZAZM A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZAZM AAAAAAAAAA 1 Bright A_FadeIn(0.1)
	ZAZM A 1 Bright A_SetShootable
	Goto See  
  Strafing:
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_Chase("","Missile",CHF_DONTMOVE)
	ZAZM AA 2 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_Chase("","Missile",CHF_DONTMOVE)
	ZAZM BB 2 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_Chase("","Missile",CHF_DONTMOVE)
	ZAZM CC 2 Bright A_GiveInventory("NemesisLegZombieStrafing",1)  
	TNT1 A 0 A_Chase("","Missile",CHF_DONTMOVE)
	ZAZM DD 2 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	Goto See
  Pause:
	TNT1 A 0 A_PlaySound("weapons/demontechsteam")
	ZAZM EEEEE 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	Goto See  
  Missile:
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_UnsetInvulnerable
	TNT1 A 0 A_SetTranslucent(1)
    TNT1 A 0 A_Jump(20,"Devastator")
	ZAZM E 4 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_CustomMissile("ZamasusRifleShot",32,0,random(-2,2),0)
	ZAZM F 4 Bright A_PlaySoundEx("NemesisRifle/Fire","Weapon")
	TNT1 A 0 A_Jump(24,"Pause")
	TNT1 A 0 A_SpidRefire
	Goto Missile+4
  Rapid:
	TNT1 A 0 A_PlaySound("ZamasuZombie/Sight",7,1.0,0,ATTN_NONE)
    ZAZM EEEEEEEE 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
  RapidLoop:
    TNT1 A 0 A_JumpIf(user_missile == 20,"Pause")
    ZAZM E 2 A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_CustomMissile("ZamasusRifleShot",32,0,random(-2,2),0)
	ZAZM F 3 A_PlaySoundEx("NemesisRifle/Fire","Weapon")
	TNT1 A 0 A_SetUserVar("user_missile",user_missile+1)
	TNT1 A 0 A_Jump(10,"Devastator")
	Loop
  Devastator:
	ZAZM E 0 A_PlaySound("cydes/mischrg",7,1,0,0.5)
	ZAZM E 1 Bright A_FaceTarget
	ZAZM FE 3 Bright A_GiveInventory("NLegZombieStrafing2",1)
	TNT1 A 0 A_PlaySound("NemesisCannon/BigLaser",CHAN_WEAPON)
	TNT1 A 0 A_CustomMissile("NemImpDevastatorBall",32,0,0)
	ZAZM E 10 A_FaceTarget
	Goto See
  Pain:
	TNT1 A 0 A_Jump(30,"Teleport")
  Pain2:
	TNT1 A 0 A_Jump(192,"PainMissile")
	ZAZM G 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_Pain
	ZAZM G 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	Goto See
  PainMissile: 
	ZAZM G 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_Pain
	ZAZM G 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	Goto Missile  
  Death:
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_JumpIfInTargetInventory("TerminatorDamage2",1,"ZamasuGodTransformation")
	TNT1 A 0 A_JumpIfInTargetInventory("ZamasuGodRuneDamage",1,"ZamasuGodTransformation")
    TNT1 A 0 A_Jump(36,"LegendarySoul")
	ZAZM H 5 A_Scream
	ZAZM I 5 A_Fall
	ZAZM J 5 A_SpawnItem("BodyCrash",0,0,0,0)
	ZAZM K 5 
	TNT1 A 0 A_Jump(100,"MoreStuff")
	ZAZM L -1
	Stop
  LegendarySoul:
    TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
	ZAZM H 5 A_Scream
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
    ZAZM I 5 A_Fall
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
    ZAZM J 5 A_SpawnItem("BodyCrash",0,0,0,0)
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
    ZAZM K 5 
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
    ZAZM L 5
	TNT1 A 0 A_SpawnItem("TrueTrueNemesisHellionSmokeSpawner",0,0,0,0)
	ZAZM L 140
	ZAZM L 0 A_PlaySoundEx("brain/spit","Voice",0,2)
	ZAZM LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	ZAZM LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	ZAZM LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("ZamasuSoul",0,0,16,0,0,0,0,32)
	TNT1 A 0 A_SpawnItemEx("TeleportFog",0,0,16,0,0,0,0,32)
	ZAZM L -1
	Stop
  MoreStuff:
	ZAZM L 100
	TNT1 A 0 A_SpawnItem("HellionSmokeAttack")
	ZAZM LLLLLLLLLLLLLLLLLLLLLLLLLLLLLL 1 A_SpawnItem("NemesisZombieItemRandomizer")
	ZAZM LLLLLLLLLLLLLLLLLLLLLLLLLLLLLL 1 A_SpawnItem("NemesisZombieItemRandomizer")
	ZAZM L 1 A_SpawnItem("NemesisZombieSuperItemRandomizer")
	ZAZM L -1
	Stop
  XDeath:
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_JumpIfInTargetInventory("TerminatorDamage2",1,"ZamasuGodTransformation")
	TNT1 A 0 A_JumpIfInTargetInventory("ZamasuGodRuneDamage",1,"ZamasuGodTransformation")
	TNT1 A 0 A_JumpIf(user_deathtimer <= 30,"ZamasuGodTransformation")	
	ZAZM O 3 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	ZAZM P 3 A_XScream
	ZAZM R 3 A_Fall
	ZAZM STUV 3 
	TNT1 A 0 A_Jump(100,"MoreStuff2")
	ZAZM W -1
	Stop
  MoreStuff2:
	ZAZM W 100
	TNT1 A 0 A_SpawnItem("HellionSmokeAttack")
	ZAZM WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW 1 A_SpawnItem("NemesisZombieItemRandomizer")
	ZAZM WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW 1 A_SpawnItem("NemesisZombieItemRandomizer")
	ZAZM W 1 A_SpawnItem("NemesisZombieSuperItemRandomizer")
	ZAZM W -1
	Stop
  ZamasuGodTransformation:
  	TNT1 A 0 ACS_NamedExecuteAlways("NemesisSky")
  	ZAZM G 3 Bright A_Pain
	ZAZM G 0 A_PlaySoundEx("brain/spit",7,0,2)
    ZGOZ QQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ QQQQQQQQQQQQQQWWWWWWWWWWWWWWW 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ WWWWWWWWWWWWWWWWWWWWWWWWWWWWW 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ RRRRRRRRRRRRRRRRRRRRRRRRRRRRR 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ RRRRRRRRRRRRRRTTTTTTTTTTTTTTT 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ TTTTTTTTTTTTTTYYYYYYYYYYYYYYY 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ UUUUUUUUUUUUUUUUUUUUUUUUUUUUU 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ OOOOOOOOOOOOOOOOOOOOOOOOOOOOO 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("TrueNemesisHellionSmokeSpawner")
	ZGOZ OOOOOOOOOOOOOOOOOOOOOOOOOOOOO 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("ZamasuGodZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
  }
}

Actor INFZamasuZombie : ZamasuZombie
{
Tag "\c[s5]Zamasu Zombie\c-"
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_Jump(140,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("TrueLegendaryRuneSpawnCheck") == 2,1)
	Goto Remove
	Idle:
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	ZAZO A 10 A_Look
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Zombieman",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR ZamasuZombieGhostA
{
PROJECTILE
Height 56
Radius 20
Speed 0
Scale 1.1
RENDERSTYLE Translucent
Alpha 0.7
+NOTIMEFREEZE
+NOINTERACTION
+CLIENTSIDEONLY
States
  {
  Spawn:
	TNT1 A 0 Bright
	TNT1 A 0 Bright A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	TNT1 A 1 Bright
	Goto Fade
  Fade:
	ZAZO A 2 A_FadeOut(0.1,1)
	Loop
  Toaster:
	TNT1 A 1 Bright
	Stop
  }
}

ACTOR ZamasuZombieGhostB
{
States
  {
  Fade:
	ZAZO B 2 A_FadeOut(0.1,1)
	Loop
  }
}

ACTOR ZamasuZombieGhostC
{
States
  {
  Fade:
	ZAZO C 2 A_FadeOut(0.1,1)
	Loop
  }
}

ACTOR ZamasuZombieGhostD
{
States
  {
  Fade:
	ZAZO D 2 A_FadeOut(0.1,1)
	Loop
  }
}