Actor HackroidBeheadedKamikaze : LegendaryBeheadedKamikaze //AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA Colourized
{
//Creator: Dr. Sticky & Fluffy
//Origin: Nexus Infinity
//Sprite: HKAM
//Title: "Hackroid Beheaded Kamikaze" 
Health 4000
Mass 1000
Scale 1.2
Speed 30
MeleeRange 44
MeleeThreshold 100
MaxTargetRange 2400
painchance 10
Species "UltimateLegendary"
DamageFactor 0.4
DamageFactor "LegendaryZombie", 0.4
DamageFactor "PDTBFG", 0.5
DamageFactor "PDTBFGTracer", 0.4
DamageFactor "PlayerDevBall", 0.8
DamageFactor "PlayerDevBall2", 0.8
DamageFactor "PlayerDTBFGRailgunSlug", 0.75
DamageFactor "PlayerDevTracer", 0.75
DamageFactor "DBFG10K2", 0.5
DamageFactor "PlayerDBFG10K2", 0.5
DamageFactor "DBFG2", 0.5
DamageFactor "PlayerDBFG2", 0.5
DamageFactor "PlayerPyro", 0.08
DamageFactor "Legendary", 0.4
DamageFactor "Superweapon", 0.4
DamageFactor "LegendaryPlayer", 0.4
DamageFactor "PlayerNemesisPlasma", 0.4
DamageFactor "Hackroid", 0.0
DropItem "HackroidArmor" 45 1
DropItem "HackroidSphere" 45 1
DropItem "Legendary C4" 255 1
ActiveSound ""
+MISSILEEVENMORE
+QUICKTORETALIATE
Obituary "%o could not take Hackroid Beheaded Kamikaze's clown vomit seriously."
Tag "\c[p7]Hackroid Beheaded Kamikaze\c-"
var int user_clonecounter; //Enemy spawns a limited number of clones before charging
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_PlaySoundEx("hack/glitch","Voice",0,2)
  SpawnLoop:
	HKAM A 15 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	Loop
  Idle:
	TNT1 A 0 A_StopSound(CHAN_VOICE)
	HKAM AA 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM AA 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CC 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CC 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Wander
	TNT1 A 0 A_Look
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	Loop
   See:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,2093)
	TNT1 A 0 A_SetUserVar("user_music",1)
    TNT1 A 0 A_JumpIfHealthLower(1000,"Rush")
	HKAM AA 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM AA 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Chase
	TNT1 A 0 A_Jump(6,"Rush")
	TNT1 A 0 A_Jump(12,"Teleport")
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CC 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CC 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BB 2 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_Jump(6,"Rush")
	TNT1 A 0 A_Jump(12,"Teleport")
	Loop
   Rush:
	HKAM AAAA 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM AAAA 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BBBB 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BBBB 1 Bright A_Chase
	TNT1 A 0 A_Jump(12,"Teleport")
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CCCC 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM CCCC 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BBBB 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM BBBB 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_Jump(12,"Teleport")
    Loop
  Teleport:
    HKAM A 1 Bright A_UnSetShootable
	TNT1 AAAA 0 A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
	HKAM AAAAAAAAAA 1  A_FadeOut(0.1,0)
	HKAM A 2
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    HKAM A 1 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
	HKAM AAAAAAAAAAA 1 A_FadeIn(0.1)
    HKAM A 1 Bright A_SetShootable
    Goto See
  Melee:
    HKAM A 1 Bright
	TNT1 A 0 A_Jump(10,"Teleport")
    TNT1 A 0 A_JumpIfHealthLower(1000,"UltimateExplosion")
	TNT1 A 0 A_Jump(10,"Teleport")
    Goto See
  Missile:
    TNT1 A 0 A_JumpIf(user_clonecounter >= 60,"PrepareCharge") //will spawn clones up to 60 times
	TNT1 A 0 A_Jump(12,"Clonespawn")
    TNT1 A 0 A_JumpIfHealthLower(1000,"PrepareCharge")
  Clonespawn:
    TNT1 A 0 A_ChangeFlag(FRIGHTENED,1)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx("CloneHackroidKamikaze",0,0,1,random(1,8),0,random(8,30),random(0,360),0,0)
	TNT1 A 0 A_SetUserVar("user_clonecounter",user_clonecounter+1)
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx("CloneHackroidKamikaze",0,0,1,random(1,8),0,random(8,30),random(0,360),0,0)
	TNT1 A 0 A_SetUserVar("user_clonecounter",user_clonecounter+1)
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx("CloneHackroidKamikaze",0,0,1,random(1,8),0,random(8,30),random(0,360),0,0)
	TNT1 A 0 A_SetUserVar("user_clonecounter",user_clonecounter+1)
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 AA 0 A_SpawnItem("RandomHellionSmoke",0,0,0,0)
	TNT1 A 0 A_GiveInventory("SpecOpsStrafing",1)
	HKAM ABCD 1 Bright A_Wander
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,0)
    Goto See
  PrepareCharge:
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LFiendFlameSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	Goto ChargeStart
  ChargeStart:
	TNT1 A 0 A_CposRefire
	TNT1 A 0 A_PlaySound("suicide/scream",CHAN_VOICE,1.0,1)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_GiveInventory("LegSuicideJumping",1)
	TNT1 A 0 A_Recoil(-25)
	HKAM ABCB 1 Bright A_JumpIfTargetInLOS("UltimateExplosion",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_Recoil(-25)
	HKAM ABCB 1 Bright A_JumpIfTargetInLOS("UltimateExplosion",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_Recoil(-25)
	HKAM ABCB 1 Bright A_JumpIfTargetInLOS("UltimateExplosion",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_Recoil(-25)
	TNT1 A 0 A_JumpIf(z - floorz >= 64,"ChargeStop")
	HKAM ABCD 1 Bright A_JumpIfTargetInLOS("UltimateExplosion",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	Goto NOPE
  NOPE:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(velx != 0 || vely != 0,"ChargeStart")
	Goto ChargeStop
  ChargeStop:
	TNT1 A 0
	HKAM A 1 Bright A_Stop
	TNT1 A 0 A_StopSound(CHAN_VOICE)
	TNT1 A 0 A_JumpIfInTargetLOS("UltimateExplosion",90,JLOSF_DEADNOJUMP,200)
	Goto See
  UltimateExplosion:
	TNT1 A 0 A_Jump(8,"Teleport")
	TNT1 A 0 A_StopSound(CHAN_VOICE)
	TNT1 A 0 A_Facetarget
	HKAM A 2 Bright A_SpawnItemEx("LHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_CustomBulletAttack(0,0,1,10000,"LegSBomberAttack",44)
	TNT1 A 0 A_Explode(500,1000)
	TNT1 A 0 A_CustomMissile("TrueLegZombieSuicideBomb",24,0,0,CMF_AIMDIRECTION)
	TNT1 A 0 A_PlaySoundEx("legendary/strike","Voice",0,2)
	TNT1 A 0 A_SpawnItemEx("LegendaryBarrelStrike",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_SpawnItemEx("CorruptLegendaryNuke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 A 0 A_CustomMissile("SuicideBomb",24,0,0,CMF_AIMDIRECTION)
	HKAM A 1 Bright A_Die
	Goto Death
  Pain:
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,0)
	TNT1 A 0 A_StopSound(CHAN_VOICE)
	HKAM A 3 Bright
	TNT1 A 0 A_SpawnItemEx("BHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	HKAM A 3 Bright A_Pain
	Goto See
  Death:
  XDeath:
	TNT1 A 0 A_SpawnItemEx("OrangeParticleSpawner",0,0,24,0,0,0,0,128) 
	TNT1 AAA 0 A_CustomMissile("Kaboom3",24,0,random(0,360),2,random(0,360))
	TNT1 AAA 0 A_CustomMissile("SmokeFX2",24,0,random(0,360),2,random(0,360))
	TNT1 AAAA 0 A_SpawnItemEx("Debris",0,0,24,Random(4,-4),Random(4,-4),Random(4,8),0,128)
	TNT1 A 0 A_SpawnItemEx("M79GrenadeKaBoom",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_CustomMissile("BigClownVomitExplosion",0,0,random(80,100),2,random(80,100))
	TNT1 A 0 A_PlaySound("weapons/rocklx",CHAN_BODY)
	TNT1 A 0 A_DropItem("LegendaryRune",3)
	TNT1 A 0 A_Stop
	HKBM A 5 Bright
	HKBM B 5 Bright A_Scream
	HKBM C 5 A_NoBlocking
	HKBM DEFGH 5
	HKBM I -1
	Stop
	}
}

Actor CloneHackroidKamikaze : EnragedLegendaryMonsterCube
{
States
 {
  Spawn:
	BOSG A 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSG A 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSY B 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSY B 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSX C 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSX C 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSV D 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	BOSV D 1 Bright A_CheckFloor("Done")
	TNT1 AA 0 A_SpawnItemEx("ArmorParticleRandom",random(-12,12),random(-12,12),random(-12,12),random(-2,2),random(-2,2),random(-2,2),random(-20,20))
	Loop
  Done:
    BOSF Z 0
	BOSF Z 0 A_CustomMissile ("TeleportFog", 0, 0, 0, 0, 0)
	BOSF Z 1 A_SpawnItemEx ("HackroidSpawner", 0, 0, 8, 0, 0, 0, 0, 1)
	Stop
  }
}

ACTOR ArmorParticleRandom : RandomSpawner
{
DropItem "ArmorParticleGreen", 256, 1
DropItem "ArmorParticleWhite", 256, 1
DropItem "ArmorParticleRed", 256, 1
DropItem "ArmorParticleYellow", 256, 1
DropItem "ArmorParticleGold", 256, 1
DropItem "ArmorParticlePurple", 256, 1
}

ACTOR HackroidSpawner : RandomSpawner
{
+DROPPED
DropItem "CHackroidKamikaze", 256, 100
DropItem "CHackroidKamikaze", 256, 100
}


Actor CHackroidKamikaze
{
MONSTER
Health 200
Height 56
Radius 20
Mass 150
Speed 22
MeleeRange 44
MeleeThreshold 100
MaxTargetRange 1200
painchance 20
+NoFear
+NOTARGET
+NORADIUSDMG
+MissileMore
+FLOORCLIP
+DONTHARMSPECIES
+THRUSPECIES
+LOOKALLAROUND
-COUNTKILL
+NOPAIN
DamageFactor "LACGrenade", 0.0
DamageFactor "LSSGGrenade", 0.0
DamageFactor "GeneralTracer", 0.0
DamageFactor "ZombieCannon", 0.0
DamageFactor "ZombieRocket", 0.0
DamageFactor "Hell", 0.0
DamageFactor "EMGEx", 0.0
Species "Kamikaze"
Dropitem ""
Seesound ""
Attacksound "shotguy/death"
Painsound "shotguy/pain"
Deathsound ""
obituary "%o was killed by a screaming Beheaded Kamikaze."
Tag "\c[p7]Hackroid Kamikaze\c-"

States
  {
   Spawn:
     TNT1 A 0
     TNT1 A 0 A_PlaySound("suicide/scream",CHAN_VOICE,1.0,1)
   SpawnLoop:
     HKAM AA 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM AB 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM BB 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CC 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CD 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM DD 2 Bright A_Wander
	 TNT1 A 0 A_CheckFloor("Idle")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
   Idle:
	 HKAM AA 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM AB 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM BB 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CC 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CD 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM DD 2 Bright A_Wander
	 TNT1 A 0 A_Look
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 Loop
   See:
	 HKAM AA 2 Bright A_Chase
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM AB 2 Bright A_Chase
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM BB 2 Bright A_Chase
	 TNT1 A 0 A_JumpIfTargetInLOS("Missile")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CC 2 Bright A_Chase
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM CD 2 Bright A_Chase
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM DD 2 Bright A_Chase
	 TNT1 A 0 A_JumpIfTargetInLOS("Missile")
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 Loop
   Missile:
	 TNT1 A 0
	 HKAM AAAAAAAAAA 1 Bright A_FaceTarget
	 Goto Missile3
   Melee:
	 TNT1 A 0
	 TNT1 A 0 A_StopSound(CHAN_VOICE)
	 HKAM A 1 Bright A_Facetarget
	 HKAM A 1 Bright A_die
	 Stop
   Missile3:
	 TNT1 A 0
	 TNT1 A 0 A_CposRefire
	 TNT1 A 0 A_PlaySound("suicide/scream",CHAN_VOICE,1.0,1)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_GiveInventory("LegSuicideJumping",1)
	 TNT1 A 0 A_Recoil(-9)
	 HKAM ABCD 1 Bright A_JumpIfTargetInLOS("Melee",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_Recoil(-9)
	 HKAM ABCD 1 Bright A_JumpIfTargetInLOS("Melee",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_Recoil(-9)
	 HKAM ABCD 1 Bright A_JumpIfTargetInLOS("Melee",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_Recoil(-9)
	 TNT1 A 0 A_JumpIf(z - floorz >= 64,"ChargeStop")
	 HKAM ABCD 1 Bright A_JumpIfTargetInLOS("Melee",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,90,0)
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 Goto Missile2
   Missile2:
	 TNT1 A 0
	 TNT1 A 0 A_JumpIf(velx != 0 || vely != 0,"Missile3")
	 Goto ChargeStop
   ChargeStop:
	 TNT1 A 0
	 HKAM A 1 Bright A_Stop
	 TNT1 A 0 A_JumpIfInTargetLOS("Melee",90,JLOSF_DEADNOJUMP,200)
	 Goto See
   Pain:
	 HKAM A 3 Bright A_StopSound(CHAN_VOICE)
	 TNT1 A 0 A_SpawnItemEx("RandomHellionSmoke",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	 HKAM A 3 Bright A_Pain
	 Goto See
   Death:
	 TNT1 A 0
	 TNT1 AAA 0 A_StopSound(CHAN_VOICE)
	 TNT1 A 0 A_Explode(24,628,0)
	 TNT1 A 0 A_Explode(96,400,0)
	 TNT1 A 0 A_Explode(256,256,1)
	 TNT1 A 0 A_SpawnItemEx("M79GrenadeKaBoom",0,0,0,0,0,0,0,128)
	 TNT1 AAAAAAAAAAAAA 0 A_CustomMissile("ClownVomitExplode",random(20,80),random(20,-20),random(0,360),2,random(0,360))
	 TNT1 A 0 A_CustomMissile("BigClownVomitExplosion",0,0,random(80,100),2,random(80,100))
	 TNT1 A 0 A_Stop
	 TNT1 A 0 A_PlaySound("weapons/rocklx",CHAN_BODY)
	 HKBM A 5 Bright
	 HKBM B 5 Bright A_Scream
	 HKBM C 5 A_NoBlocking
	 HKBM DEFGH 5
	 HKBM I -1
	 Stop
   }
}

Actor BigClownVomitExplosion : BigExplosion
{
    States
    {
    Spawn:
	    TNT1 A 0
		TNT1 A 0 Radius_Quake(6,28,0,32,0)
	    TNT1 AAA 0 A_SpawnItemEx("ClownVomitKaboomSpawner",0,0,0,0,0,0,0,128)
		TNT1 DDEEFFGGHHIIJJ 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		TNT1 K 0 A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 KKKLLL 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		TNT1 M 0 A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 MMMMNNN 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		TNT1 OPQ 2 Bright A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 O 0 A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 OOO 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		TNT1 P 0 A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 PPP 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		TNT1 Q 0 A_CustomMissile("SmokeFX3",32,0,random(80,100),2,random(80,100))
		TNT1 QQQ 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",random(20,80),random(20,-20),random(0,360),2,random(0,360))
		Goto Death
	Death:
		TNT1 A 0
	    Stop
  }
}

ACTOR ClownVomitExplode : Explode
{
States
{
   Spawn:
	FIR3 ABDEFGHIJKL 1 Bright A_CustomMissile("ClownVomitKaboomSpawner",6,0,0,2,random(0,10))
	Stop
   Death:
	FIR3 AA 0 A_SpawnItemEx("RainbowSparkleRandomSpawner",0,0,0,0,0,0,0,128) 
	Stop
	}
}

Actor ClownVomitKaboomSpawner : RandomSpawner
{
DropItem "ClownVomitKaboom1", 256, 1
DropItem "ClownVomitKaboom2", 256, 1
DropItem "ClownVomitKaboom3", 256, 1
DropItem "ClownVomitKaboom4", 256, 1
DropItem "Kaboom", 256, 1
}

ACTOR ClownVomitKaboom1 : Kaboom
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
FXPB A 1 Bright A_PlaySound("weapons/rocklx")
FXPB ABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}

ACTOR ClownVomitKaboom2 : Kaboom
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
FXPG A 1 Bright A_PlaySound("weapons/rocklx")
FXPG ABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}

ACTOR ClownVomitKaboom3 : Kaboom
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
FXPP A 1 Bright A_PlaySound("weapons/rocklx")
FXPP ABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}

ACTOR ClownVomitKaboom4 : Kaboom
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
FXPR A 1 Bright A_PlaySound("weapons/rocklx")
FXPR ABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}