ACTOR BrutalGuncastRevenant : Revenant1 Replaces Revenant1
{
	//Loot
	DropItem Ruby
	
	//Resists & weaknesses
	
	//AAAAAAAAAAAAAAAAAAAAAAAA
	//AAAAAAAAAAAAAAAAAAA.
	//AAAAAA AAAAAAAAA AAAAAAAA?
	//AAA AAAAAAAAAAAAAAAAAAAAAAAAAAAA!
	//AAAAAAAAAAAAAAAAAA.
	
	DamageFactor Acid, 1.25
	
	DamageFactor Flesh, 0.8
	DamageFactor Ice, 0.8
	DamageFactor Crow, 0.8
	DamageFactor Crow2, 0.8
	DamageFactor Manuel, 0.8
	
	//PAAAAAIN
	PainChance 100
	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, 96
	PainChance LightningBlue, 16
	PainChance Manuel, 100
	PainChance Fire, 100
	
	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
	{
	
	//Melee
	Pain.SuperCloseCombat:
	Pain.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-9.0,-11.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Pain.Kick
	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(-9.0,-11.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		TNT1 A 0 A_Jump(128,"Death.SSG")
		Goto XDeath
	Death.SuperShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		TNT1 A 0 A_Jump(128,"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_Agitation",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_Agitation",0,0,0,frandom(-9.0,-11.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_Agitation",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:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		SKEL LM 7
		SKEL N 7 A_Scream
		SKEL O 7
		SKEL P 7
		TNT1 A 0 A_NoBlocking
        TNT1 A 0 A_SpawnItem ("DeadSkeleton", 1)
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		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.Fatality:
        TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_JumpIfIntargetInventory("FistsSelected", 1, 1)
		Goto Death
		TNT1 A 0 A_GiveToTarget("GoFatality", 1)
        TNT1 A 0 A_Jump(128,5)
        TNT1 A 0 A_GiveToTarget("RevenantFatality", 1)
        Stop
        TNT1 AAAAAAA 0
        TNT1 A 0 A_GiveToTarget("RevenantFatality2", 1)
        TNT1 A 1
        TNT1 A 0
		Stop
		
	Death.HelperMarineFatallity:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 1 A_Pain
		TNT1 A 0 A_Scream
		TNT1 A 0 A_NoBlocking
        TNT1 A 0 A_GiveToTarget("RevenantFatality", 1)
        Stop	

    
    Death.Minorhead:
    Death.Head:
		TNT1 A 0 A_JumpIfInTargetInventory("HasPlasmaWeapon", 1, "Death.Plasma")
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAA 0 A_CustomMissile ("Xdeath1", 72, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAA 0 A_CustomMissile ("SmallLSPart1", 70, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAA 0 A_CustomMissile ("SmallLSPart3", 70, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAA 0 A_CustomMissile ("LSpart1", 72, 0, random (0, 360), 2, random (0, 160))
        TNT1 A 0 A_CustomMissile ("LSpart3", 72, 0, random (0, 360), 2, random (0, 160))
        TNT1 AA 0 A_CustomMissile ("LSpart2", 72, 0, random (0, 360), 2, random (0, 160))
		REVH A 24
        REVH B 8 A_NoBlocking
		TNT1 A 0 A_XScream
        REVH CD 8
        TNT1 A 0 A_SpawnItem ("DeadSkeletonNoHead")
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
        Stop
		
	Death.Decaptate:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAAAAA 0 A_CustomMissile ("Xdeath1", 72, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeathRevenantHead", 64, 0, random (0, 360), 2, random (50, 130))
        REVH A 24
        REVH B 8 A_NoBlocking
        REVH CD 8
        TNT1 A 0 A_SpawnItem ("DeadSkeletonNoHead", 1)
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
        Stop	

    Death.Shotgun:
		TNT1 A 0
		TNT1 A 0 A_JumpIfCloser(100, "SpecialDeath")
		Goto Death
	
	Death.Cutless:
		TNT1 A 0
		TNT1 A 0 A_Jump(100, "SpecialDeath")
		Goto Death
	
	Death.ExplosiveImpact:
		TNT1 A 0
		TNT1 A 0 A_JumpIfHealthLower(-40, "XDeath")
		Goto SpecialDeath
	
	Death.Cut:
	Death.Saw:
    Death.SSG:
    SpecialDeath:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
	    TNT1 AAA 0 A_CustomMissile ("GC_XDeath1", 30, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAA 0 A_CustomMissile ("GC_RevenantDust", 30, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAA 0 A_CustomMissile ("GC_RevenantDust2", 30, 0, random (0, 360), 2, random (0, 360))
        TNT1 AAA 0 A_CustomMissile ("GC_XDeath1", 37, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("BigLSPart1", 37, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("BigLSPart2", 37, 0, random (0, 360), 2, random (30, 150))
		TNT1 AAAAAAA 0 A_CustomMissile ("RevenantPiece", 37, 0, random (0, 360), 2, random (30, 150))
	    TNT1 A 0 A_Jump(64, "Death.Rare")
		Goto Death.Rare
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Scream
	    SKEX A 100 A_SpawnItem("GC_RevenantU", 0, 40)
		SKEX BCDE 6
        TNT1 A 0 A_SpawnItem ("GC_XDeadSkeleton", 1)
        Stop
    Death.SuperPlasma:
    Death.Plasma: 
	Death.Plasma2:
	Death.Lightning:
	Death.LightningBlue:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
        TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
        TNT1 AAA 0 A_CustomMissile ("Brutal_FlyingBlood", 50, 0, random (0, 360), 2, random (0, 160))
	    TNT1 A 0 A_CustomMissile ("XDeathBurnedSkull", 32, 0, random (0, 360), 2, random (0, 160))
		EXPL AAAA 0 A_CustomMissile ("ExplosionSmoke", 32, 0, random (0, 360), 2, random (0, 360))
		RVDP ABCDEFG 5 BRIGHT //A_SpawnItem("BlueFlare3",0,30)
		"####" "#" 0 A_SetUserVar("User_SmokeLoop",710) //Simulates total elapsed time (in tics).
	PlasmaSmokeInit:
		"####" "#" 0 A_SetUserVar("User_Smoke",10) //Simulates tic delay of a single state.
	PlasmaSmokeLoop:
        "####" "#" 1 A_JumpIf(User_SmokeLoop <= 0, "Looplet")
		"####" "#" 0 A_JumpIf(User_Smoke <= 0, "PlasmaSmoke")
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		"####" "#" 0 A_SetUserVar("User_Smoke", User_Smoke - 1)
		"####" "#" 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		Loop
	PlasmaSmoke:
		"####" "#" 0 A_CustomMissile ("SmallSmoke", 1, 0, random (0, 360), 2, random (0, 160))
		Goto PlasmaSmokeInit 
	Death.Fire:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		SKEL LM 4
		SKEL N 4 A_Scream
		SKEL O 4 A_NoBlocking
		SKEL P 1
		TNT1 A 0 A_Playsound("props/redfire")
		"####" "#" 0 A_SetUserVar("User_SmokeLoop",710) //Simulates total elapsed time (in tics).
	FlameLoopInit:
		"####" "#" 0 A_SetUserVar("User_Smoke",96)
	FlameLoop:
		CARB N 0 A_JumpIf(User_Smoke <= 0, "PlasmaSmokeLoop")
		CARB N 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		CARB N 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		CARB N 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		CARB N 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		CARB N 0 A_CustomMissile ("FlameTrails", 25, 0, random (0, 360), 2, random (70, 130))
		CARB N 0 A_SetUserVar("User_Smoke", User_Smoke - 1)
		Loop
        /*CARB NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN 10 A_CustomMissile ("PlasmaSmoke", 25, 0, random (0, 360), 2, random (70, 130))
        CARB N -1
        Stop*/

	XDeath:
		TNT1 A 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 AAAAA 0 A_CustomMissile ("RevenantDust", 60, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAAAA 0 A_CustomMissile ("RevenantDust2", 60, 0, random (0, 360), 2, random (0, 360))
        TNT1 A 0 A_CustomMissile ("GC_XDeathRevenantHead", 52, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("XDeath1", 67, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("BigLSPart1", 37, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("BigLSPart2", 37, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("GC_RevenantArm", 57, 0, random (0, 360), 2, random (30, 150))
		TNT1 A 0 A_CustomMissile ("GC_RevenantTorso5", 20, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("MetalShard1", 50, 0, random (0, 360), 2, random (30, 160))
		TNT1 AA 0 A_CustomMissile ("MetalShard2", 50, 0, random (0, 360), 2, random (30, 160))
		TNT1 AA 0 A_CustomMissile ("MetalShard3", 50, 0, random (0, 360), 2, random (30, 160))
		TNT1 AAAAA 0 A_CustomMissile ("GC_RevenantBonesFast", 57, 0, random (0, 360), 2, random (30, 150))
		TNT1 AAAAA 0 A_CustomMissile ("GC_RevenantPiece", 57, 0, random (0, 360), 2, random (30, 150))
		TNT1 A 0 
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Scream
		XMED ABCDE 5
		Goto Looplet2
		
	Death.Rare:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Scream
		SKEX A 0 A_SpawnItem("GC_RevenantU", 0, 40)
		TNT1 A 0 A_CustomMissile ("RoamingLegs", 0, 0, random (0, 360), 2, random (0, 160))
			Stop
	/*Death:
		TNT1 A 0 A_StopSound(5)
		SKEL LM 7
		SKEL N 7 A_Scream
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		SKEL O 7 A_NoBlocking
		SKEL P 7*/
	Looplet:
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 1 CanRaise A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		//"####" "#" 0 A_JumpIf(User_DeathByFire == 1, "FireMelt")
		"####" "#" 0 A_JumpIf(User_DeathByTiberium == 1, "TiberiumMelt")
		"####" "#" 0 A_JumpIf(User_DeathByBlueTiberium == 1, "BlueTiberiumMelt")
		Loop
	/*XDeath:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx("RevenantGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		XMED ABCDE 5*/
	Looplet2:
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastC")
		"####" "#" 1 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		Loop
		
	//Corpseblast
	CorpseBlastA:
		TNT1 A 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Stop
	CorpseBlastB:
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		"####" "#" 0 A_JumpIf(User_SmokeLoop > 0, "PlasmaSmokeLoop")
		Goto Looplet
	CorpseBlastC:
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",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)
		"####" "#" 0 A_SpawnItemEx("GumpopGlow",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		"####" "#" 0 A_Jump(100,"Pain")
		Goto See
	Death.Acid:
		SKEL L 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("RevenantGibbed",0,0,0,0,0,0,0,SXF_CLIENTSIDE)
		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",1)
		Goto Death
	TiberiumMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.35, "EndOfMelt")
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 1 A_SetScale(ScaleX + frandom(0.002,0.003),ScaleY - frandom(0.003,0.004))
		Goto Looplet
	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",1)
		Goto Death
	BlueTiberiumMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.35, "EndOfMelt")
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 1 A_SetScale(ScaleX + frandom(0.002,0.003),ScaleY - frandom(0.003,0.004))
		Goto Looplet
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(64,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(164,1)
		Goto Pain
		SKEL L 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	LightningLock:
		"####" "#" 0 A_SpawnItem("HeadshotTarget6", 26, 70,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
		SKEL L 0 A_ChangeFlag("NOPAIN",1)
		"####" "#" 0 A_SetUserVar("User_LightningLock", User_LightningLock + 10)
	BlueLightningLock:
		"####" "#" 0 A_SpawnItem("HeadshotTarget6", 26, 70,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
	EndOfMelt:
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium", 0)
		"####" "#" 0 A_SetUserVar("User_DeathByFire", 0)
		Goto Looplet
		
	//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:
	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("FrozenRevenant")
		Stop
		FZDA A 5 A_FreezeDeath
		"----" A 0 A_SpawnItemEx("ChillgraspBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"----" A 1 A_FreezeDeathChunks
		Wait
	Raise:
		"####" "#" 0 ACS_NamedExecuteAlways("Normalization")
		"####" "#" 0 A_SetScale(1)
		Goto Super::Raise
	}
}

ACTOR BrutalGuncastStealthRevenant : BrutalGuncastRevenant replaces StealthRevenant
{
	+STEALTH
	RenderStyle Translucent
	Alpha 0
	Obituary "$OB_STEALTHUNDEAD"
	HitObituary "$OB_STEALTHUNDEAD"
}

//Corpses N' Stuff...

Actor GC_DeadSkeleton: GC_CurbstompedMarine replaces DeadSkeleton
{
    Radius 4
    Height 18
    Scale 1.0
    +SHOOTABLE
    +NOTELEPORT
    +MOVEWITHSECTOR
    +CORPSE
	+FLOORCLIP
	-SOLID
	+NORADIUSDMG
	damagefactor "Crusher", 50.0
    Mass 1000
    Health 200
    damagefactor "Blood", 0.0
    damagefactor "Trample", 0.0
	damagefactor "Saw", 0.3
	bloodtype "RevenantBlood"
	var int User_DeathByFire;
	var int User_LightningLock;
	var int User_Smoke;
	var int User_SmokeLoop;
	States
    {
    Spawn:
		SKEL Q 0 NoDelay A_SetInvulnerable
	TrueSpawn:
		"####" "#" 0 A_JumpIfInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		"####" "#" 1 A_UnSetInvulnerable
		Goto Continue
	TibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		Goto Continue
	BlueTibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		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:
		TNT1 A 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Goto CurbstompedMarine::Death
	CorpseBlastB:
		"####" "#" 0 A_SetInvulnerable
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_UnSetInvulnerable
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		Goto Continue
	
	TiberiumMelt:
		"####" "#" 0 A_JumpIf(ScaleX > 1.35, "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.35, "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:
		"####" "#" 1
		TNT1 A 0 A_SpawnItem("GC_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
	Raise:
		TNT1 A 2 A_CustomMissile ("RealFlameTrailsSmall", 6, 0, random (0, 360), 2, random (70, 110))
		TNT1 A 0 A_SpawnItem("PentagramSpawner", 0, 60)
		TNT1 A 2 A_CustomMissile ("RealFlameTrailsSmall", 6, 0, random (0, 360), 2, random (70, 110))
		TNT1 A 0 A_SpawnItem("PentagramSpawner", 0, 60)
		TNT1 A 0 A_SpawnItem("TeleportFog")
		TNT1 A 0 A_NoBlocking
        TNT1 A 0 A_SpawnItem ("Revenant1")
		Stop

    Death.flames:
    Death.burn:
    Death.Plasma: Death.Plasma2:
        TNT1 A 0
        TNT1 A 0 A_Scream
        TNT1 A 0 A_NoBlocking
        TNT1 AAA 0 A_CustomMissile ("Brutal_FlyingBlood", 50, 0, random (0, 360), 2, random (0, 160))
	    TNT1 A 0 A_CustomMissile ("XDeathBurnedSkull", 32, 0, random (0, 360), 2, random (0, 160))
		EXPL AAAAAA 0 A_CustomMissile ("ExplosionSmoke", 32, 0, random (0, 360), 2, random (0, 360))
        /*CARB NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN 10 A_CustomMissile ("SmallSmoke", 1, 0, random (0, 360), 2, random (0, 160))*/
		CARB N 0 A_SetUserVar("User_SmokeLoop",710) //Simulates total elapsed time (in tics).
	SmokeInit:
		"####" "#" 0 A_SetUserVar("User_Smoke",10) //Simulates tic delay of a single state.
	SmokeLoop:
        "####" "#" 1 A_JumpIf(User_SmokeLoop <= 0, "Continue")
		"####" "#" 0 A_JumpIf(User_Smoke <= 0, "Smoke")
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger2",1,"CorpseBlastB")
		"####" "#" 0 A_JumpIfInventory("CorpseTrigger",1,"CorpseBlastA")
		"####" "#" 0 A_SetUserVar("User_Smoke", User_Smoke - 1)
		"####" "#" 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		Loop
	Smoke:
		"####" "#" 0 A_CustomMissile ("SmallSmoke", 1, 0, random (0, 360), 2, random (0, 160))	
		Goto SmokeLoop
	Death.Cut:
	Death.Saw:
		TNT1 A 0
		TNT1 AAA 0 A_CustomMissile ("GC_XDeath1", 7, 0, random (0, 360), 2, random (30, 150))
		TNT1 AAA 0 A_CustomMissile ("GC_RevenantBones", 7, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("GC_RevenantArm", 7, 0, random (0, 360), 2, random (30, 150))
		TNT1 A 0 A_CustomMissile ("GC_XDeathHalfSkeleton", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_SpawnItem ("GC_XDeadSkeleton", 1)
		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_NotDeadSkeleton: GC_DeadSkeleton replaces NotDeadSkeleton
{
	Health 50 
	damagefactor "Kick", 50.0
	-THRUACTORS
	-CORPSE
	Radius 1	
	States
	{
	Spawn:
		SKEL Q 0 NoDelay
		{
			A_SetInvulnerable;
			A_SetUserVar("User_SmokeLoop",500);
		}		
	TrueSpawn:
		"####" "#" 0 A_JumpIfInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		"####" "#" 1 A_UnSetInvulnerable
		Goto Continue
	TibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		Goto Continue
	BlueTibSpawn:
		"####" "#" 1 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		"####" "#" 0 A_UnSetInvulnerable
		Goto Continue
	Continue:
		"####" "#" 0 A_JumpIf(User_SmokeLoop <= 0, "DeadRaise")
		"####" "#" 0 A_SetUserVar("User_SmokeLoop", User_SmokeLoop - 1)
		"####" "#" 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
	DeadRaise:
		SKEL PONML 5
		TNT1 A 0 A_NoBlocking
        TNT1 A 0 A_SpawnItem ("Revenant1", 3)
		TNT1 A 1
		Stop
	}
}

Actor GC_DeadSkeletonNoHead: GC_DeadSkeleton replaces DeadSkeletonNoHead
{
	Health 200 
	+SHOOTABLE
	Radius 4
	Height 18
	States
	{
	Spawn:
		REVH D 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	}
}

Actor GC_XDeadSkeleton: GC_DeadSkeleton replaces XDeadSkeleton
{
	Health 200 
	States
	{
	Spawn:
		DKEL I 0 NoDelay A_SetInvulnerable
		Goto TrueSpawn
	Death.Cutless:	        
	Death.Cut: 
	Death.Saw:
	Death: 
		TNT1 AAA 0 A_CustomMissile ("GC_XDeath1", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("GC_XDeath2", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("GC_XDeath3", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAA 0 A_CustomMissile ("GC_XDeath4", 5, 0, random (0, 360), 2, random (0, 160))
		Stop
	}
}

ACTOR GC_RevenantPiece: RevenantPiece replaces RevenantPiece
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}


ACTOR GC_RevenantDust: RevenantDust replaces RevenantDust
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}

ACTOR GC_RevenantDust2: GC_RevenantDust replaces RevenantDust2
{
    Speed 8
	BounceFactor 0.2
	Scale 0.3
}

ACTOR GC_RevenantBones: RevenantBones replaces RevenantBones
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}

ACTOR GC_RevenantBonesFast: RevenantBonesFast replaces RevenantBonesFast
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}

ACTOR GC_RevenantArm: RevenantArm replaces RevenantArm
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}


ACTOR GC_RevenantTorso5: RevenantTorso5 replaces RevenantTorso5
{
    States
    {
    Spawn:
		"####" "#" 0 NoDelay A_JumpIfInTargetInventory("TibDeathCounter",1,"TibSpawn")
		"####" "#" 0 A_JumpIfInTargetInventory("BlueTibDeathCounter",1,"BlueTibSpawn") 
		Goto Super::Spawn
	TibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Toxic Avenger")
		"####" "#" 0 A_SetUserVar("User_DeathByTiberium",1)
		Goto Super::Spawn
	BlueTibSpawn:
		"####" "#" 0 ACS_NamedExecuteAlways("Blue Oyster Cult")
		"####" "#" 0 A_SetUserVar("User_DeathByBlueTiberium",1)
		Goto Super::Spawn
    }
}

ACTOR GC_RevenantU: RevenantU replaces RevenantU
{
	DamageFactor Acid, 1.25
	
	DamageFactor Flesh, 0.8
	DamageFactor Ice, 0.8
	DamageFactor Crow, 0.8
	DamageFactor Crow2, 0.8
	DamageFactor Manuel, 0.8
	
	//PAAAAAIN
	PainChance 100
	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, 96
	PainChance LightningBlue, 16
	PainChance Manuel, 100
	PainChance Fire, 100
	
	var int User_DeathByFire;
	var int User_DeathByTiberium;
	var int User_DeathByBlueTiberium;
	var int User_LightningLock;
	var int User_Smoke;
	var int User_SmokeLoop;
	Monster
	-COUNTKILL
	States
	{
	Spawn:
		UKEL A 6 A_Look
		Loop

	See:
	    UKEL AAABBBCCC 2 A_chase("","")
		UKEL CDDD 2 A_Chase
		Loop

	Missile:
        UKEL E 10 A_FaceTarget
		TNT1 A 0 A_Jump(128, "Missile2")
		UKEL F 10 A_CustomMissile("RevenantBalls",20,15,0,0)
		Goto See
		
	Missile2:	
		UKEL E 1 A_FaceTarget
		UKEL F 10 A_CustomMissile("RevenantBalls",20,-15,0,0)
		Goto See

	Pain.SuperCloseCombat:
	Pain.SuperMidasCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-9.0,-11.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto See
	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 See
	Death.SuperCloseCombat:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_ChangeVelocity(frandom(-9.0,-11.0),0,frandom(1.0,3.0),CVF_RELATIVE)
		Goto Death
	Death.SuperShoelaces:
		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
	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_RevenantU",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_RevenantU",0,0,0,frandom(-9.0,-11.0),0,frandom(1.0,3.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSCALE|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_RevenantU",0,0,0,frandom(-13.0,-17.0),0,frandom(9.0,11.0),0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_TRANSFERSCALE|SXF_TRANSFERSPRITEFRAME)
		TNT1 A 10 A_KillChildren
		Stop

    Death:
  	    TNT1 AAA 0 A_CustomMissile ("GC_RevenantDust", 5, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAA 0 A_CustomMissile ("GC_RevenantDust2", 5, 0, random (0, 360), 2, random (0, 360))
        TNT1 A 0 A_CustomMissile ("GC_XDeathRevenantHead", 5, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("GC_XDeath1", 5, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("GC_RevenantBones", 5, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("GC_RevenantArm", 5, 0, random (0, 360), 2, random (30, 150))
		TNT1 AA 0 A_CustomMissile ("MetalShard1", 5, 0, random (0, 360), 2, random (30, 160))
		TNT1 AA 0 A_CustomMissile ("MetalShard2", 5, 0, random (0, 360), 2, random (30, 160))
		TNT1 AA 0 A_CustomMissile ("MetalShard3", 5, 0, random (0, 360), 2, random (30, 160))
		TNT1 AAA 0 A_CustomMissile ("GC_RevenantBonesFast", 5, 0, random (0, 360), 2, random (30, 150))
		TNT1 AAA 0 A_CustomMissile ("GC_RevenantPiece", 5, 0, random (0, 360), 2, random (30, 150))
		TNT1 A 0 
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Scream
		TNT1 A 10
		Stop


    Pain.KillMe:
    Pain.Taunt:
        TNT1 A 0
        Goto Missile
    Death.KillMe:
    Death.Taunt:
	    TNT1 A 0 A_ChangeFlag("SOLID", 0)
        TNT1 A 0 A_SpawnItem("RevenantU")
        Stop
	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(100,"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 Death
		
	//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",1)
		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",1)
		Goto Death
		
	//Threadcutter
	Pain.Manuel:
		"####" "#" 0 A_Jump(64,1)
		Goto See
		"####" "#" 0 A_GiveInventory("BleedItem")
		"####" "#" 0 A_SpawnItemEx("BrutalBleedIndicator",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_SETTARGET|SXF_ORIGINATOR)
		Goto See
		
	//Thunderstruck
	Pain.Lightning:
		"####" "#" 0 A_Jump(164,1)
		Goto See
		"####" "#" 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 See
		"####" "#" 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 See
		"####" "#" 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 See
	Death.Meteorfist:
		"####" "#" 0 A_FaceTarget
		"####" "#" 0 A_ChangeVelocity(frandom(-13.0,-17.0),0,frandom(9.0,11.0),CVF_RELATIVE)
		Goto See
	/*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:
		"####" "#" 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:
	Death.Ice:
	Death.Freeze:
	Death.Frost:
	Death.DukeIce:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"----" A 0 A_JumpIfInventory("ChillgraspTrigger",1,2)
		"----" A 5 A_GenericFreezeDeath
		"----" 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_RevenantU: Midas_Statue_Agitation
{
	States
	{
	Spawn:
		"####" "#" 1
		Goto Super::Cycle
	}
}