ACTOR GuncastCleric : ClericBoss replaces ClericBoss
{
	DropItem "Diamond"
	DamageFactor Fire3, 1.2
	States
	{
	Pain.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-5.0,-10.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-10.0,-15.0),0,frandom(7.0,10.0),CVF_RELATIVE)
		Goto Pain
	Death.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-5.0,-10.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto XDeath
	Death.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-10.0,-15.0),0,frandom(7.0,10.0),CVF_RELATIVE)
		Goto XDeath
	Death.Acid:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx("ClericGib")
		Stop
	Crush:
		TNT1 AAAAAAAAAA 0 A_CustomMissile ("BloodTr255", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_PlaySound("misc/xdeath4")
		XBIG 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))
		XBIG E -1
		Stop
	Death.Crow:
		TNT1 AA 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,0,128)
		Goto Super::Death
	Death:
		CLER I 6
		CLER K 6 A_Scream
		CLER LL 6
		CLER M 6 A_NoBlocking
		CLER NOP 6
	Looplet1:
		CLER Q 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		CLER Q 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	XDeath:
		CLER R 5 A_Scream
		CLER S 5
		CLER T 5 A_NoBlocking
		CLER UVWXYZ 5
	Looplet2:
		CLER Z 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastC")
		CLER "[" 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	CorpseBlastA:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		Stop
	CorpseBlastB:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet1
	CorpseBlastC:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet2
  }
}

ACTOR HoomanBlast : BlastShared
{
	States
	{
	Spawn:
		 TNT1 AA 0 A_Explode(400,164,0)
		 TNT1 A 0 A_PlaySound("Corpseblast/Hit")
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAA 0 A_CustomMissile ("SuperWallRedBlood", 6, 0, random (0, 360), 2, random (-5, 5))
		 TNT1 AAAAAAA 0 A_CustomMissile ("Instestin", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 6, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAA 0 A_CustomMissile ("SuperGoreSpawner", 6, 0, random (0, 360), 2, random (50, 130))
		 Stop
	 }
}

ACTOR ClericGib : GibShared
{
	States
	{
	Spawn:
	     CLER H 1
		"####" "#" 1 A_Playsound("Gumpop/Expand",5)
		"####" "###################################" 1 A_SetScale(ScaleX+frandom(0.01,0.025))
		"####" "#" 1 A_Playsound("Gumpop/Pop",5)
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAA 0 A_CustomMissile ("SuperWallRedBlood", 40, 0, random (0, 360), 2, random (-5, 5))
		 TNT1 AAAAAAA 0 A_CustomMissile ("Instestin", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 35, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAA 0 A_CustomMissile ("SuperGoreSpawner", 32, 0, random (0, 360), 2, random (50, 130))
		TNT1 A 0 A_Gravity
		XBIG B 5 A_XScream
		XBIG C 5 A_BossDeath 
		XBIG D 5 A_NoBlocking
		XBIG E 5
		TNT1 A 0 A_CustomMissile ("GiantBloodSpot", 4, 0, random (0, 360), 2, random (0, 160))
		XBIG E -1
		Stop
	}
}

ACTOR GuncastMage : MageBoss replaces MageBoss
{
	DropItem "Diamond"
    //Yep, just smack him on zerk once, and he's dead. A little joke of mine, heh.
	DamageFactor SuperCloseCombat, 600.0
	DamageFactor SuperSholeaces, 600.0
	DamageFactor Annihiliation, 0.8
	States
	{
	Pain.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-10.0,-12.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-15.0,-20.0),0,frandom(10.0,15.0),CVF_RELATIVE)
		Goto Pain
	Death.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-10.0,-12.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto XDeath
	Death.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-15.0,-20.0),0,frandom(10.0,15.0),CVF_RELATIVE)
		Goto XDeath
	Death.Acid:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx("MageGib")
		Stop
	Crush:
		TNT1 AAAAAAAAAA 0 A_CustomMissile ("BloodTr255", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_PlaySound("misc/xdeath4")
		XBIG 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))
		XBIG E -1
		Stop
	Death.Crow:
		TNT1 A 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,0,128)
		Goto Super::Death
	Death:
		MAGE H 6
		MAGE I 6 A_Scream
		MAGE JK 6
		MAGE L 6 A_NoBlocking
		MAGE M 6
	Looplet1:
		MAGE N 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		MAGE N 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	XDeath:
		MAGE O 5 A_Scream
		MAGE P 5
		MAGE R 5 A_NoBlocking
		MAGE S 5
		MAGE T 5
		MAGE U 5
		MAGE V 5
		MAGE W 5
	Looplet2:
		MAGE X 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastC")
		MAGE X 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	CorpseBlastA:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		Stop
	CorpseBlastB:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet1
	CorpseBlastC:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet2
	}
}

