ACTOR Facebock : LegendaryHellKnight //definitely the stupidest meme on here
{
  Health 3400
  Speed 16
  +THRUSPECIES
  SeeSound "Facebock/Sight"
  ActiveSound "Facebock/Active"
  PainSound "Facebock/Pain"
  DeathSound "Facebock/Death"
  DropItem "LegendarySphere" 192 1
  DropItem "LDemonAmmoBox" 256 
  DropItem "LDemonAmmo" 256 
  DropItem "BossLifeEssence" 256 
  DropItem "BossArmorBonusMax" 256 
  DropItem "Legendary Plasmatic Rifle" 105 1 
  Obituary "%o couldn't handle the overwhelming strength of the Legendary Baron Of Hell's recolor!"
  HitObituary "%o got a Legendary Baron Of Hell's fist stuck in %p skull."
  Tag "\c[z3]Legendary Baron Of Hell\c-"
  States
  {
  Spawn:
    TNT1 AAA 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
    BOCK A 14 Bright A_Look
    Loop
  See:
	TNT1 A 0 A_Jump(100,"Rush")
	BOCK AA 3 Bright A_Chase
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("BockFire",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK BB 3 Bright A_Chase
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("BockFire",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK CC 3 Bright A_Chase
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("BockFire",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK DD 3 Bright A_Chase
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("BockFire",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	TNT1 A 0 A_Jump(32,"Teleport")
	Loop
Rush:
	BOCK A 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK A 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase  
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK B 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK B 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK C 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK C 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase  
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK D 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	BOCK D 2 Bright A_SpawnItemEx("BockGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	BOCK AAAA 0 Bright A_Chase
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 AAA 0 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LegendaryHoofStep",0,0,0,0)
	TNT1 A 0 A_Jump(24,"Teleport")
	TNT1 A 0 A_Jump(75,"See")
	Loop
  Teleport:
    BOCK P 1 Bright A_UnSetShootable
	BOCK PPPP 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK PPPPPPPPPP 1 A_FadeOut(0.1,0)
	BOCK P 2 
	BOCK PEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 0 A_Wander
	BOCK PEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 0 A_Wander
    BOCK P 1 A_PlayWeaponSound("boss/teleport")
	BOCK PPPP 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK PPPPPPPPPPP 1 A_FadeIn(0.1)
    BOCK P 1 Bright A_SetShootable
    Goto See		
  Missile:
    TNT1 A 0 A_SetShootable
    TNT1 A 0 A_UnsetInvulnerable
    TNT1 A 0 A_SetTranslucent(1)
    TNT1 A 0 A_Jump(127,"Spread","Hugger","Rage","BestAttack","Rain")
	TNT1 A 0 A_Jump(9,"MinionSummoner")
	TNT1 A 0 A_Jump(100,"4Comets","BlueComet")
  Normal:
    BOCK EF 5 Bright A_FaceTarget
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,-8)
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,-4)
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,4)
	BOCK GGGGGG 0 A_CustomMissile("LegNobleBall",32,0,random(-10,10))
	BOCK G 5 Bright A_CustomMissile("LegNobleBall",32,0,0)
    BOCK ST 5 Bright A_FaceTarget
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,8)
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,4)
	BOCK G 0 A_CustomMissile("LegNobleBall",32,0,-4)
	BOCK GGGGGG 0 A_CustomMissile("LegNobleBall",32,0,random(-10,10))
	BOCK U 5 Bright A_CustomMissile("LegNobleBall",32,0,0)	
	TNT1 A 0 A_Jump(127,"Spread")
	Goto See
  Spread:
    BOCK PQ 9 Bright A_FaceTarget
	TNT1 A 0 A_SetUserVar("user_missile",-45)
  SpreadLoop:
	TNT1 A 0 A_JumpIf(user_missile >= 45,"SpreadEnd")	 
	TNT1 A 0 A_SetUserVar("user_missile",user_missile+1)
	TNT1 A 0 A_CustomMissile("LegNobleBall2",32,0,user_missile)
	Loop
  SpreadEnd:
    BOCK R 8 Bright A_CustomMissile("LegNobleBall2",32,0,0)
	TNT1 A 0 A_Jump(127,"Hugger")
    Goto See
  Hugger:
    BOCK RQ 9 Bright A_FaceTarget
	BOCK PPPP 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK P 0 A_CustomMissile("LegNobleBall3",32,20,0)
    BOCK P 0 A_CustomMissile("LegNobleBall3",32,-20,0)
    BOCK P 0 A_CustomMissile("LegNobleBall3",32,40,0)
    BOCK P 0 A_CustomMissile("LegNobleBall3",32,-40,0)
    BOCK P 0 A_CustomMissile("LegNobleBall3",32,60,0)
    BOCK P 0 A_CustomMissile("LegNobleBall3",32,-60,0)
	BOCK PPPP 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Jump(80,"BlueComet")
    Goto See	
  BlueComet:
    BOCK EF 7 Bright A_FaceTarget
	BOCK G 2 Bright A_CustomMissile("LegNobleComet", 32, 0, 0)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 6)
	BOCK G 4 Bright A_CustomMissile("LegNobleComet", 32, 0, -6)
    BOCK ST 7 Bright A_FaceTarget
	BOCK U 2 Bright A_CustomMissile("LegNobleComet", 32, 0, 0)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 6)
	BOCK U 4 Bright A_CustomMissile("LegNobleComet", 32, 0, -6)
	
	
    BOCK EF 7 Bright A_FaceTarget
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, 0)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 2)
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -2)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 4)
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -4)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 6)
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -6)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 8)
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -8)
	BOCK G 0 A_CustomMissile("LegNobleComet", 32, 0, 10)
	BOCK G 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -10)
    BOCK ST 7 Bright A_FaceTarget
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, 0)
	BOCK U 0 A_CustomMissile("LegNobleComet", 32, 0, 2)
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -2)
	BOCK U 0 A_CustomMissile("LegNobleComet", 32, 0, 4)
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -4)
	BOCK U 0 A_CustomMissile("LegNobleComet", 32, 0, 6)
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -6)
	BOCK U 0 A_CustomMissile("LegNobleComet", 32, 0, 8)
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -8)
	BOCK U 0 A_CustomMissile("LegNobleComet", 32, 0, 10)
	BOCK U 1 Bright A_CustomMissile("LegNobleComet", 32, 0, -10)
	TNT1 A 0 A_Jump(80,"4Comets")
    Goto See
  4Comets:
    BOCK PQ 8 Bright A_FaceTarget
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -5)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 5)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 10)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -10)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 15)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -15)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 20)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -20)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 25)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -25)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 30)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -30)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 35)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -35)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 40)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -40)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, 45)
	BOCK R 0 A_CustomMissile("BigBlueComet", 32, 0, -45)
	BOCK R 7 Bright A_CustomMissile("BigBlueComet", 32, 0, 0)
	TNT1 A 0 A_Jump(127,"Rage")
	Goto See
  Rage:	
    BOCK Q 1 Bright A_PlaySound("Facebock/Sight")
	BOCK Q 1 Bright A_FaceTarget
	BOCK Q 1 Bright A_SetUserVar("user_missile",0)
    BOCK RRRR 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK QQQQ 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
  Raging:
    BOCK Q 0 A_JumpIf(user_missile >= 56,"See")	 
    BOCK Q 0 A_SetUserVar("user_missile",user_missile+1)
    BOCK QQ 0 Bright A_CustomMissile("LegNobleBall3Small",0,0,random(0,359))	
    BOCK Q 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
    Loop
  BestAttack:
    BOCK Q 1 Bright A_PlaySound("Facebock/Sight")
    BOCK P 2 Bright A_FaceTarget
	TNT1 A 0 A_SetInvulnerable
	BOCK PPPPPPPPPPPPPPPPP 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK Q 2 Bright A_FaceTarget
	BOCK QQQQQQQQQQQQQQQQQ 2 Bright A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	BOCK R 2 Bright A_FaceTarget
	TNT1 A 0 A_UnSetInvulnerable
    TNT1 A 0 A_CustomMissile("LegNobleBall4",32,0,100)
    TNT1 A 0 A_CustomMissile("LegNobleBall4",32,0,-100)
    BOCK R 8 Bright A_CustomMissile("LegNobleBall4",32,0,0)
    Goto See
  Rain:
    BOCK P 2 Bright A_FaceTarget
    BOCK PPPPPPP 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK Q 0 A_CustomMissile("BlueRainCometNull",32,0,200)
    BOCK Q 0 A_CustomMissile("BlueRainCometNull",32,0,90)
    BOCK Q 0 A_CustomMissile("BlueRainCometNull",32,0,-90)
    BOCK QQQQQQ 0 A_CustomMissile("BlueRainCometNull",32,0,random(0,360))
    BOCK Q 8 Bright A_CustomMissile("BlueRainCometNull",32,0,0)
    TNT1 A 0 A_SetInvulnerable
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
	BOCK Q 2 Bright A_FaceTarget
    BOCK QQQQQQQQ 2 Bright A_SpawnItem("BHellionSmokeSpawner",0,0,0,0)
    TNT1 A 0 A_UnSetInvulnerable
    Goto See
 MinionSummoner:
    BOCK P 1 Bright A_ChangeFlag(Invulnerable,1)
	TNT1 A 0 A_PlaySound("baron/sight")
	BOCK PPPPPPPPPPPPPPPPP 2 Bright A_SpawnItem("GHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_ChangeFlag(Reflective,1)
	TNT1 A 0 A_Playsound ("hk/summon")
	TNT1 A 0 A_SpawnItemEx("FacebockSummoner",0,0,20,30,0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("FacebockSummoner",0,0,20,30,0,0,180,0)
	TNT1 A 0 A_SpawnItemEx("FacebockSummoner",0,0,20,30,0,0,225,0)
	TNT1 A 0 A_SpawnItemEx("FacebockSummoner",0,0,20,30,0,0,305,0)
	BOCK P 25 Bright
	TNT1 AAA 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_ChangeFlag(Invulnerable,0)
	TNT1 A 0 A_ChangeFlag(Reflective,0)
	Goto See	
 Melee:
    BOCK EF 6 Bright A_FaceTarget 
    BOCK G 6 Bright A_MeleeAttack	
	BOCK ST 6 Bright A_FaceTarget 
    BOCK U 6 Bright A_MeleeAttack	
    Goto See 	
  Pain:
    TNT1 A 0 A_Jump(8,"Rage")	
  	TNT1 A 0 A_Jump(42,"Teleport")	
	TNT1 A 0 A_Jump(128,"PainMissile")
    BOCK H 2
    BOCK H 2 A_Pain
    Goto See
  PainMissile: 
    BOCK H 3 Bright	
    BOCK H 3 Bright A_Pain
    Goto Missile
  XDeath:
  Death:
    TNT1 A 0 A_StopSound(6)
	BOCK I 8
    BOCK J 8 A_Scream
    BOCK K 8
    BOCK L 8 A_NoBlocking
    BOCK MN 8
    BOCK O -1 A_BossDeath
    Stop
	}
}

