ACTOR BrutalGuncastBruiserKnight: Hellknight2 Replaces Hellknight2
{
	Height 64

	//Loot
	DropItem Ruby

	//Resists & Weaknesses
	
	//Hell's advanced minor tanks. Classic meatshield, doesn't possess any particular
	//resists, just being healthy in general. I always thought since childhood that they
	//are throwing not green fire, as I found out later, but some sludge. So I am sticking
	//with that idea and they are resistant to popper. :V
	
	DamageFactor Acid, 0.8

	//PAAAAAIN
	PainChance 50
	PainChance Crow, 2
	PainChance Crow2, 2
	
	//Guaranteed Effects
	PainChance SuperCloseCombat, 256
	PainChance SuperShoelaces, 256
	PainChance SuperMidasCloseCombat, 256
	PainChance SuperMidasShoelaces, 256
	PainChance Acid, 256
	PainChance Meteorfist, 256
	
	//Chance Effects
	PainChance Lightning, 128
	PainChance LightningBlue, 16
	PainChance Manuel, 50
	PainChance Fire, 50
	
	var int User_DeathByFire;
	var int User_DeathByTiberium;
	var int User_DeathByBlueTiberium;
	var int User_LightningLock;
	var int User_Smoke;
	var int User_SmokeLoop;
	
	States
	{
	Pain.SuperCloseCombat:
	Pain.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-8.0,-10.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
	Pain.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		Goto Pain.Kick
	Death.SuperCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-8.0,-10.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		TNT1 A 0 A_Jump(64,"Death.SSG")
		Goto XDeath
	Death.SuperShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		TNT1 A 0 A_Jump(64,"Death.SSG")
		Goto XDeath
	Death.MidasCloseCombat:
	Death.MidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 5 A_SpawnItemEx("Midas_Statue_Hellknight",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERSCALE) //SXF_TRANSFERSPRITEFRAME|SXF_SETMASTER)
		Stop
	Death.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_Hellknight",0,0,0,frandom(-8.0,-10.0),0,frandom(1.0,3.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSCALE)
		TNT1 A 10 A_KillChildren
		stop
	Death.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_Hellknight",0,0,0,frandom(-13.0,-17.0),0,frandom(9.0,11.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSCALE)
		TNT1 A 10 A_KillChildren
		Stop
	
	//Standard death stuff
	/*Crush:
		TNT1 AAAAAAAAAA 0 A_CustomMissile ("BloodTr255", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_PlaySound("misc/xdeath4")
		XMED EEEEE 1 A_CustomMissile ("CeilBloodLauncherLong", 0, 0, random (0, 360), 2, random (50, 130))
		TNT1 A 0 A_CustomMissile ("GiantBloodSpot", 4, 0, random (0, 360), 2, random (0, 160))
		XMED E 0
		Goto Looplet*/
	Death.Shotgun:
		TNT1 A 0
		TNT1 A 0 A_Jump(96, "Death.Arm")
		TNT1 A 0 A_JumpIfCloser(250, "Death.Blast")	
		Goto Death

	Death:
        TNT1 A 0
		TNT1 A 0 A_Jump(64, "Death.Arm")
		HKDD A 10
		HKDD B 10 A_Scream
		HKDD C 10
		HKDD D 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_SpawnItem("DeadKnight")
	    Stop
	Death.Arm:		
		TNT1 A 0 A_CustomMissile ("XDeathHellKnightArm", 55, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("MuchBlood2", 55, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_SpawnItem("DyingHellKnight1")
		Stop
	Death.Blast:
	Death.SSG:
		TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAAA 0 A_CustomMissile ("XDeath1", 40, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 15, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("XDeath2b", 45, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("XDeath3b", 45, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("Instestin2", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("XDeathBrain1", 60, 0, random (0, 360), 2, random (0, 160))
        BOS2 PQRSTU 6
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		TNT1 A 0 A_SetUserVar("User_SmokeLoop", 70) //Yeah, I know this isn't doing a smoke loop, but I'm too lazy to come up with yet another user variable... XD
	BloodLoop:
		BOS2 V 1 A_JumpIf(User_SmokeLoop <= 0, "Looplet")
		BOS2 V 0 A_CustomMissile ("Brutal_LiquidBlood", 20, 0, random (0, 360), 2, random (30, 110))
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		"####" "#" 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		Loop
	XDeath:
	    TNT1 A 0 A_XScream
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
	    TNT1 A 0 A_CustomMissile ("KnightXDeath", 0, 0, random (0, 360), 2, random (0, 160))
	    Stop

    Death.Crush:
	Death.Cut:
	Death.Saw:
        TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAAA 0 A_CustomMissile ("XDeath1", 40, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 15, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAA 0 A_CustomMissile ("Instestin2", 32, 0, random (0, 360), 2, random (0, 160))
	    TNT1 A 0 A_CustomMissile ("XDeathHalfHK", 24, 0, random (0, 360), 2, random (0, 160))
        BBO1 AAAAAAAAAABBBBBCCCCC 2 A_CustomMissile ("Brutal_LiquidBlood", 30, 0, random (0, 360), 2, random (30, 110))
		BBO1 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_CustomMissile ("Brutal_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_SpawnItem ("DeadKnightHalfDown", 1)
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		Stop

	Death.CutLess:
        TNT1 A 0
		TNT1 A 0 A_Jump(192, "Death.Arm")
        TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAAA 0 A_CustomMissile ("XDeath1", 40, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 15, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAA 0 A_CustomMissile ("Instestin2", 32, 0, random (0, 360), 2, random (0, 160))
	    TNT1 A 0 A_CustomMissile ("XDeathHalfHK", 24, 0, random (0, 360), 2, random (0, 160))
        BBO1 AAAAAAAAAABBBBBCCCCC 2 A_CustomMissile ("Brutal_LiquidBlood", 30, 0, random (0, 360), 2, random (30, 110))
		BBO1 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_CustomMissile ("Brutal_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_SpawnItem ("DeadKnightHalfDown", 1)
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		Stop


	Death.head:
	    TNT1 A 0 A_JumpIfInTargetInventory("HasPlasmaWeapon", 1, "Death.Plasma")
		TNT1 A 0 A_JumpIfHealthLower(-80, "Death.HeadExplode")
		TNT1 A 0 A_SpawnItem("HellKnightHeadExplodeHalf", 0, 62)
		TNT1 A 0 A_Pain
		BTN5 AABBAACC 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_Pain
		BTN5 AAABBBAAACCC 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_Pain
		BTN5 AAABBBAAACCC 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_Pain
		BTN5 AAABBBAAACCC 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_Scream
		BTN5 DDD 2 A_CustomMissile ("Brutal_LiquidBlood", 50, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        BTN5 EEE 2 A_CustomMissile ("Brutal_LiquidBlood", 30, 0, random (0, 360), 2, random (30, 110))
		BTN5 FFFFFFFFFFFFFFFFFFFFFFFFFFFFF 2 A_CustomMissile ("Brutal_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_SPawnItem ("DeadKnightBTN5F")
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
	    Stop

	Death.headExplode:
	    TNT1 A 0 A_JumpIfInTargetInventory("HasPlasmaWeapon", 1, "Death.Plasma")
	    TNT1 A 0 A_SpawnItem("HellKnightHeadExplode", 0, 62)
		BTN2 AAAAAAAAAAA 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
        BTN2 BBBBB 2 A_CustomMissile ("Brutal_LiquidBlood", 50, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        BTN2 CCCCC 2 A_CustomMissile ("Brutal_LiquidBlood", 30, 0, random (0, 360), 2, random (30, 110))
		BTN2 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 2 A_CustomMissile ("Brutal_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_SpawnItem("DeadKnightNoHead")
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
	    Stop
	Death.decaptate:
	    TNT1 AAAAA 0 A_CustomMissile ("Xdeath1", 62, 0, random (0, 360), 2, random (50, 130))
		TNT1 A 0 A_CustomMissile ("XDeathHellKnightHead", 62, 0, random (0, 360), 2, random (50, 130))
        BTN2 AAAAAAAAAAA 2 A_CustomMissile ("Brutal_LiquidBlood", 62, 0, random (0, 360), 2, random (30, 110))
        BTN2 BBBBB 2 A_CustomMissile ("Brutal_LiquidBlood", 50, 0, random (0, 360), 2, random (30, 110))
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        BTN2 CCCCC 2 A_CustomMissile ("Brutal_LiquidBlood", 30, 0, random (0, 360), 2, random (30, 110))
		BTN2 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 2 A_CustomMissile ("Brutal_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 110))
        TNT1 A 0 A_SpawnItem("DeadKnightNoHead")
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
	    Stop
		
		
    Death.GreenFire:
        TNT1 A 0
        TNT1 A 0 A_XScream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 AAAA 0 A_CustomMissile ("Brutal_Blood", 30, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("XDeathBurnedMeat", 32, 0, random (0, 360), 2, random (0, 160))
	    TNT1 AA 0 A_CustomMissile ("XDeathBurnedMeat2", 32, 0, random (0, 360), 2, random (0, 160))
	    TNT1 AA 0 A_CustomMissile ("XDeathBurnedMeat3", 32, 0, random (0, 360), 2, random (0, 160))
		
		EXPL AAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("GreenFlameTrails", 50, 0, random (0, 360), 2, random (0, 360))
		XBRN AAAA 2 BRIGHT A_SpawnItem("GreenFlare",0,43)
        Stop

	Death.ExplosiveImpact:
        TNT1 A 0
		TNT1 A 0 ThrustThingZ(0,35,0,1)
		TNT1 A 0 A_CustomMissile ("XDeathHellKnightArm", 62, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeathHellKnightLeg", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAA 0 A_CustomMissile ("XDeath1", 62, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("MuchBlood", 62, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_Jump(255, "Death.ExplosiveImpact1", "Death.ExplosiveImpact2")
	
	Death.ExplosiveImpact1:	
		BAH3 A  8 A_Scream
		BAH3 B  8 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		BAH3 CCCCCC  8 A_CheckFloor("Land1")
		Goto Land1
	
	Land1:
		TNT1 A 0 A_SpawnItem ("DeadKnightExplosiveImpact1", 1)
	    Stop
	
	Death.ExplosiveImpact2:	
		BAH3 E  8 A_Scream
		BAH3 F  8 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		BAH3 GGGGGG  8 A_CheckFloor("Land2")
		Goto Land2
	
	
	Land2:
		TNT1 A 0 A_SpawnItem ("DeadKnightExplosiveImpact2", 1)
	    Stop


	Raise:
		BOS2 O 8
		BOS2 NMLKJI  8
		Goto See2

    Death.Fatality:
	   
	   
	    TNT1 A 0 A_Pain
		
		TNT1 A 0 A_JumpIfIntargetInventory("FistsSelected", 1, 1)
		Goto Death.ExplosiveImpact
		
		TNT1 A 0 A_GiveToTarget("GoFatality", 1)
		TNT1 A 0 A_Jump(128, "Death.Fatality3")
        TNT1 A 0 A_GiveToTarget("HKFatality", 1)
        TNT1 A 1 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_BossDeath
		Stop
	Death.Fatality3:
        TNT1 A 0 A_GiveToTarget("HKFatality3", 1)
        TNT1 A 1 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_BossDeath
		Stop	
	
	Crush:
	Death.Stomp:
	    TNT1 A 0 A_Scream
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		BOS2 JKL 2
	    TNT1 AA 0 A_SpawnItem("MeatDeathSmall")
		TNT1 AAA 0 bright A_CustomMissile ("SuperGoreSpawner", 5, 0, random (0, 360), 2, random (30, 180))
		TNT1 AAAA 0 bright A_CustomMissile ("XDeath1", 5, 0, random (0, 360), 2, random (30, 180))
		TNT1 AA 0 bright A_CustomMissile ("XDeath2b", 55, 0, random (0, 360), 2, random (30, 180))
		TNT1 AA 0 bright A_CustomMissile ("XDeath3b", 55, 0, random (0, 360), 2, random (30, 180))
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		TNT1 A 0 A_SpawnItem ("CrushedRemains")
		TNT1 A 1
		TNT1 A 1 A_XScream
		Stop

	Looplet:
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 1 CanRaise A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop

	//Corpseblast
	CorpseBlastA:
		"####" "#" 0 A_SpawnItemEx("HellknightBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Stop
	CorpseBlastB:
		"####" "#" 0 A_SpawnItemEx("HellknightBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet
	CorpseBlastC:
		"####" "#" 0 A_SpawnItemEx("HellknightBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet2
		
	
	//Gumpop
	Pain.Acid:
		"####" "#" 0 A_JumpIfInventory("PowerGumpopDamage",1,2)
		"####" "#" 0 A_SpawnItemEx("GumpopIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR|SXF_TRANSFERSPRITEFRAME|SXF_TRANSFERSCALE)
		"####" "#" 0 A_SpawnItemEx("GumpopGlow",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		"####" "#" 0 A_Jump(50,"Pain")
		Goto See
	Death.Acid:
		TNT1 A 0 A_ChangeFlag("DONTGIB",1)
		BOS2 H 1 A_ChangeFlag("SOLID",0)
		"####" "#" 1 A_Playsound("Gumpop/Expand",5)
		"####" "###################################" 1 A_SetScale(ScaleX+frandom(0.01,0.025))
		"####" "#" 1 A_Playsound("Gumpop/Pop",5)
		TNT1 A 0 A_SpawnItemEx("HellknightGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
	    TNT1 A 0 A_XScream
		TNT1 A 0 A_NoBlocking
	    TNT1 A 0 A_CustomMissile ("KnightXDeath", 0, 0, random (0, 360), 2, random (0, 160))
		XMED ABCDE 5
	Looplet2:
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastC")
		"####" "#" 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
		
	//Dreadful
	Death.Tiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByTiberium", 1)
		TNT1 A 0 ACS_NamedExecuteAlways("Toxic Avenger")
		TNT1 A 0 A_SpawnItemEx("TiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		HKDD A 10
		HKDD B 10 A_Scream
		HKDD C 10
		HKDD D 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_SpawnItem("GC_DeadKnight")
		TNT1 A 1 A_GiveToChildren("TibDeathCounter")
	    Stop
	Death.BlueTiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByBlueTiberium", 1)
		TNT1 A 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		TNT1 A 0 A_SpawnItemEx("BlueTiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		HKDD A 10
		HKDD B 10 A_Scream
		HKDD C 10
		HKDD D 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_SpawnItem("GC_DeadKnight")
		TNT1 A 1 A_GiveToChildren("BlueTibDeathCounter")
	    Stop
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(128,1)
		Goto Pain
		"####" "#" 0 A_GiveInventory("BleedItem")
		"####" "#" 0 A_SpawnItemEx("BrutalBleedIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
		
	//Thunderstruck
	Pain.Lightning:
		"####" "#" 0 A_Jump(192,1)
		Goto Pain
		BOS2 H 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	LightningLock:
		"####" "#" 0 A_SpawnItem("HeadshotTarget4b", 0, 56,0)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock - 1)
		"####" "#" 0 A_Pain
		"####" "#" 0 A_PlaySound("Thunderstruck/Shocked",5,0.6,1)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_JumpIf(User_LightningLock >= 1, "LightningLock")
		"####" "#" 0 A_StopSound(5)
		"####" "#" 0 A_ChangeFlag("NOPAIN",0)
		Goto See
		
	//Cauterizer
	Pain.LightningBlue:
		"####" "#" 0 A_Jump(48,1)
		Goto Pain
		BOS2 H 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	BlueLightningLock:
		"####" "#" 0 A_SpawnItem("HeadshotTarget4b", 0, 56,0)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock - 1)
		"####" "#" 0 A_Pain
		"####" "#" 0 A_PlaySound("Thunderstruck/Shocked",5,0.6,1)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_JumpIf(User_LightningLock >= 1, "BlueLightningLock")
		"####" "#" 0 A_StopSound(5)
		"####" "#" 0 A_ChangeFlag("NOPAIN",0)
		Goto See
		
	//Fire
	Pain.Meteorfist:
		TNT1 A 0 A_FaceTarget
		"####" "#" 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		"####" "#" 0 A_Jump(256,2) //Guaranteed "On Fire!" effect, heeeh.
	Pain.Fire:
		"####" "#" 0 A_Jump(16,1)
		Goto Pain
		"####" "#" 0 A_JumpIfInventory("PowerOnFire",1,"Pain")
		"####" "#" 0 A_GiveInventory("OnFireItem")
		"####" "#" 0 A_SpawnItemEx("OnFireIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
	Death.Meteorfist:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		Goto Death.Fire

	Death.Fire:
		TNT1 A 0 A_StopSound(5)
		TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		BOSB AAAA 2 A_CustomMissile ("FlameTrails", 45, 0, random (0, 360), 2, random (50, 130))
		BOSB BBBB 2 A_CustomMissile ("FlameTrails", 30, 0, random (0, 360), 2, random (50, 130))
		BOSB CCCC 2 A_CustomMissile ("FlameTrails", 25, 0, random (0, 360), 2, random (50, 130))
		BOSB DDDD 2 A_CustomMissile ("FlameTrails", 25, 0, random (0, 360), 2, random (50, 130))
        TNT1 A 0 A_Playsound("props/redfire")
		TNT1 A 0 A_SetUserVar("User_SmokeLoop", 80) //Simulates total amount of time elapsed (in tics).
	FlameLoop:
		BOSB E 0 A_JumpIf(User_SmokeLoop <= 0, "Smoking")
		BOSB E 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		BOSB E 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		BOSB E 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		BOSB E 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		//We can duplicate the corpseblast jump twice, since the tic delay is just 2 tics.
		BOSB E 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		BOSB E 0 A_CustomMissile ("FlameTrails", 25, 0, random (0, 360), 2, random (50, 130))
		Loop
	Smoking:
		TNT1 A 0 A_SetUserVar("User_SmokeLoop", 1170) //Simulates total amount of time elapsed (in tics).
	FireSmokeInit:
		TNT1 A 0 A_SetUserVar("User_Smoke", 10) //Simulates tic delay of a single state.
	FireSmokeLoop:
		BOSB E 1 A_JumpIf(User_SmokeLoop <= 0, "Looplet")
        BOSB E 0 A_JumpIf(User_Smoke <= 0, "FireSmoke")        
		BOSB E 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		BOSB E 0 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		BOSB E 0 A_SetUserVar("User_Smoke", User_Smoke - 1)
		BOSB E 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		Loop
	FireSmoke:
		BOSB E 0 A_CustomMissile ("SmallSmoke", 25, 0, random (0, 360), 2, random (70, 110))
		Goto FireSmokeInit

	Death.SuperPlasma:
    Death.Plasma: 
	Death.Plasma2:
	Death.Lightning:
	Death.LightningBlue:
		TNT1 A 0 A_StopSound(5)
        TNT1 A 0 A_BossDeath
        TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAA 0 A_CustomMissile ("PlasmaParticleX", 48, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAA 0 A_CustomMissile ("BigPlasmaParticleX", 42, 0, random (0, 360), 2, random (0, 360))
        BOSB ABC 7 A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
		TNT1 AAAAA 0 A_CustomMissile ("PlasmaParticleX", 48, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAA 0 A_CustomMissile ("BigPlasmaParticleX", 42, 0, random (0, 360), 2, random (0, 360))
		BOSB D 7 A_CustomMissile ("PlasmaSmoke", 14, 0, random (0, 180), 2, random (0, 180))
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		TNT1 A 0 A_SetUserVar("User_SmokeLoop",1480) //Simulates total elapsed time (in tics).
	PlasmaSmokeInit:
		TNT1 A 0 A_SetUserVar("User_Smoke",8) //Simulates tic delay of a single state.
	PlasmaSmokeLoop:
		BOSB E 1 A_JumpIf(User_SmokeLoop <= 0, "Looplet")
        BOSB E 0 A_JumpIf(User_Smoke <= 0, "PlasmaSmoke")
		BOSB E 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		BOSB E 0 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		BOSB E 0 A_SetUserVar("User_Smoke", User_Smoke - 1)
		BOSB E 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		Loop
	PlasmaSmoke:
		BOSB E 0 A_CustomMissile ("PlasmaSmoke", 24, 0, random (0, 180), 2, random (0, 180))
		Goto PlasmaSmokeInit

	//Crows
	Death.Crow:
		"####" "#" 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
	Death.Crow2:
		Goto Death.Saw
		
	//Scourgebreath
	Death.Breath:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 0 A_Scream
		"####" "#" 0 A_NoBlocking
		"####" "#" 0 A_SpawnItemEx("BreathSoulburst",0,0,0,0,0,0,0,SXF_TRANSFERSPRITEFRAME|SXF_TRANSFERPOINTERS)
	DeathBreathLoop:
		"####" "#" 0 A_SpawnItemEx("BreathDisintegration",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		"####" "#" 0 A_JumpIf(ScaleX <= 0, "Null")
		"####" "#" 0 A_FadeOut(0.05)
		"####" "#" 1 A_SetScale(ScaleX - 0.03, ScaleY - 0.005)
		Loop
		
	//Ice
	GenericFreezeDeath:
	Death.Ice:
	Death.Freeze:
	Death.Frost:
	Death.DukeIce:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_JumpIfInventory("ChillgraspTrigger",1,4)
		TNT1 A 0 A_ChangeFlag("SHOOTABLE", 0)
		TNT1 A 0 A_ChangeFlag("SOLID", 0)
		TNT1 A 0 A_SpawnItem("FrozenHellKnight")
		Stop
		FZD6 A 5 A_FreezeDeath
		"----" A 0 A_JumpIfInventory("ChillgraspTrigger",1,2)
		"----" A 0 A_Jump(256,2)
		"----" A 0 A_SpawnItemEx("ChillgraspBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"----" A 1 A_FreezeDeathChunks
		Wait
	Raise:
		"####" "#" 0 A_ChangeFlag("DONTGIB",0)
		"####" "#" 0 ACS_NamedExecuteAlways("Normalization")
		"####" "#" 0 A_SetScale(1.1)
		Goto Super::Raise
	}
}

ACTOR BrutalGuncastStealthBruiserKnight : BrutalGuncastBruiserKnight replaces StealthHellKnight
{
	+STEALTH
	RenderStyle Translucent
	Alpha 0
	Obituary "$OB_STEALTHKNIGHT"
	HitObituary "$OB_STEALTHKNIGHT"
}

//Corpses N' Stuff...

Actor GC_DeadKnight: GC_CurbstompedMarine replaces DeadKnight
{
    Radius 24
    Height 12
    Scale 1.1
    +SHOOTABLE
    +NOTELEPORT
    +MOVEWITHSECTOR
    +CORPSE
	+FLOORCLIP
	-SOLID
	+THRUACTORS
	damagefactor "Crusher", 50.0
    Mass 1000
    Health 200
    damagefactor "Blood", 0.0
    damagefactor "Trample", 0.0
	States
    {
    Spawn:
		HKDD D 0 NoDelay A_SetInvulnerable
	TrueSpawn:
		"####" "#" 0 A_JumpIfInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		"####" "#" 1 A_UnSetInvulnerable
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	TibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	BlueTibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	Continue:
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 1 CanRaise A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		"####" "#" 0 A_JumpIf(User_DeathByTiberium == 1, "TiberiumMelt")
		"####" "#" 0 A_JumpIf(User_DeathByBlueTiberium == 1, "BlueTiberiumMelt")
		Loop
	CorpseBlastA:
		"####" "#" 0 A_SpawnItemEx("HellknightBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Goto Death
	CorpseBlastB:
		"####" "#" 0 A_SetInvulnerable
		"####" "#" 0 A_SpawnItemEx("HellknightBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_UnSetInvulnerable
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	TiberiumMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.485, "EndOfMelt")
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 1 A_SetScale(ScaleX + frandom(0.002,0.003),ScaleY - frandom(0.003,0.004))
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	BlueTiberiumMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.485, "EndOfMelt")
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 1 A_SetScale(ScaleX + frandom(0.002,0.003),ScaleY - frandom(0.003,0.004))
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
	EndOfMelt:
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium", 0)
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium", 0)
		"####" "#" 0 A_Jump(256,"Continue")
		Goto Continue
    Death:
	Death.Stomp:
	Death.ExplosiveImpact:
		"####" "#" 1
		TNT1 A 0 A_SpawnItem("GibsZ")
		TNT1 A 0 A_NoBlocking
		TNT1 AA 0 A_CustomMissile ("GC_XDeath1", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("GC_XDeath2b", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("GC_XDeath3b", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 10, 0, random (0, 360), 2, random (40, 90))
		TNT1 AAAAAAA 0 A_CustomMissile ("GC_XDeathSkinPiece2", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAA 0 A_CustomMissile ("GC_XDeathSkinPiece1", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAAAAAA 0 A_CustomMissile ("SmallSuperGore", 10, 0, random (0, 360), 2, random (10, 170))
		TNT1 AAAA 0 A_CustomMissile ("BloodMistSmall", 35, 0, random (0, 360), 2, random (40, 90))
		TNT1 A 0 A_JumpIfInventory("TibDeathCounter",1,"TibDeath")
		TNT1 A 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibDeath")
		TNT1 A 1
		Stop
	TibDeath:
		TNT1 A 1 A_GiveToChildren("TibDeathCounter")
		Stop
	BlueTibDeath:
		TNT1 A 1 A_GiveToChildren("BlueTibDeathCounter")
		Stop
	Death.Trample:
	Death.Crush:
	Death.Stomp:
		"####" "#" 1
		TNT1 AAAAA 0 A_CustomMissile ("GC_XDeath1", 5, 0, random (0, 360), 2, random (0, 30))
		TNT1 AA 0 A_CustomMissile ("GC_XDeath2b", 5, 0, random (0, 360), 2, random (0, 30))
		TNT1 AAAA 0 A_CustomMissile ("BloodMist", 5, 0, random (0, 360), 2, random (0, 30))
		TNT1 AAAAAAA 0 A_CustomMissile ("GC_XDeathSkinPiece2", 5, 0, random (0, 360), 2, random (10, 30))
		TNT1 AAAA 0 A_CustomMissile ("GC_XDeathSkinPiece1", 5, 0, random (0, 360), 2, random (10, 130))
		TNT1 AAAA 0 A_CustomMissile ("SmallSuperGore", 10, 0, random (0, 360), 2, random (10, 30))
		TNT1 A 0 A_SpawnItem("SplatteredSmall")
		XME2 L 1
		TNT1 A 0 A_JumpIfInventory("TibDeathCounter",1,"TibDeath")
		TNT1 A 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibDeath")
		XME2 L -1
		Stop
	TibDeath:
		XME2 L 1 A_GiveToChildren("TibDeathCounter")
		XME2 L -1
		Stop
	BlueTibDeath:
		XME2 L 1 A_GiveToChildren("BlueTibDeathCounter")
		XME2 L -1
		Stop
	Death.Desintegrate:
		"####" "#" 1
		TNT1 A 0
		TNT1 AAAA 0 A_CustomMissile ("Brutal_FlyingBloodFake", 0, 0, random (0, 360), 2, random (0, 90))
        TNT1 A 0 A_CustomMissile ("Brutal_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 60))
		TNT1 AA 0 A_CustomMissile ("BloodMistSmall", 7, 0, random (0, 360), 2, random (30, 60))
		TNT1 A 0 A_SpawnItem("GibsZ")
		TNT1 A 0 A_SpawnItem("GC_MeatDeathSmall")
		TNT1 A 0 A_JumpIfInventory("TibDeathCounter",1,"TibDeath")
		TNT1 A 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibDeath")
		TNT1 A 1
		Stop
	TibDeath:
		TNT1 A 1 A_GiveToChildren("TibDeathCounter")
		Stop
	BlueTibDeath:
		TNT1 A 1 A_GiveToChildren("BlueTibDeathCounter")
		Stop
	}
}

actor GC_DeadKnightBTN5F: GC_DeadKnight replaces DeadKnightBTN5F
{
    States
    {
    Spawn:
		BTN5 F 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}
	   
Actor GC_DeadKnightHalfDown: GC_DeadKnight replaces DeadKnightHalfDown
{
	States
	{
	Spawn:
		BBO1 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadKnightHalfUp: GC_DeadKnight replaces DeadKnightHalfUp
{
	States
	{
	Spawn:
		BTO1 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadKnightNoHead: GC_DeadKnight replaces DeadKnightNoHead
{
	States
	{
	Spawn:
		BTN2 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_RapedHK: GC_DeadKnight replaces RapedHK
{
	States
	{
	Spawn:
		HKF1 I 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadKnightExplosiveImpact2: GC_DeadKnight replaces DeadKnightExplosiveImpact2
{
	States
	{
	Spawn:
		BAH3 H 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadKnightExplosiveImpact1: GC_DeadKnight replaces DeadKnightExplosiveImpact1
{
	States
	{
	Spawn:
		BAH3 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_OmgSoDeadHK: GC_DeadKnight replaces OmgSoDeadHK
{
	States
	{
	Spawn:
		HKF2 O 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_NoArmNoHeadFatalizedHK: GC_DeadKnight replaces NoArmNoHeadFatalizedHK
{
	States
	{
	Spawn:  
		HKF3 JKLM 5       
		HKF3 N 0 A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadHellKnightNoArm: GC_DeadKnight replaces DeadHellKnightNoArm
{
	States
	{
	Spawn:  
		BTN3 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadHellKnightNoArmNoHead: GC_DeadKnight replaces DeadHellKnightNoArmNoHead
{
	States
	{
	Spawn:  
		BTN4 D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_DeadKnightBlasted: GC_DeadKnight
{
	States
	{
	Spawn:  
		BOS2 V 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}


ACTOR GC_DyingHellKnight: DyingHellKnight replaces DyingHellKnight
{
	Monster
	var int User_DeathByFire;
	var int User_DeathByTiberium;
	var int User_DeathByBlueTiberium;
	var int User_LightningLock;
    States
    {
    Spawn:
		BTC1 A 1 A_Look
		Loop
    See:
		BTC1 ABC 10 A_Chase
		TNT1 A 0 A_SpawnItemEx("Brutal_FlyingBlood", 0, 0, 10, 0, 0)
        BTC1 D 10 A_Pain
		TNT1 A 0 A_SpawnItemEx("Brutal_FlyingBlood", 0, 0, 10, 0, 0)		
		BTC1 ABC 10 A_Chase
		TNT1 A 0 A_SpawnItemEx("Brutal_FlyingBlood", 0, 0, 10, 0, 0)
        BTC1 D 10 A_Pain
		TNT1 A 0 A_SpawnItemEx("GC_Instestin2", 0, 0, 5, 0, 0)
		TNT1 A 0 A_GiveInventory("DeathTimer1", 1)
		TNT1 A 0 A_JumpIfInventory("DeathTimer1", 8, "GotoDeath")
		Loop		
	Pain.Kick:
	Pain.Shoelaces:
	Pain:
		TNT1 A 0 A_CustomMissile ("GC_Teeth", 30, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("Blood", 30, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("GC_TeethNoBounce", 30, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_SpawnItem("CrueltyBonus1health")
		TNT1 A 0 A_Pain
		TNT1 A 0 A_FaceTarget
		BTCK ABA 3
		BTC1 B 20
		Goto See	
	Death.Kick:
	Death.Fatality:
		TNT1 A 0 A_GiveToTarget("GoFatality", 1)
		TNT1 A 0 A_NoBlocking
        TNT1 A 0 A_GiveToTarget("HKFatality2", 1)
        Stop	
	GotoDeath:
		TNT1 A 0
		TNT1 A 0 A_NoBlocking
		Goto Death
	Death:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Pain
		TNT1 A 0 A_SpawnItem ("GC_DeadKnightHalfUp")
		TNT1 A 0 A_JumpIfInventory("TibDeathCounter",1,"TibDeath")
		TNT1 A 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibDeath")
		TNT1 A 1
		Stop
	TibDeath:
		TNT1 A 1 A_GiveToChildren("TibDeathCounter")
		Stop
	BlueTibDeath:
		TNT1 A 1 A_GiveToChildren("BlueTibDeathCounter")
		Stop
	Death.Stomp:
	Death.SSG:
	XDeath:
		TNT1 AAAAAA 0 bright A_CustomMissile ("SuperGoreSpawner", 5, 0, random (0, 360), 2, random (30, 180))
		TNT1 AAAAAA 0 bright A_CustomMissile ("XDeath1", 5, 0, random (0, 360), 2, random (30, 180))
		TNT1 AA 0 bright A_CustomMissile ("XDeath2", 55, 0, random (0, 360), 2, random (30, 180))
		TNT1 AA 0 bright A_CustomMissile ("XDeath3", 55, 0, random (0, 360), 2, random (30, 180))
		TNT1 A 0 A_SpawnItem ("CrushedRemains")
		TNT1 A 1
		TNT1 A 1 A_XScream
		TNT1 A 1 A_NoBlocking
		TNT1 A -1
		TNT1 AAA 0 A_SpawnItem ("CrueltyBonus5Health")
		Stop
	Pain.SuperCloseCombat:
	Pain.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-8.0,-10.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
	Pain.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		Goto Pain
	Death.MidasCloseCombat:
	Death.MidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 5 A_SpawnItemEx("Midas_Statue_DyingHellknight",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERSPRITEFRAME)//|SXF_SETMASTER)
		Stop
	Death.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_DyingHellknight",0,0,0,frandom(-8.0,-10.0),0,frandom(1.0,3.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSPRITEFRAME)
		TNT1 A 10 A_KillChildren
		stop
	Death.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_DyingHellknight",0,0,0,frandom(-13.0,-17.0),0,frandom(9.0,11.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSPRITEFRAME)
		TNT1 A 10 A_KillChildren
		Stop
	//Gumpop
	Pain.Acid:
		"####" "#" 0 A_JumpIfInventory("PowerGumpopDamage",1,2)
		"####" "#" 0 A_SpawnItemEx("GumpopIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR|SXF_TRANSFERSPRITEFRAME)
		"####" "#" 0 A_SpawnItemEx("GumpopGlow",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		"####" "#" 0 A_Jump(50,"Pain")
		Goto See
	Death.Acid:
		"####" "#" 1 A_ChangeFlag("SOLID",0)
		"####" "#" 1 A_Playsound("Gumpop/Expand",5)
		"####" "###################################" 1 A_SetScale(ScaleX+frandom(0.01,0.025))
		"####" "#" 1 A_Playsound("Gumpop/Pop",5)
		Goto XDeath+1
		
	//Dreadful
	Death.Tiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByTiberium", 1)
		TNT1 A 0 ACS_NamedExecuteAlways("Toxic Avenger")
		TNT1 A 0 A_SpawnItemEx("TiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		TNT1 A 0 A_GiveInventory("TibDeathCounter")
		Goto Death
	Death.BlueTiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByBlueTiberium", 1)
		TNT1 A 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		TNT1 A 0 A_SpawnItemEx("BlueTiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		TNT1 A 0 A_GiveInventory("BlueTibDeathCounter")
		Goto Death
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(128,1)
		Goto Pain
		"####" "#" 0 A_GiveInventory("BleedItem")
		"####" "#" 0 A_SpawnItemEx("BrutalBleedIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
		
	//Thunderstruck
	Pain.Lightning:
		"####" "#" 0 A_Jump(192,1)
		Goto Pain
		"####" "#" 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	LightningLock:
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock - 1)
		"####" "#" 0 A_Pain
		"####" "#" 0 A_PlaySound("Thunderstruck/Shocked",5,0.6,1)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty")
		"####" "###" 2 A_SpawnItemEx("MonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_JumpIf(User_LightningLock >= 1, "LightningLock")
		"####" "#" 0 A_StopSound(5)
		"####" "#" 0 A_ChangeFlag("NOPAIN",0)
		Goto See
		
	//Cauterizer
	Pain.LightningBlue:
		"####" "#" 0 A_Jump(48,1)
		Goto Pain
		"####" "#" 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	BlueLightningLock:
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock - 1)
		"####" "#" 0 A_Pain
		"####" "#" 0 A_PlaySound("Thunderstruck/Shocked",5,0.6,1)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "##" 0 ACS_NamedExecuteAlways("Shock me Plenty Blue")
		"####" "###" 2 A_SpawnItemEx("CauterMonsterShock",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_JumpIf(User_LightningLock >= 1, "BlueLightningLock")
		"####" "#" 0 A_StopSound(5)
		"####" "#" 0 A_ChangeFlag("NOPAIN",0)
		Goto See
		
	//Fire
	Pain.Meteorfist:
		"####" "#" 0 A_FaceTarget
		"####" "#" 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		"####" "#" 0 A_Jump(256,2) //Guaranteed "On Fire!" effect, heeeh.
	Pain.Fire:
		"####" "#" 0 A_Jump(16,1)
		Goto Pain
		"####" "#" 0 A_JumpIfInventory("PowerOnFire",1,"Pain")
		"####" "#" 0 A_GiveInventory("OnFireItem")
		"####" "#" 0 A_SpawnItemEx("OnFireIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
	Death.Meteorfist:
		"####" "#" 0 A_FaceTarget
		"####" "#" 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		Goto XDeath
		
	//Crows
	Death.Crow:
		"####" "#" 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Goto Death
		
	//Scourgebreath
	Death.Breath:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 0 A_Scream
		"####" "#" 0 A_NoBlocking
		"####" "#" 0 A_SpawnItemEx("BreathSoulburst",0,0,0,0,0,0,0,SXF_TRANSFERSPRITEFRAME|SXF_TRANSFERPOINTERS)
	DeathBreathLoop:
		"####" "#" 0 A_SpawnItemEx("BreathDisintegration",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		"####" "#" 0 A_JumpIf(ScaleX <= 0, "Null")
		"####" "#" 0 A_FadeOut(0.05)
		"####" "#" 1 A_SetScale(ScaleX - 0.03, ScaleY - 0.005)
		Loop
		
	//Ice
	GenericFreezeDeath:
		"####" "#" 5 A_GenericFreezeDeath
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"----" A 0 A_JumpIfInventory("ChillgraspTrigger",1,2)
		"----" A 0 A_Jump(256,2)
		"----" A 0 A_SpawnItemEx("ChillgraspBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"----" A 1 A_FreezeDeathChunks
		Wait
	}
}

ACTOR Midas_Statue_DyingHellknight: Midas_Statue
{
	Radius 12
	Height 30
	Health 70
	States
	{
	Spawn:
		"####" "#" 1
		Goto Super::Cycle
	Death:
	Crash:
		TNT1 A 0 A_SetUserVar("User_GoldRange",17)
		TNT1 A 0 A_SetUserVar("User_GoldAmount",12)
		TNT1 A 0 A_SetUserVar("User_GoldCounter1",10)
		TNT1 A 0 A_SetUserVar("User_GoldCounter2",5)
		Goto Super::DeathInit
	MidasReward:
		TNT1 A 0 A_JumpIf(CallACS("MoneyShareCheck"),2)
		TNT1 A 0 A_GiveToTarget("Dosh",75)
		Stop
		TNT1 A 0 ACS_NamedExecuteAlways("MoneySharing",0,75)
		Stop
	}
}