ACTOR MageGib : GibShared
{
	States
	{
	Spawn:
	     MAGE G 1
		"####" "#" 1 A_Playsound("Gumpop/Expand",5)
		"####" "###################################" 1 A_SetScale(ScaleX+frandom(0.01,0.025))
		"####" "#" 1 A_Playsound("Gumpop/Pop",5)
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAA 0 A_CustomMissile ("SuperWallRedBlood", 40, 0, random (0, 360), 2, random (-5, 5))
		 TNT1 AAAAAAA 0 A_CustomMissile ("Instestin", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 35, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAA 0 A_CustomMissile ("SuperGoreSpawner", 32, 0, random (0, 360), 2, random (50, 130))
		TNT1 A 0 A_Gravity
		XBIG B 5 A_XScream
		XBIG C 5 A_BossDeath 
		XBIG D 5 A_NoBlocking
		XBIG E 5
		TNT1 A 0 A_CustomMissile ("GiantBloodSpot", 4, 0, random (0, 360), 2, random (0, 160))
		XBIG E -1
		Stop
	}
}

ACTOR GuncastFighter : FighterBoss replaces FighterBoss
{
	DropItem "Diamond"
	States
	{
	Pain.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-2.0,-5.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-6.0,-10.0),0,frandom(4.0,6.0),CVF_RELATIVE)
		Goto Pain
	Death.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-2.0,-5.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto XDeath
	Death.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-6.0,-10.0),0,frandom(4.0,6.0),CVF_RELATIVE)
		Goto XDeath
	Death.Acid:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx("MageGib")
		Stop
	Crush:
		TNT1 AAAAAAAAAA 0 A_CustomMissile ("BloodTr255", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_PlaySound("misc/xdeath4")
		XBIG 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))
		XBIG E -1
		Stop
	Death.Crow:
		TNT1 AAA 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,0,128)
		Goto Super::Death
	Death:
		PLAY H 6
		PLAY I 6 A_Scream
		PLAY JK 6
		PLAY L 6 A_NoBlocking
		PLAY M 6
	Looplet1:
		PLAY N 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		PLAY N 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	XDeath:
		PLAY O 5 A_Scream
		PLAY P 5 A_SkullPop
		PLAY R 5 A_NoBlocking
		PLAY STUV 5
	Looplet2:
		PLAY W 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastC")
		PLAY W 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
	CorpseBlastA:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		Stop
	CorpseBlastB:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet1
	CorpseBlastC:
		TNT1 A 0 A_SpawnItemEx("HoomanBlast")
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet2
	}
}

ACTOR FighterGib : GibShared
{
	States
	{
	Spawn:
	     PLAY G 1
		"####" "#" 1 A_Playsound("Gumpop/Expand",5)
		"####" "###################################" 1 A_SetScale(ScaleX+frandom(0.01,0.025))
		"####" "#" 1 A_Playsound("Gumpop/Pop",5)
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAA 0 A_CustomMissile ("SuperWallRedBlood", 40, 0, random (0, 360), 2, random (-5, 5))
		 TNT1 AAAAAAA 0 A_CustomMissile ("Instestin", 32, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 35, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAA 0 A_CustomMissile ("SuperGoreSpawner", 32, 0, random (0, 360), 2, random (50, 130))
		TNT1 A 0 A_Gravity
		XBIG B 5 A_XScream
		XBIG C 5 A_BossDeath 
		XBIG D 5 A_NoBlocking
		XBIG E 5
		TNT1 A 0 A_CustomMissile ("GiantBloodSpot", 4, 0, random (0, 360), 2, random (0, 160))
		XBIG E -1
		Stop
	}
}
