ACTOR GuncastDsparilRider : Sorcerer1 Replaces Sorcerer1
{
	//Loot
	DropItem "Diamond"
	
	//D'Sparil's ride is again a display of physical resistance monstroity.
	
	//Resistances & Weaknesses
	DamageFactor Fire, 0.8
	DamageFactor Meteorfist, 0.7
	DamageFactor Crow, 0.6
	DamageFactor Crow2, 0.6
	DamageFactor Normal, 0.8
	DamageFactor Matriarch, 0.8
	DamageFactor Tiberium, 0.8
	DamageFactor BlueTiberium, 0.8
	
	DamageFactor CloseCombat, 0.5
	DamageFactor Shoelaces, 0.5
	DamageFactor SuperCloseCombat, 0.5
	DamageFactor SuperShoelaces, 0.5
	DamageFactor SuperMidasCloseCombat, 0.5
	DamageFactor SuperMidasShoelaces, 0.5
	
	//PAAAAAIN
	PainChance 56
	PainChance Crow, 1
	PainChance Crow2, 1
	
	//Guaranteed Effects
	PainChance SuperCloseCombat, 256
	PainChance SuperShoelaces, 256
	PainChance SuperMidasCloseCombat, 256
	PainChance SuperMidasShoelaces, 256
	PainChance Acid, 256
	PainChance Meteorfist, 256
	
	//Chance Effects
	PainChance Lightning, 72
	PainChance LightningBlue, 4
	PainChance Manuel, 56
	PainChance Fire, 24
	PainChance Ice, 10
	
	var int User_DeathByFire;
	var int User_DeathByTiberium;
	var int User_DeathByBlueTiberium;
	var int User_LightningLock;
	
	States
	{
	//Melee Stuff
	Pain.SuperCloseCombat:
	Pain.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-2.0,-4.0),0,frandom(0.5,1.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
	Pain.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-4.0,-8.0),0,frandom(3.0,5.0),CVF_RELATIVE)
		Goto Pain
	Death.SuperCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-2.0,-4.0),0,frandom(0.5,1.0),CVF_RELATIVE)
		Goto Death
	Death.SuperShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-4.0,-8.0),0,frandom(3.0,5.0),CVF_RELATIVE)
		Goto Death

	Death:
		SRCR E 0 A_StopSound(5)
		SRCR E 7
		SRCR F 7 A_Scream
		"####" "######" 0 A_DropItem("MajorManaPot",-1,224)
		SRCR F 0 A_QuakeEx(9,9,9,60,0,512,none,QF_SCALEDOWN)
		SRCR F 0 A_SpawnItemEx("DSparilRideGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		SRCR G 7
		SRCR HIJK 6
		SRCR L 25 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
		SRCR MN 5
		SRCR O 4
		SRCR L 20 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
		SRCR MN 5
		SRCR O 4
		SRCR L 12
		SRCR P 1 A_SorcererRise
	Looplet:
		SRCR P 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		SRCR P 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
		
	//Corpseblast
	CorpseBlastA:
		TNT1 A 0 A_SpawnItemEx("DSparilRideBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Stop
	CorpseBlastB:
		TNT1 A 0 A_SpawnItemEx("DSparilRideBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		TNT1 A 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Looplet
		
	//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(56,"Pain")
		Goto See
	/*Death.Acid:
		SOR2 Q 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)
		"####" "######" 0 A_DropItem("MajorManaPot",-1,224)
		TNT1 A 0 A_SpawnItemEx("DSparilRideGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		TNT1 A 0 A_QuakeEx(9,9,9,60,0,512,none,QF_SCALEDOWN)
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_BossDeath
		XBIG ABCDE 5
		Wait
		Stop*/
		
	//Dreadful
	Death.Tiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByTiberium", 1)
		//TNT1 A 0 ACS_NamedExecuteAlways("Toxic Avenger") //Unless you wanna see your D'Sparil green, I wouldn't recommend uncommenting that.
		TNT1 A 0 A_SpawnItemEx("TiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Death
	Death.BlueTiberium:
		TNT1 A 0 A_SetUserVar("User_DeathByBlueTiberium", 1)
		//TNT1 A 0 ACS_NamedExecuteAlways("Blue Oyster Cult") //Same here, just blue variation.
		TNT1 A 0 A_SpawnItemEx("BlueTiberiumDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Death
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(64,1)
		Goto Pain
		"####" "#" 0 A_GiveInventory("BleedItem")
		"####" "#" 0 A_SpawnItemEx("BleedIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
		
	//Thunderstruck
	Pain.Lightning:
		"####" "#" 0 A_Jump(128,1)
		Goto Pain
		MNTR E 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 8)
	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(24,1)
		Goto Pain
		MNTR E 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 8)
	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:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-4.0,-8.0),0,frandom(3.0,5.0),CVF_RELATIVE)
		"####" "#" 0 A_Jump(256,2) //Guaranteed "On Fire!" effect, heeeh.
	Pain.Fire:
		TNT1 A 0 A_FaceTarget
		"####" "#" 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_ChangeVelocity(frandom(-4.0,-8.0),0,frandom(3.0,5.0),CVF_RELATIVE)
	Death.Lightning:
	Death.LightningBlue:
	Death.Fire:
		"####" "#" 0 A_SetUserVar("User_DeathByFire", 1)
		"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 0 A_SpawnItemEx("FlamingDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Death
	FireMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.35, "EndOfMelt")
		"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 1 A_SetScale(ScaleX + frandom(0.002,0.003),ScaleY - frandom(0.003,0.004))
		Goto Looplet
	EndOfMelt:
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium", 0)
		"####" "#" 0 A_SetUserVar("User_DeathByFire", 0)
		Goto Looplet
		
	//Crows
	Death.Crow:
		TNT1 AAAAAA 0 A_SpawnItemEx("FlockOfCrows",random(45,-45),random(45,-45),random(25,0),0,0,0,0,SXF_TRANSFERPOINTERS)
		Goto Death
		
	//Scourgebreath
	/*Death.Breath:
		"####" "#" 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
		"----" 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 DSparilRideGibbed
{
	States
	{
	Spawn:
		 TNT1 A 0
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 A 0 A_CustomMissile ("XDeathGuts", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAA 0 A_CustomMissile ("Instestin", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAA 0 bright A_CustomMissile ("SuperGoreSpawner", 8, 0, random (0, 360), 2, random (50, 130))
		 Stop
	 }
}

ACTOR DSparilRideBlast : BlastShared
{
	States
	{
	DamageStuff:
		TNT1 A 0 A_Explode(400,486,0)
		TNT1 AAAAAAAA 0 A_SpawnItemEx("CorpsespiritSmall",frandom(-60.0,60.0),frandom(-60.0,60.0),frandom(0.0,60.0),0,0,1,frandom(0.0,360.0),SXF_TRANSFERPOINTERS,96)
		TNT1 AAAA 0 A_SpawnItemEx("CorpsespiritMedium",frandom(-60.0,60.0),frandom(-60.0,60.0),frandom(0.0,60.0),0,0,1,frandom(0.0,360.0),SXF_TRANSFERPOINTERS,96)
		TNT1 A 0 A_SpawnItemEx("CorpsespiritLarge",0,0,0,0,0,1,0,SXF_TRANSFERPOINTERS)
	Main:
		TNT1 A 0 A_SpawnItemEx("DSparilRideGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		Stop
	 }
}

ACTOR GuncastDsparil : Sorcerer2 Replaces Sorcerer2
{
	//Loot
	DropItem "Diamond"
	DropItem "StratSpawner" 32
	
	//The man himself. Lightning is his element,
	//so I wouldn't recommend using that against him.
	//You can cheese him with melee, if you can get near that is.
	//Other elemental attacks also works pretty well.
	//Maybe he has no weaknesses against those, but at least no resists, either!
	
	//Resists & Weaknesses
	DamageFactor Lightning, 0.6
	DamageFactor LightningBlue, 0.6
	DamageFactor Crow, 0.6
	DamageFactor Crow2, 0.6
	DamageFactor Tiberium, 0.7
	DamageFactor BlueTiberium, 0.7
	DamageFactor Normal, 0.8
	DamageFactor Matriarch, 0.8
	
	DamageFactor CloseCombat, 1.25
	DamageFactor Shoelaces, 1.25
	DamageFactor SuperCloseCombat, 1.25
	DamageFactor SuperShoelaces, 1.25
	DamageFactor SuperMidasCloseCombat, 1.25
	DamageFactor SuperMidasShoelaces, 1.25
	
	//PAAAAAIN
	PainChance 32
	PainChance Crow, 1
	PainChance Crow2, 1
	
	//Guaranteed Effects
	PainChance SuperCloseCombat, 256
	PainChance SuperShoelaces, 256
	PainChance SuperMidasCloseCombat, 256
	PainChance SuperMidasShoelaces, 256
	PainChance Acid, 256
	PainChance Meteorfist, 256
	
	//Chance Effects
	PainChance Lightning, 72
	PainChance LightningBlue, 4
	PainChance Manuel, 32
	PainChance Fire, 32
	PainChance Ice, 8
	
	var int User_DeathByFire;
	var int User_DeathByTiberium;
	var int User_DeathByBlueTiberium;
	var int User_LightningLock;
	States
	{
	Pain.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-4.0,-6.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain
	Pain.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(6.0,8.0),CVF_RELATIVE)
		Goto Pain
	Death.SuperCloseCombat:
		TNT1 A 0 A_ChangeVelocity(frandom(-4.0,-6.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Death
	Death.SuperShoelaces:
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(6.0,8.0),CVF_RELATIVE)
		Goto Death
	Death.MidasCloseCombat:
	Death.MidasShoelaces:
		TNT1 A 1 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_Derpsparil",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS) //SXF_TRANSFERSPRITEFRAME|SXF_SETMASTER)
		TNT1 A 5 A_BossDeath
		Stop
	Death.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_Derpsparil",0,0,0,frandom(-2.0,-4.0),0,frandom(0.5,1.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER)
		TNT1 A 0 A_BossDeath
		TNT1 A 10 A_KillChildren
		stop
	Death.SuperMidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_SpawnItemEx("Midas_Statue_Derpsparil",0,0,0,frandom(-4,-8.0),0,frandom(3.0,5.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER)
		TNT1 A 0 A_BossDeath
		TNT1 A 10 A_KillChildren
		Stop
		
	//Standard death stuff
	Death:
		SDTH A 8 A_Sor2DthInit
		SDTH B 8
		SDTH C 8 A_PlaySound("dsparil/scream", CHAN_BODY, 1, FALSE, ATTN_NONE)
	DeathLoop:
		SDTH DE 7
		SDTH F 7 A_Sor2DthLoop
		SDTH G 6 A_PlaySound("dsparil/explode", CHAN_BODY, 1, FALSE, ATTN_NONE)
		SDTH H 6
		SDTH I 18
		"####" "######" 0 A_DropItem("MajorManaPot",-1,224)
		SDTH J 6 A_NoBlocking
		SDTH K 6 A_PlaySound("dsparil/bones", CHAN_BODY, 1, FALSE, ATTN_NONE)
		SDTH LMN 6
		SDTH O -1 A_BossDeath
		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(25,"Pain")
		Goto See
	/*Death.Acid:
		SORC Q 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)
		"####" "######" 0 A_DropItem("MajorManaPot",-1,224)
		TNT1 A 0 A_SpawnItemEx("DSparilRideGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		TNT1 A 0 A_QuakeEx(9,9,9,60,0,512,none,QF_SCALEDOWN)
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_BossDeath
		TNT1 A 0 A_KillChildren
		XMED ABCDE 5
		Wait*/
		
	//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)
		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)
		Goto Death
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(64,1)
		Goto Pain
		"####" "#" 0 A_GiveInventory("BleedItem")
		"####" "#" 0 A_SpawnItemEx("BleedIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Pain
		
	//Thunderstruck
	Pain.Lightning:
		"####" "#" 0 A_Jump(32,1)
		Goto Pain
		SOR2 Q  0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 8)
	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(4,1)
		Goto Pain
		SOR2 Q 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 8)
	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:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(6.0,8.0),CVF_RELATIVE)
		"####" "#" 0 A_Jump(256,2) //Guaranteed "On Fire!" effect, heeeh.
	Pain.Fire:
		TNT1 A 0 A_FaceTarget
		"####" "#" 0 A_Jump(6,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_ChangeVelocity(frandom(-12.0,-16.0),0,frandom(6.0,8.0),CVF_RELATIVE)
	Death.Lightning:
	Death.LightningBlue:
	Death.Fire:
		"####" "#" 0 A_SetUserVar("User_DeathByFire", 1)
		//"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 0 A_SpawnItemEx("FlamingDeath",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto Death
		
	//Crows
	Death.Crow:
		TNT1 A 0 A_SpawnItemEx("FlockOfCrows",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Goto Death
		
	//Scourgebreath
	/*Death.Breath:
		"####" "#" 0 ACS_NamedExecuteAlways("Extra Crispy")
		"####" "#" 0 A_Scream
		"####" "#" 0 A_NoBlocking
		"####" "#" 0 A_BossDeath
		"####" "#" 0 A_KillChildren
		"####" "#" 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_BossDeath
		"####" "#" 0 A_KillChildren
		"----" 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_Derpsparil : Midas_Statue
{
	Radius 16
	Height 70
	Health 300
	States
	{
	Spawn:
		SOR2 Q 1
		Goto Super::Cycle
	Death:
	Crash:
		TNT1 A 0 A_SetUserVar("User_GoldRange",10)
		TNT1 A 0 A_SetUserVar("User_GoldAmount",25)
		TNT1 A 0 A_SetUserVar("User_GoldCounter1",45)
		TNT1 A 0 A_SetUserVar("User_GoldCounter2",35)
		Goto Super::DeathInit
	MidasReward:
		TNT1 A 0 A_JumpIf(CallACS("MoneyShareCheck"),2)
		TNT1 A 0 A_GiveToTarget("Dosh",2000)
		Stop
		TNT1 A 0 ACS_NamedExecuteAlways("MoneySharing",0,2000)
		Stop
	}
}

ACTOR DSparilGibbed
{
	States
	{
	Spawn:
		 TNT1 A 0
		 TNT1 AAA 0 A_CustomMissile ("XDeath1", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath2", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAA 0 A_CustomMissile ("XDeath3", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AA 0 A_CustomMissile ("XDeath4", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 A 0 A_CustomMissile ("XDeathGuts", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAA 0 A_CustomMissile ("Instestin", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("Brutal_FlyingBlood", 8, 0, random (0, 360), 2, random (0, 160))
		 TNT1 AAAAAAAAAAAA 0 bright A_CustomMissile ("SuperGoreSpawner", 8, 0, random (0, 360), 2, random (50, 130))
		 Stop
	 }
}

ACTOR DSparilBlast : BlastShared
{
	States
	{
	DamageStuff:
		TNT1 A 0 A_Explode(400,486,0)
		TNT1 AAAAAAAAA 0 A_SpawnItemEx("CorpsespiritSmall",frandom(-60.0,60.0),frandom(-60.0,60.0),frandom(0.0,60.0),0,0,1,frandom(0.0,360.0),SXF_TRANSFERPOINTERS,96)
		TNT1 AAAAA 0 A_SpawnItemEx("CorpsespiritMedium",frandom(-60.0,60.0),frandom(-60.0,60.0),frandom(0.0,60.0),0,0,1,frandom(0.0,360.0),SXF_TRANSFERPOINTERS,96)
		TNT1 A 0 A_SpawnItemEx("CorpsespiritLarge",0,0,0,0,0,1,0,SXF_TRANSFERPOINTERS)
	Main:
		TNT1 A 0 A_SpawnItemEx("DSparilGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		Stop
	 }
}