ACTOR BockGhost : LNGhost
{
Scale 1.2
RENDERSTYLE Translucent
Alpha 0.75
+NOGRAVITY
+CLIENTSIDEONLY
+DONTSPLASH
+NOINTERACTION
+NOCLIP
+NOTIMEFREEZE
States
{
Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(CallAcs("LCAEffectCheck"),"Toaster")
    BOCK A 2 A_FadeOut(0.09)
    Loop
  Toaster:
    TNT1 A 0
	Stop		
    }
}

ACTOR Bockfire : GoldWalkFire
{
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(CallAcs("LCAEffectCheck"),"Toaster")
    TNT1 A 10
    BOCF ABC 3 Bright
    TNT1 A 0 A_Jump(191,3)
    TNT1 A 0 A_CustomMissile("Bockfire", 0, 24, 0)
    TNT1 A 0 A_CustomMissile("Bockfire", 0, -24, 0)
    BOCF DEFGHIJKLMNO 3 Bright
    Stop
    }
}

Actor FacebockSummoner
{
 Height 8
 Radius 25
 Speed 30
 Damage (0)
 +RippeR
 +BloodlessImpact
 +NOTIMEFREEZE
  States
   {
    Spawn:
	 TNT1 A 5
	Death:
	 TNT1 A 0
	 TNT1 A 0 A_SpawnItemEx("GHellionSmokeSpawner",0,0,0,0,0,0,0,128)
	 TNT1 A 2
	 TNT1 A 0 A_SpawnItemEx("BaronOfHell~")
	 Stop
   }
}

Actor FacebockSpawner
{
  States
  {
  Spawn:
	TNT1 AA 0 NoDelay A_SpawnItemEx("FacebockSpawner2",random(-250,250),random(-250,250),0,0,0,0,0,SXF_NOCHECKPOSITION,0,tid)
	Stop
  }
}

Actor FacebockSpawner2
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A random(0,10)
	TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_SpawnItemEx("Facebock",0,0,0,0,0,0,random(0,360),0,0,tid)
	Stop
	}
}