actor VCBaseClass : PlayerPawn
{
	player.startitem "MM8BDMPlayer", 1
	player.startitem "CanBeGrabBustered", 1
	player.startitem "CanBeMegaArmed", 1
	player.displayname "VCBaseClass"
	player.soundclass "megaman"
	player.damagescreencolor "yellow"
	player.forwardmove 0.8, 0.8
	player.sidemove 0.78, 0.78
	player.jumpz 10
	player.startitem "Base28Ammo", 28
	player.maxhealth 100
	health 100
	+NOBLOOD
	+DONTBLAST
	+NODAMAGETHRUST
	+QUICKTORETALIATE
	+USEDAMAGEEVENTSCRIPT
	player.startitem "VCBaseWeapon"
	player.colorrange 0 0
	damagefactor "Dummy", 0.0
	damagefactor "ConcreteRemover", 0.0
	damagefactor "ConcreteSlamCheck", 0.0
	Player.MaxSkinSizeFactor 0, 0
	mass 9999
	gravity 0.8
	scale 2.5
	player.startitem "ModeWeps", 1
	player.startitem "BaseFlagPack", 1
	painchance 256
	renderstyle translucent
	alpha 1.0
	-SOLID
	+THRUSPECIES
	species "Megaman"
	bloodtype "MegamanBlood"
	var int user_hp;
	States
	{
		Spawn:
		PLAY A 0
		"----" A 1 A_Jump(256,"Spawn")
		loop
		See:
		"----" A 1 A_Jump(256,"See")
		loop
		Missile:
		"----" A 1 A_Jump(256,"Missile")
		loop
		Animation1:
		"----" H 0
		Goto Spawn
		Animation2:
		"----" H 0
		Goto Spawn
		Animation3:
		"----" H 0
		Goto Spawn
		SuperSpawn:
		"----" A 1 A_Jump(256,"Spawn")
		wait
		SuperClassPain:
		"----" A 1 A_Jump(256,"ClassPain")
		wait
		SuperClassDeath:
		"----" A 1 A_Jump(256,"ClassDeath")
		wait

		ClassPain:
		"----" A 0 A_Log("Please define ClassPain on this class")
		"----" A 1 A_Jump(256,"MegamanPain")
		wait
		ClassDeath:
		"----" A 0 A_Log("Please define ClassDeath on this class")
		"----" A 1 A_Jump(256,"MegamanDeath")
		wait

		MegamanPain:
		"----" A 0 A_Pain
		"----" AAAAAAAAAA 2 A_SpawnItemEx("PainFX",-5,0,3,0,0,0)
		"----" A 1
		goto SuperSpawn

		MegamanDeath:
		"----" AAAAAAAAAAAAAAAAAAAA 1 A_JumpIfInventory("CriticalDeath",1,"MegamanGib")
		MegamanExplode:
		"----" A 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
		MegamanFall:
		"----" A 0 A_PlayerScream
		MegamanErase:
		//TNT1 A 1 A_CheckPlayerDone
		"####" Z 1 A_CheckPlayerDone
		wait
		MegamanGib:
		"----" A 0 A_GiveInventory("CriticalDeathGiver", 1)
		"----" A 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
		goto MegamanErase

		// SINGLEPLAYER STUFF
		TheEnd: // Used in the original ending
		"####" G 4
		loop
		WalkForward: 
		"####" BBBBBCCCCCDDDDDEEEEE 1 A_Recoil(-0.8)
		loop
		CreditWalk: 
		"####" BCDE 8
		loop
		CreditRun:
		"####" BCDE 5
		loop
		DozerCarry:
		"####" BBBBCCCCDDDDEEEEBBBBCCCCDDDDBBBBCCCCDDDD 1 A_Recoil(-1)
		"####" F 10 A_Stop
		"####" F -1
		stop
		DozerThrow:
		"####" F 0 A_ChangeFlag("THRUACTORS",1)
		"####" F 20 ThrustThingZ(0, 60, 0, 1)
		"####" G 20
		"####" A -1
		stop
		EndlessPain:
		"####" H -1
		stop

		WeaponGetM:
		"----" H 0
		Goto ClassDeath
		WeaponGetP:
		"----" H 0
		Goto ClassDeath
		WeaponGetB:
		"----" H 0
		Goto ClassDeath
		WeaponGetD:
		"----" H 0
		Goto ClassDeath
		
		//VC PAIN STATES
		Pain.Cutman:
		Pain.Elecman:
		Pain.Metalman:
		Pain.Airman:
		Pain.CrashManBomb:
		"----" H 0
		Goto Pain+1
		Pain.CutmanMeat:
		"----" H 0 A_GiveInventory("CutmanMeatProtect",1)
		goto Pain+1
		Pain.CutmanM1:
		"----" H 0 A_GiveInventory("CutmanM1Protect",1)
		goto Pain+1
		Pain.ElecmanBeam:
		"----" H 0 A_GiveInventory("ElecBeamProtect",1)
		goto Pain+1
		Pain.MetalThird:
		"----" H 0 A_ScaleVelocity(0.9)
		"----" H 0 A_GiveInventory("MetalThirdProtect")
		goto Pain+1
		Pain.Metalman2a:
		"----" H 0 A_GiveInventory("Metalman2aProtect")
		goto Pain+1
		Pain.Metalman2b:
		"----" H 0 A_GiveInventory("Metalman2bProtect")
		goto Pain+1
		Pain.Metalman2c:
		"----" H 0 A_GiveInventory("Metalman2cProtect")
		goto Pain+1
		Pain.MetalRideGear:
		"----" H 0 A_GiveInventory("MetalRideGearProtect")
		goto Pain+1
		Pain.AirmanVacuum:
		"----" H 0 A_CheckFloor("Pain.AirmanVacuum2")
		"----" H 0 A_Stop
		"----" H 0 A_ScaleVelocity(0.8)
		Pain.AirmanVacuum2:
		"----" H 0 A_GiveInventory("AirmanVacuumProtect")
		Goto Pain+1
		Pain.AirmanSynth:
		"----" H 0 A_GiveInventory("AirmanSynthProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_ChangeVelocity(0,0,20,CVF_REPLACE)
		Goto Pain+1
		Pain.AirmanRush:
		"----" H 0 A_GiveInventory("AirmanRushProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Pain+1
		Pain.ElecmanShield:
		"----" H 0 A_GiveInventory("ElecShieldProtect", 1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_TakeFromTarget("BaseCustomFlag1",1)
		Goto Pain+1
		Death.ElecmanShock:
		"----" H 0
		goto Death.ElectricDeath
		Pain.ElecmanFloor:
		"----" H 0 A_GiveInventory("ElecFloorProtect", 1)
		goto Pain+1
		Pain.ElecmanShieldBolt:
		"----" H 0 A_GiveInventory("ElecShieldBoltProtect", 1)
		goto Pain+1
		Pain.ElecmanShieldBolt2:
		"----" H 0 A_GiveInventory("ElecShieldBoltProtect2", 1)
		goto Pain+1
		Pain.Iceman:
		"----" H 0
		Goto Pain+1
		pain.IcemanSlasher:
		"----" H 0 A_GiveInventory("IcemanSlasherProtect", 1)
		"----" H 0 A_Stop
		Goto Pain+1
		Pain.IcemanThird1:
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("IceBallFX2",random(0,16),0,random(0,64),random(2,16),0,random(-4,12),random(0,359))
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Iceman")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.Iceman")
		"----" H 0 A_SpawnItemEx("IceManFrozen1")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		goto Pain+1
		Pain.IcemanThird2:
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("IceBallFX2",random(0,16),0,random(0,64),random(2,16),0,random(-4,12),random(0,359))
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Iceman")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.Iceman")
		"----" H 0 A_GiveInventory("IcemanPrisonProtect1")
		"----" H 0 A_SpawnItemEx("IceManFrozen2")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		goto Pain+1
		Pain.IcemanThird3:
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("IceBallFX2",random(0,16),0,random(0,64),random(2,16),0,random(-4,12),random(0,359))
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Iceman")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.Iceman")
		"----" H 0 A_GiveInventory("IcemanPrisonProtect2")
		"----" H 0 A_SpawnItemEx("IceManFrozen3")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		goto Pain+1
		Pain.IcemanThird4:
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("IceBallFX2",random(0,16),0,random(0,64),random(2,16),0,random(-4,12),random(0,359))
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Iceman")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.Iceman")
		"----" H 0 A_GiveInventory("IcemanPrisonProtect3")
		"----" H 0 A_SpawnItemEx("IceManFrozen4")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		goto Pain+1
		Death.HotDog:
		"----" H 0
		goto Death.MagmamanUlt
		Pain.QuickDash2:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,30,0,0)
		Pain.QuickDash:
		"----" H 0 A_PlaySoundEx("weapon/quickdashhit","SoundSlot6")
		"----" H 0 A_GiveInventory("QuickmanDashProtection",1)
		goto Pain+1
		Pain.QuickSpin:
		"----" H 0 A_GiveInventory("QuickmanSpinProtection",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,60,0,0)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,28,1)
		goto Pain+1
		Pain.SparkmanHalf:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		Goto Pain+1
		pain.Sparkman2:
		"----" H 0 A_GiveInventory("Sparkman2Protect", 1)
		"----" H 0 A_ScaleVelocity(0.8)
		Goto Pain+1
		pain.Sparkman3:
		"----" H 0 A_GiveInventory("Sparkman3Protect", 1)
		Goto Pain
		Pain.SparkmanShock:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.SparkmanWater:
		Pain.SparkmanField:
		"----" H 0
		Goto Pain+1
		Pain.SparkSlash:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_GiveInventory("SparkSlashProtect",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,28)
		"----" H 0 A_SpawnItem("BaseFlinger5")
		Goto Pain+1
		Pain.SparkBlast:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("SparkBlastProtect",1)
		Goto Pain+1
		Death.SparkSlash:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,28)
		Death.SparkBlast:
		Death.SparkmanField:
		"----" H 0
		goto Death.ElectricDeath
		Pain.SparkmanAlt:
		"----" H 0 A_Stop
		Goto Pain+1
		Pain:
		"----" H 0 A_ScaleVelocity(0.75)
		"----" H 0 A_JumpIfInventory("BrightUltFreezeDamage",1,"Pain_Bright")
		"----" H 0 A_JumpIfInventory("ShadeManStareStunned",1,"RemoveStun")
		"----" H 0 A_JumpIfInventory("UnstunMeOnHit",1,"RemoveStun")
		"----" H 0 A_JumpIfInventory("IAmFrozen",1,"PainUnfreeze")
		"----" H 0 A_Pain
		//"----" H 0 SetPlayerProperty(0,0,4)
		"----" H 0 A_GiveInventory("ETankHealCancel")
		"----" H 1 A_Jump(256,"ClassPain")
		wait
		
		PainUnfreeze:
		"----" H 0 A_ScaleVelocity(0.75)
		"----" H 0 A_JumpIfInventory("BrightUltFreezeDamage",1,"Pain_Bright")
		"----" H 0 A_GiveInventory("ReleaseFromFreezes")
		"----" H 0 A_TakeInventory("IAmFrozen")
		"----" H 0 A_Pain
		"----" H 0 SetPlayerProperty(0,0,4)
		"----" H 0 A_GiveInventory("ETankHealCancel")
		"----" H 1 A_Jump(256,"ClassPain")
		wait
		
		Pain_Bright:
		"----" HH 0 A_TakeInventory("BrightUltFreezeDamage",999)
		Goto Pain+2

		Pain.CrashUser1:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,8)
		Goto Pain+1
		Pain.CrashUser1_LessAmmo:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,6)
		Goto Pain+1
		Death.CrashUser1:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,56)
		Goto Death
		Death.CrashUser1_LessAmmo:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,1,24)
		Goto Death.Gib
		Pain.Crashman:
		"----" H 0 A_ScaleVelocity(0.75)
		Goto Pain+1
		Pain.CrashmanLand:
		"----" H 0 A_Stop
		Goto Pain+1

		Pain.FiremanAltPillar:
		Pain.Fireman:
		"----" H 0
		Goto Pain+1
		Pain.FiremanAlt:
		"----" H 0 A_GiveInventory("FiremanAltProtect")
		Goto Pain+1
		Death.FiremanUlt:
		"----" H 0
		Goto Death.MagmamanUlt
		Pain.Needleman:
		"----" H 0
		goto Pain+1
		Pain.NeedlemanTether:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,44,280)
        "----" H 0 A_JumpIfInventory("Needleman_TetheredFlag",1,4)
        "----" H 0 A_GiveInventory("Needleman_Tethered",1)
        "----" H 0 A_GiveInventory("Needleman_TetheredTime",70)
        "----" H 0 A_SpawnItemEx("Needleman_TetherStun",4,0,32)
        Goto Pain
        "----" H 0 A_TakeInventory("Needleman_TetheredTime",6)
        "----" H 0 A_GiveInventory("Needleman_TetheredTime",12)
        Goto Pain
		Death.NeedlemanTether:
		Death.NeedlemanTether_NoStun:
		Death.NeedlemanBody:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,44,280)
		goto Death.Gib
		Pain.NeedlemanTether_NoStun:
		Pain.NeedlemanBody:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,44,280)
		goto Pain
		Pain.AstroDrop:
		"----" H 0 A_GiveInventory("AstroDropProtect",1)
		goto Pain+1
		Pain.BrightManFireWorks:
		"----" H 0
		"----" H 0 A_JumpIfInventory("BrightBlind", 1,3)
		"----" H 0 A_GiveInventory("BrightManBlind",1)
		"----" H 0 ACS_ExecuteAlways(249, 0)
		Goto Pain+1
		"----" H 0 A_GiveInventory("BrightBlind",55)
		Goto Pain+1
		Pain.BrightManUltLarge:
		"----" H 0
		"----" H 0 A_JumpIfInventory("BrightBlind", 1,3)
		"----" H 0 A_GiveInventory("BrightBlind",245)
		"----" H 0 ACS_ExecuteAlways(249, 0)
		Goto Pain+2
		"----" H 0 A_GiveInventory("BrightBlind",125)
		Goto Pain+2
		Pain.BrightManUltSmall:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("BrightManUltFreezer",1)
		Goto Pain+2
		Pain.BrightmanJump:
		"----" H 0 A_GiveInventory("BrightmanJumpProtect",1)
		Goto Pain+1
		Pain.BrightManBuster:
		"----" H 0 A_JumpIfInventory("BrightmanReblindProtection", 1, 2)
		"----" H 0 A_JumpIfInventory("BrightBlind", 1,"BrightReblindFX")
		"----" H 0//"----" H 0 A_GiveInventory("BrightBlind",50)
		goto Pain
		BrightReblindFX:
		"----" H 0 A_SpawnItemEx("BrightManReblindFXSpawner")
		"----" H 0 A_GiveInventory("BrightmanReblindProtection")
		"----" H 0 A_GiveInventory("BrightBlind",50)
		goto Pain
		Pain.Mars:
		Pain.MarsMissile:
		Pain.MarsHoming:
		"----" A 0
		goto Pain+1
		Death.Mars:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,40,10)
		goto Death
		Death.MarsMissile:
		Death.MarsUlt:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,40,10)
		Death.MarsHoming:
		"----" H 0
		goto Death.Gib
		Pain.Freezeman:
		"----" A 0
		Goto Pain+1
		Pain.FreezemanFreeze:
		"----" H 0 A_GiveInventory("FreezemanFreezeProtect",1)
		"----" H 0 A_SpawnItemEx("MovementFreeze")
		Goto Pain+2
		Pain.FreezemanUltFreeze:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Freezeman")
		"----" H 0 A_SpawnItemEx("MovementFreeze2")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		Goto Pain+2
		Pain.FreezemanUltFreeze2:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain")
		"----" H 0 A_SpawnItemEx("MovementDirectFreeze")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeTauntDamage")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		"----" H 0 A_JumpIfInventory("LightTeamFlag",1,"Pain.FreezeFireWeakness")
		"----" H 0 A_JumpIfInventory("WilyTeamFlag",1,"Pain.FreezeFireWeakness")
		"----" H 0 A_JumpIfInventory("CossackTeamFlag",1,"Pain.FreezeFireWeakness")
		"----" H 0 A_JumpIfInventory("KingTeamFlag",1,"Pain.FreezeFireWeakness")
		Goto Pain+2
		Pain.FreezeFireWeakness:
		"----" H 0 A_GiveInventory("WeakToAllFire")
		Goto Pain+2
		Pain.Flameman:
		Pain.FlamemanPillar:
		"----" A 0 A_ScaleVelocity(0.95)
		Goto Pain+1
		Pain.Crystalman:
		"----" A 0
		Goto Pain+1
		Pain.CrystalmanAlt:
		"----" H 0 A_GiveInventory("CrystalAltProtect",1)
		Goto Pain+1
		Pain.CrystalmanUlt:
		"----" H 0 A_Stop
		Goto Pain+1
		Megabuster:
		Megabuster2:
		"----" H 0
		Goto Pain
		Pain.Megabuster3:
		"----" H 0 A_GiveInventory("Megabuster3Protect", 1)
		Goto Pain
		Pain.Megabuster3Gear:
		"----" H 0 A_GiveInventory("Megabuster3GearProtect", 1)
		Goto Pain
		Pain.MegaUppercut:
		"----" H 0 A_GiveInventory("MegaUppercutProtect",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,15,CVF_REPLACE)
		Goto Pain
		Death.ElecmanShield:
		"----" H 0 A_GiveInventory("ElecShieldProtect", 1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_TakeFromTarget("BaseCustomFlag1",1)
		Goto Death
		Pain.TopMan:
		"----" H 0
		Goto Pain+1
		Pain.TopmanAlt2:
		"----" H 0 ThrustThingZ(0,80,0,0)
		"----" H 0 A_SetAngle(random(0,359))
		"----" H 0 A_GiveInventory("TopmanAltProtect", 1)
		Goto Pain+1
		Pain.TopmanAlt:
		"----" H 0 A_GiveInventory("TopmanAltProtect", 1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,49,1)//Early release from altfire
		Goto Pain+1
		Pain.TopmanThird:
		"----" H 0 A_GiveInventory("TopmanThirdProtect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_Recoil(-15)
		"----" H 0 A_SetAngle(random(0,359))
		Goto Pain+1
		Pain.TopmanThird2:
		"----" H 0 A_GiveInventory("TopmanThird2Protect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_Recoil(-30)
		"----" H 0 A_SetAngle(random(0,359))
		Goto Pain+1
		Pain.TopmanSpike:
		"----" H 0 A_SetAngle(random(0,359))
		Goto Pain+1
		Death.AirmanRush:
		"----" H 0 A_ChangeVelocity(random(-80,80),random(-80,80),random(20,40))
		Goto Death
		Pain.HeatmanPillar2:
		Pain.HeatmanPillar:
		"----" H 0 A_JumpIfInventory("HeatmanPillarProtect",1,"SkipThis")
		"----" H 0 A_GiveInventory("HeatmanPillarProtect",1)
		"----" HHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Goto Pain+1
		Pain.HeatmanTackle:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,32,1)
		"----" H 0 A_JumpIfInventory("HeatmanTackleProtect",1,"SkipThis")
		"----" H 0 A_GiveInventory("HeatmanTackleProtect",1)
		"----" HHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Goto Pain+1
		Pain.HeatmanAfterBurnPillar:
		"----" H 0 A_JumpIfInventory("IAmOnFire",1,"Pain.HeatmanPillar")
		"----" HHHHHHHHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Goto Pain.HeatmanPillar
		Pain.HeatmanAfterBurnTackle:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,32,1)
		"----" H 0 A_JumpIfInventory("IAmOnFire",1,"Pain.HeatmanTackle")
		"----" HHHHHHHHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Goto Pain.HeatmanTackle
		Pain.HeatBurning:
		"----" H 0 A_PlaySoundEx("heatman/burn","SoundSlot6")
		"----" HHHHHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Goto Pain+1
		Death.HeatmanTackle:
		Death.HeatmanAfterBurnPillar:
		Death.HeatmanAfterBurnTackle:
		Death.HeatBurning:
		Death.HeatmanSurge:
		Death.HeatmanSurgeBurn:
		"----" H 0
		Goto Death.MagmamanUlt
		Pain.HeatmanSurgeBurn:
		"----" H 0 A_JumpIfInventory("IAmOnFire",1,"Pain.HeatmanSurge")
		"----" HHHHHHHHH 0 A_SpawnItemEx("HeatBurnFX",random(-8,8),random(-8,8),random(0,32),random(-9,9),random(-9,9),random(-9,9),0,1)	
		Pain.HeatmanSurge:
		"----" H 0 A_GiveInventory("HeatmanSurgeProtect")
		Pain.HeatmanSurge2:
		"----" H 0
		goto Pain+1
		Pain.StarmanShield2:
		Pain.StarmanShield1:
		Pain.StarmanShield:
		"----" H 0
		Goto Pain+1
		Pain.HardmanKnuckleDamager:
		"----" H 0 A_GiveInventory("HardmanKnuckleDamagerProtect", 1)
		Goto Pain+1
		Pain.HardmanQuake:
		"----" H 0 A_JumpIfInventory("HardmanQuakeProtect2",1,"SkipThis")
		"----" H 0 A_GiveInventory("HardmanQuakeProtect", 1)
		"----" H 0 A_GiveInventory("HardmanQuakeProtect2", 1)
		Goto Pain.SparkShock
		Pain.Punk:
		"----" H 0
		goto Pain+1
		Pain.PunkAlt:
		"----" H 0 A_GiveInventory("PunkAltProtect")
		"----" H 0 A_Stop
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,25,1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.PunkRip:
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		"----" HHHH 0 A_SpawnItemEx("RobotGuts",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.PunkSuzy:
		"----" H 0 A_ScaleVelocity(0.75)
		goto Pain+1
		Pain.PunkBounce:
		"----" H 0 A_GiveInventory("PunkBounceProtect")
		"----" H 0 A_ScaleVelocity(0.85)
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		"----" H 0 A_SpawnItemEx("RobotGuts",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Death.PunkSuzy:
		Death.TurbomanDrive:
		Death.DustmanUlt:
		Death.Flatten:
		"----" H 0 A_PlaySoundEx("weapon/turbocrash","SoundSlot6")
		"----" H 0 A_SetScale(scalex, scaley-2)
		goto Death
		Pain.EnkerMeleeStun:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.EnkerMelee:
		"----" H 0 A_GiveInventory("EnkerMeleeProtect",1)
		Goto Pain+1
		Pain.EnkerUlt:
		"----" H 0 A_JumpIfInventory("EnkerUltProtect",1,"SkipThis")
		"----" H 0 A_GiveInventory("EnkerUltProtect",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,3,2)
		Goto Pain+1
		Pain.EnkerThirdfire:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,3,7)
		Goto Pain+1
		Death.EnkerThirdfire:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,3,7)
		Goto Death
		Pain.Enker2:
		"----" H 0 A_GiveInventory("EnkerBusterProtect")
		goto Pain+1
		Pain.Enker3:
		"----" H 0 A_GiveInventory("EnkerBusterProtect2")
		goto Pain+1
		Pain.BubbleBuster:
		"----" H 0 A_JumpIfInventory("BubbleVision",1,"Pain.BubbleCrit")
		goto Pain+1
		Pain.BubbleCrit:
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Pain.BubbleCrit2:
		"----" H 0 A_TakeInventory("BubbleTrapTime",99)
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("BubblemanFXTrail",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		goto Pain+1
		Pain.BubbleTrap:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("IAmFrozen",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("BubbleVision", 1, "BubbleReset")
		"----" H 0 A_GiveInventory("BubbleVision", 1)
		"----" H 0 A_GiveInventory("BubbleTrapTime", 70)
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_SpawnItemEx("BubbleTrapWatcher")
		goto Pain+1
		BubbleReset:
		"----" H 0 A_GiveInventory("BubbleTrapTime", 35)
		goto Pain+1
		Pain.BubbleClaw:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1
		Pain.M445:
		"----" H 0 A_GiveInventory("M445Protect")
		Goto Pain+1
		Pain.Pumpman:
		"----" H 0
		goto Pain+1
		Pain.PumpmanUlt:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("PumpBubbleCheck",1,"Pain.Pumpman")
		"----" H 0 A_GiveInventory("PumpUltFlag",1)
		"----" H 0 A_GiveInventory("PumpBubbleCheck",1)
		"----" H 0 A_GiveInventory("PumpBubbleVision",1)
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_PlaySoundEx("weapon/pumptrapped","Weapon")
		"----" H 0 A_SpawnItemEx("PumpToxicBubble")
		Goto Pain+1
		Pain.PumpmanSlow:
		"----" H 0 A_GiveInventory("PumpNumetProtect")
		"----" H 0 A_JumpIfInventory("PumpSlow",1,"Pain.Pumpman")
		"----" H 0 A_SpawnItemEx("PumpSlowFX")
		"----" H 0 A_GiveInventory("PumpSlow")
		goto Pain+1
		Pain.PumpmanHandle:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("PumpDrag")
		goto Pain+1
		Pain.Coldman:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,48,1)
		"----" H 0 A_GiveInventory("ColdWallProtect")
		"----" H 0 A_ScaleVelocity(0.95)
		"----" H 0 A_JumpIfInventory("ColdFreezeProtect",1,"Pain.ColdmanCrit")
		goto Pain+1
		Pain.ColdmanCrit:
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("ColdAir2",random(-32,32),random(-32,32),random(0,64),random(-20,20),0,random(-20,20),random(0,359))
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot6")
		"----" H 0 A_GiveInventory("StunHalfImmunity")
		goto Pain+1
		Pain.ColdmanFreeze:
		"----" H 0 A_GiveInventory("ColdFreezeProtect")
		"----" H 0 A_JumpIfInventory("StunHalfImmunity",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ColdFreezeFlag")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,4,1)
		"----" H 0 A_SpawnItemEx("MovementFreeze3")
		goto Pain+1
		Death.ColdmanFreeze:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,4,1)
		Goto Death
		Pain.ColdmanCloud:
		"----" H 0 ThrustThingZ(0,100,1,0)
		"----" H 0 A_GiveInventory("ColdCloudProtect")
		"----" H 0 A_GiveInventory("ColdSlower")
		"----" H 0 A_GiveInventory("ColdCloudVision")
		"----" H 0 A_SpawnItemEx("ColdCloudWatcher")
		goto Pain+1
		Pain.Plugman:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Pain.PlugmanStun:
		"----" H 0 A_JumpIfInventory("PlugDebuffCount",1,"Pain.PlugDebuffAdd")
		Pain.PlugmanStun2:
		"----" H 0 A_GiveInventory("PlugSmaplarProtect")
		"----" H 0 A_CheckFloor("Pain.Plugman")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_ChangeVelocity(momx, momy, -20, CVF_REPLACE)
		"----" H 0 A_GiveInventory("QuarterStun",1)
		Goto Pain+1
		Death.PlugmanStun:
		"----" H 0 A_JumpIfInventory("PlugDebuffCount",1,"Death.ElectricDeath")
		Goto Death
		Pain.PlugDebuffAdd:
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("PlugDashFX",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		"----" H 0 A_PlaySoundEx("weapon/plugshock","SoundSlot6")
		"----" H 0 A_GiveInventory("PlugDebuffCount",35)
		goto Pain.PlugmanStun2
		Pain.PlugShock:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.PlugManToss2:
		"----" H 0 A_SpawnItemEx("PlugDebuffWatcher")
		Pain.PlugManToss:
		"----" H 0 A_GiveInventory("AntiPlugGrabTimer")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		goto Pain+1
		Death.PlugShock:
		Death.PlugManToss2:
		Death.PlugManToss:
		"----" H 0
		goto Death.ElectricDeath
		Pain.Blastman:
		"----" H 0 A_ScaleVelocity(0.95)
		goto Pain+1
		Pain.Flashman:
		"----" H 0
		goto Pain+1
		Pain.FlashmanStun:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Flashman")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_PlaySoundEx("misc/gammadeath1","SoundSlot5")
		"----" H 0 A_SpawnItemEx("FlashStunWatcher")
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.FlashmanWarp:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,5,1)
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Flashman")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_PlaySoundEx("misc/gammadeath1","SoundSlot5")
		"----" H 0 A_SpawnItemEx("FlashStunWatcher")
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Death.FlashmanWarp:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,5,1)
		Goto Death.Gib
		//$BINARY
		Pain.CutmanBuster:
		"----" H 0 A_GiveInventory("CutmanBusterProtect",1)
		Goto Pain+1
		Pain.CutmanAkuma:
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("QuarterStun")
		"----" H 0 A_SpawnItemEx("HitFX",random(-32,32),random(-32,32),random(0,64))
		goto Pain+1
		Pain.CutmanFlying:
		"----" H 0 A_JumpIfInventory("CutmanFlyingProtect",1,"Pain.Cutman")
		"----" H 0 A_GiveInventory("CutmanFlyingProtect",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,6,1)
		Goto Pain+1
		Death.Cutman:
		Death.CutmanBuster:
		Death.CutmanAkuma:
		Death.CutmanFlying:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,6,4)
		Goto Death
		Death.CutmanUlt:
		"----" H 0 A_SpawnItemEx("CutSliced")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,6,4)
		goto Death.Gib
		Pain.TimemanSlow:
		"----" H 0 A_GiveInventory("Slowed",1)
		"----" H 0 A_GiveInventory("TimeThirdWeakness")
		"----" H 0 A_GiveInventory("TimemanSlowProtect")
		"----" H 0 A_GiveInventory("TimeThirdUlt")
		Goto Pain+1
		Pain.TimeThird:
		"----" H 0 A_JumpIfInventory("TimeThirdWeakness",1,"Pain.TimeCrit")
		"----" H 0 A_GiveInventory("Slowed",1)
		"----" H 0 A_PlaySoundEx("weapon/slow","SoundSlot5")
		"----" H 0 A_GiveInventory("TimemanThirdProtect")
		Goto Pain+1
		Pain.TimeCrit:
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("TimeSlowGFX",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot6")
		goto Pain.TimeThird+1
		Pain.TimemanArrow:
		"----" H 0 A_ScaleVelocity(0.9)
		//"----" H 0 A_JumpIfInventory("PowerSlow",1,"Pain.TimemanSlower")
		//"----" H 0 A_JumpIfInventory("PowerSlower",1,"Pain.TimemanSlower")
		goto Pain+1
		Pain.TimemanSlower:
		"----" H 0 A_PlaySoundEx("weapon/timeslow2","SoundSlot5")
		"----" H 0 A_GiveInventory("Slower",1)
		goto Pain+1
		Pain.AcidmanBuster:
		"----" H 0 A_GiveInventory("AcidDebuffTimer")
		"----" H 0 A_JumpIfInventory("AcidDebuffCount",5,"Pain")
		"----" H 0 A_JumpIfInventory("AcidDebuffCount",4,"Pain.Acid3")
		"----" H 0 A_JumpIfInventory("AcidDebuffCount",2,"Pain.Acid2")
		"----" H 0 A_SpawnItemEx("AcidDebuffWatcher")
		"----" H 0 A_GiveInventory("AcidYellowVision")
		"----" H 0 A_GiveInventory("AcidDebuffCount",1)
		goto Pain+1
		Pain.Acid2:
		"----" H 0 A_TakeInventory("AcidYellowVision")
		"----" H 0 A_GiveInventory("AcidRedVision")
		"----" H 0 A_GiveInventory("AcidDebuffCount",1)
		goto Pain+1
		Pain.Acid3:
		"----" H 0 A_TakeInventory("AcidRedVision")
		"----" H 0 A_GiveInventory("AcidGreenVision")
		"----" H 0 A_GiveInventory("AcidDebuffCount",1)
		goto Pain+1
		Pain.AcidBurning:
		"----" HHHHHHHH 0 A_SpawnItemEx("AcidMeltFX",random(0,32),0,random(0,20),random(-4,4),0,random(1,4),random(0,359))
		goto Pain+1
		Pain.AcidManGeyser:
		"----" H 0 A_GiveInventory("AcidGeyserProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,10,0,1)
		goto Pain+1
		Pain.AcidmanUlt:
		"----" H 0 A_GiveInventory("AcidDebuffTimer")
		"----" H 0 A_JumpIfInventory("AcidDebuffCount",5,"Pain")
		"----" H 0 A_SpawnItemEx("AcidDebuffWatcher")
		"----" H 0 A_GiveInventory("AcidDebuffCount",5)
		"----" H 0 A_TakeInventory("AcidYellowVision")
		"----" H 0 A_TakeInventory("AcidRedVision")
		"----" H 0 A_GiveInventory("AcidGreenVision")
		goto Pain+1
		Pain.Terra:
		"----" H 0
		goto Pain+1
		Pain.TerraChaser:
		"----" H 0 A_GiveInventory("TerraChaserProtect")
		goto Pain+1
		Pain.TerraChaser2:
		"----" H 0 A_GiveInventory("TerraChaser2Protect")
		goto Pain+1
		Pain.TerraChaser2T2:
		"----" H 0 A_GiveInventory("TerraChaser2T2Protect")
		goto Pain+1
		Pain.TerraChaser2T3:
		"----" H 0 A_GiveInventory("TerraChaser2T3Protect")
		goto Pain+1
		Death.TerraChaser2:
		Death.TerraChaser2T2:
		Death.TerraChaser2T3:
		"----" H 0
		goto Death.ElectricDeath
		Pain.TerraFirma:
		"----" H 0 A_GiveInventory("UnstunMeOnHit")
		"----" H 0 A_GiveInventory("TerraFirmaFreeze")//To stop mobility
		"----" H 0 A_GiveInventory("TerraFirmaProtect")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("TerraStunWatcher")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_PlaySoundEx("weapon/terrafreeze","SoundSlot6")
		goto Pain+1
		Pain.TerraFirma2:
		"----" H 0 A_GiveInventory("UnstunMeOnHit")
		"----" H 0 A_GiveInventory("TerraFirmaProtect")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("TerraStunWatcher2")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_PlaySoundEx("weapon/terrafreeze","SoundSlot6")
		goto Pain+1
		Pain.BurnermanBurn:
		Pain.Burnerman:
		"----" H 0
		goto Pain+1
		Pain.BurnerTrap:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_SpawnItemEx("BurnerTrapped")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		Goto Pain+1
		Pain.BurnerBurning:
		"----" HHH 0 A_SpawnItemEx("BurnerBurnBit1",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHH 0 A_SpawnItemEx("BurnerBurnBit2",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.BurnerFlames:
		"----" H 0 A_GiveInventory("BurnerFlamesProtect")
		goto Pain+1
		Pain.Grenademan:
		"----" H 0 A_ScaleVelocity(0.9)
		Goto Pain+1
		Pain.GrenadeThird:
		"----" H 0 A_GiveInventory("TempPitProtect_P") //Now stop whining, okay?
		"----" H 0 A_GiveInventory("GrenadeDashProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,0,28)
		"----" H 0 A_SpawnItem("PainGrenadeFlingHit")
		goto Pain+2
		Pain.GrenadeAlt:
		"----" H 0 A_GiveInventory("GrenadeAltProtect")
		goto Pain+1
		Pain.PharaohMan:
		"----" H 0
		goto Pain+1
		Pain.PharaohUlt:
		"----" H 0
		goto Pain+1
		Pain.PharaohBurning:
		"----" HHHH 0 A_SpawnItemEx("PharaohRoyalFX",random(0,32),0,random(0,32),random(0,2),0,random(-2,2),random(0,359))
		goto Pain+1
		Death.PharaohBurning:
		"----" H 0
		Goto Death.MagmamanUlt
		Pain.PharaohmanWave:
		"----" H 0 A_PlaySoundEx("weapon/pharaohwavehit","SoundSlot6")
		"----" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("PharaohHitFX",random(0,32),0,random(0,32),random(3,10),0,random(-7,7),random(0,359))
		"----" H 0 A_GiveInventory("PharaohmanWaveProtect")
		goto Pain+1
		Pain.PharaohmanEye:
		"----" H 0 A_JumpIfInventory("PowerPharaohCurse",1,"Pain.PharaohMan")
		"----" H 0 A_PlaySoundEx("weapon/pharaohcurse","SoundSlot6")
		"----" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("PharaohEyeFX",random(0,32),0,random(0,32),random(3,10),0,random(-7,7),random(0,359))
		"----" H 0 A_GiveInventory("PharaohmanEyeProtect")
		"----" H 0 A_GiveInventory("PowerPharaohCurse")
		"----" H 0 A_SpawnItemEx("PharaohCurseWatcher")
		goto Pain+1
		Pain.RingMan:
		"----" H 0
		goto Pain+1
		Pain.RingWhopper:
		"----" H 0 A_GiveInventory("RingWhopperProtect")
		goto Pain+1
		Pain.RingRing:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.Galaxyman:
		"----" H 0
		goto Pain+1
		Pain.PetitDevil:
		"----" H 0 A_GiveInventory("PetitMeatshotProtect")
		goto Pain+1
		Pain.GalaxymanWarp:
		"----" H 0 ThrustThing(random(0,255),9,0,0)
		"----" H 0 ThrustThingZ(0,12,0,0)
		Goto Pain+1
		Pain.GalaxymanSwoop:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("GalaxySwoopProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_Recoil(-25)
		"----" H 0 ThrustThingZ(0,24,0,0)
		Goto Pain+1
		Pain.GalaxymanUlt:
		"----" H 0 A_GiveInventory("GalaxyUltProtect")
		"----" H 0 A_Stop
		Goto Pain+1
		Pain.GalaxyBHB:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,21,1)
		"----" H 0 A_Stop
		goto Pain+1
		Pain.SheepMan:
		"----" H 0
		goto Pain+1
		Pain.SheepManWool:
		"----" H 0 A_ScaleVelocity(0.5)
		goto Pain+1
		Pain.SheepmanAlt:
		"----" H 0 A_GiveInventory("SheepmanAltProtect")
		goto Pain+1
		Pain.Gyroman:
		"----" H 0 //A_ChangeVelocity(0.9)
		goto Pain+1
		Pain.GyromanAttack:
		Pain.GyromanAttackUlt:
		"----" H 0 A_GiveInventory("GyromanAttackProtect")
		goto Pain+1
		Pain.Windman:
		"----" H 0
		goto Pain+1
		Pain.WindmanVacuum:
		"----" H 0 A_ScaleVelocity(0.7)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,4)
		goto Pain+1
		Pain.WindmanUlt:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,5,CVF_REPLACE)
		goto Pain+1
		Death.WindmanDrop:
		"----" H 0
		goto Death.Flatten
		Pain.TurbomanWheel2:
		"----" H 0 A_GiveInventory("TurboWheel2Protect")
		Pain.TurbomanWheel:
		"----" H 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.TurbomanGroundFlame:
		"----" H 0 A_GiveInventory("TurboGroundFlameProtect")
		goto Pain.TurbomanWheel
		Pain.MegaUppercutBurn:
		"----" H 0 A_GiveInventory("MegaUppercutProtect",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,15,CVF_REPLACE)
		Pain.TurbomanBurn:
		"----" H 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.TurboBurning:
		"----" HHHHH 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHHHH 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.TurbomanBurn2:
		"----" H 0 A_GiveInventory("TurboBurn2Protect")
		goto Pain.TurbomanBurn
		Pain.Ballade:
		"----" H 0
		goto Pain+1
		Pain.BalladeHunter:
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Pain.Magnetman:
		"----" H 0
		goto Pain+1
		Pain.MagnetmanOre:
		"----" H 0 A_JumpIfInventory("MagnetAltDamage",1,"Pain")
		"----" H 0 A_GiveInventory("MagnetAltDamage")
		"----" H 0 A_SpawnItemEx("MagnetDebuffWatcher")
		goto Pain+1
		Pain.Shadowman:
		"----" H 0
		goto Pain+1
		Pain.ShadowmanBlade:
		"----" H 0 A_GiveInventory("ShadowmanBladeProtect")
		goto Pain+1
		Pain.ShadowmanFrog:
		"----" H 0 A_GiveInventory("ShadowmanFrogProtect")
		goto Pain+1
		Pain.ShadowmanTongue:
		"----" H 0 A_GiveInventory("ShadowmanTongueProtect")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Flashman")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		Goto Pain+1
		Death.ShadowmanFlame:
		"----" H 0
		goto Death.MagmamanUlt
		Pain.ShadowmanCaltrop:
		"----" H 0 A_GiveInventory("CaltropNoMobility",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,6)
		"----" H 0 A_Stop
		goto Pain+1
		Pain.Geminiman:
		"----" H 0
		goto Pain+1
		Pain.GeminiShieldAttack:
		"----" H 0 A_GiveInventory("GeminiShieldAttackProtect")
		goto Pain+1
		Pain.MagmamanBazooka:
		"----" H 0 A_GiveInventory("MagmamanBazookaProtect")
		goto Pain+1
		Pain.Magmaman:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Death.MagmaBurn:
		Death.MagmaBurning:
		Death.MagmamanChangkey:
		"----" H 0
		goto Death.MagmamanUlt
		Pain.MagmaBurn:
		"----" H 0 A_GiveInventory("MagmaBurnProtect")
		"----" H 0 A_PlaySoundEx("heatman/burn","SoundSlot6")
		"----" HHHH 0 A_SpawnItemEx("MagmaChargeFX",32,0,random(0,64),0,0,0,random(0,359))
		goto Pain+1
		Pain.MagmaBurning:
		"----" HHHHHH 0 A_SpawnItemEx("MagmaChargeFX",32,0,random(0,64),frandom(1,3),0,frandom(-2,2),random(0,359))
		goto Pain+1
		Pain.Drillman:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.DrillManAlt:
		"----" H 0 A_GiveInventory("DrillDigProtect")
		goto Pain+1
		Pain.DrillManTF:
		"----" H 0 A_GiveInventory("TriDrillProtect")
		goto Pain+1
		Pain.DrillManTF2:
		"----" H 0 A_GiveInventory("TriDrillProtect2")
		goto Pain+1
		Death.DrillManAlt:
		Death.DrillManTF2:
		Death.DrillManUlt:
		Death.DrillManUlt2:
		"----" H 0
		Goto Death.Gib
		Pain.DocFlash:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_SpawnItemEx("DocFlashWatcher")
		"----" H 0 A_GiveInventory("UnstunMeOnHit")
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		goto Pain+4//Don't break pls rofl
		Pain.DocBubbleBuster:
		"----" H 0
		goto pain+1
		Pain.DocMetal:
		"----" H 0
		goto Pain
		Pain.SearchSuperSnake:
		"----" H 0 A_PlaySoundEx("weapon/snakebite","SoundSlot6")
		"----" H 0 A_GiveInventory("SearchSuperSnakeProtect")
		goto Pain+1
		Pain.Darkman1:
		Pain.Darkman1Ult:
		Pain.Darkman2:
		Pain.DM2Platform:
		"----" H 0
		goto pain+1
		Death.DM2Platform:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		Death.Darkman1Ult:
		"----" H 0
		Goto Death.Gib
		Death.Darkman2Ult:
		"----" H 0
		goto Death.ElectricDeath
		Pain.Darkman3Main:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,12,16)//A_JumpIfInventory("DarkCannonDebuff",1,"Pain.Darkman3MainCrit")
		goto pain+1
		Death.DarkMan3Main:
		"----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.Gib")
		goto Death
		Pain.Darkman3MainCrit:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" HHHHH 0 A_SpawnItemEx("DM3CritFX",random(0,32),0,random(0,64),random(5,8),0,random(-6,6),random(0,359))
		goto Pain+1
		Pain.Darkman3Alt:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StoneStareProtect",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("InflictDarkCannonDebuff",1)
		"----" H 0 A_GiveInventory("DarkRingStunActivator", 1)
		goto pain+1
		Pain.Darkman3Ult:
		Pain.Darkman4:
		Pain.Darkman4Alt:
		Pain.Darkman4Ult:
		Pain.Darkman4WNV:
		"----" H 0
		goto Pain+1
		Pain.Darkman4WNVStone:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("WilyNumbersVStoneManProtect",1)
		goto Pain+1
		Pain.Darkman4WNVCharge:
		"----" H 0 A_GiveInventory("WilyNumbersVChargeManProtect",1)
		goto Pain+1
		Pain.Darkman4WNVGravity:
		"----" H 0
		goto GravityForce4
		Death.Darkman4Ult:
		Death.Darkman4WNV:
		Death.Darkman4WNVStone:
		Death.Darkman4WNVCharge:
		Death.Darkman4WNVGravity:
		"----" H 0
		goto Death.Gib
		Pain.BusterRodG:
		"----" H 0
		goto Pain+1
		Pain.BusterRodGRod:
		"----" H 0 A_GiveInventory("BusterRodGRodProtect")
		goto Pain+1
		Pain.BusterRodGTip:
		"----" H 0 A_GiveInventory("BusterRodGTipProtect")
		goto Pain+1
		Pain.MegaWaterS:
		"----" H 0
		goto Pain+1
		Pain.MWSBlast:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 ThrustThingZ(0,80,0,0)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1
		Pain.HyperStormH:
		"----" H 0
		goto Pain+1
		Pain.HyperStormHShot:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("HSHMovementStopper")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,18,1) //Long Ult ammo
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,10) //Altfire ammo
		goto Pain+1
		Pain.HyperStormHAlt:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,46,3) //Ammo timer
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,18,1) //Long Ult ammo
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,4) //Altfire ammo
		goto Pain+1
		Pain.HyperStormHSlam:
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("HSHWallRushImmune")
		goto Pain+1
		Death.HyperStormHSlam:
		Death.HyperStormHUlt:
		Death.HyperStormHUltLanding:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,18,1) //Altfire no drain period
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,56) //Altfire ammo
		goto Death.Gib
		Pain.HyperStormHSpawns:
		"----" H 0
		goto Pain+1
		Pain.HyperStormHUltLanding:
		"----" H 0
		goto Pain+1
		Death.HyperStormH:
		Death.HyperStormHShot:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,18,1) //Altfire no drain period
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,56) //Altfire ammo
		goto Death
		Death.HyperStormHSpawns:
		"----" H 0
		goto Death
		Pain.Neptune:
		"----" H 0
		goto Pain+1
		Pain.NeptuneLunge:
		"----" H 0 A_GiveInventory("NeptuneLungeProtect",1)
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain")
		"----" H 0 A_JumpIfInventory("RustyMovement",1,"Pain")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",1,1)
		"----" H 0 A_SpawnItemEx("RustDebuffWatcher")
		//"----" H 0 A_GiveInventory("RustDebuffCount",1)
		goto Pain.NeptuneRust//Pain+1
		Pain.NeptuneRust:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain")
		"----" H 0 A_JumpIfInventory("RustyMovement",1,"Pain")
		"----" H 0 A_GiveInventory("RustDebuffTimer")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",4,"Pain")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",3,"Pain.Rust2")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",1,"Pain.Rust1")
		"----" H 0 A_SpawnItemEx("RustDebuffWatcher")
		"----" H 0 A_GiveInventory("RustDebuffCount",1)
		goto Pain+1
		Pain.Rust1:
		"----" H 0 A_GiveInventory("RustDebuffCount",1)
		goto Pain+1
		Pain.Rust2:
		"----" H 0 A_GiveInventory("RustyMovement",1)
		"----" H 0 A_GiveInventory("RustDebuffCount",1)
		goto Pain+1
		Pain.NeptuneInstantRust:
		"----" H 0 A_JumpIfInventory("RustyMovement",1,"Pain")
		"----" H 0 A_GiveInventory("RustyMovementUlt")
		"----" H 0 A_GiveInventory("RustDebuffTimer")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",3,"Pain")
		"----" H 0 A_GiveInventory("RustyMovement",1)
		"----" H 0 A_SpawnItemEx("RustDebuffWatcher")
		"----" H 0 A_GiveInventory("RustDebuffCount",3)
		goto Pain+1
		//$BINARY
		Pain.RaThorUlt:
		"----" H 0 A_GiveInventory("RaThorUltInflict",1)
		Goto Pain+1
		Pain.RaThorDarkMatter:
		"----" H 0 A_ScaleVelocity(0.9)
		"----" H 0 A_GiveInventory("RaThorDarkMatterProtect",1)
		Goto Pain+1
		Pain.RaThorDarkSubmission:
		"----" H 0 A_JumpIfInventory("RaThorDarkSubmissionProtect",1,"SkipThis")
		"----" H 0 A_GiveInventory("RaThorDarkSubmissionProtect",1)
		//"----" H 0 A_GiveInventory("RaThorAltInflict",1)
		"----" H 0 A_PlaySoundEx("weapon/thorlifesteal","SoundSlot5")
		"----" H 0 ACS_NamedExecuteAlways("VC_RaThorLifeSteal",0,0)
		Goto Pain+1
		Death.RaThorDarkSubmission:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_GiveInventory("NoSpeed",1)
		"----" H 0 A_SetGravity(0.0)
		"----" H 0 ACS_NamedExecuteAlways("VC_RaThorLifeSteal",0,1)
		"----" H 0 A_PlaySoundEx("misc/eclipseexplode","SoundSlot5")
		"----" H 0 ACS_ExecuteAlways(971,0,2468)
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))	"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1)
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))	"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1)
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))	"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359),1)
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 A_SetScale(2.5,scaley-0.05) "----" H 0 A_FadeOut(0.01) "----" HHHH 0 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359)) "####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))		
		"####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"####" H 1 A_SpawnItemEx("ThorRedDeathFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		goto Death.NoFX
		Pain.RaThorWallRush:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,7,1)
		"----" H 0 A_Stop
		"----" H 0 ThrustThingZ(0,20,0,0)
		goto Pain+1
		Pain.NapalmUlt:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.Chargeman:
		"----" H 0
		goto Pain+1
		Pain.ChargemanCoal:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.ChargemanRam:
		"----" H 0 A_ScaleVelocity(0.8)
		"----" H 0 A_GiveInventory("ChargemanRamProtect",1)
		goto Pain+1
		Pain.ChargemanUltCoal:
		"----" H 0 
		"----" H 0 A_JumpIfInventory("BrightBlind", 1,3)
		"----" H 0 A_GiveInventory("BrightBlind",125)
		"----" H 0 ACS_NamedExecuteAlways("VC_ChargeBlind",0)
		Goto Pain+1
		"----" H 0 A_GiveInventory("BrightBlind",55)
		Goto Pain+1
		Pain.Chillman:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Pain.ChillmanSpikeUlt:
		"----" H 0 A_Stop
		goto Pain.ChillmanShot
		Pain.ChillmanJump:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("ChillmanJumpProtect")
		"----" H 0 A_SpawnItem("PainGrenadeFlingHit")
		"----" H 0 A_JumpIfInventory("ChillAltDoubleDamage",1,1)
		goto Pain+1
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" H 0 A_PlaySoundEx("weapon/icewavebreak","SoundSlot6")
		goto Pain+1
		Pain.ChillmanFreeze:
		"----" H 0 A_GiveInventory("ChillColdCount",1)
		"----" H 0 A_JumpIfInventory("ChillAltDoubleDamage",1,1)
		"----" H 0 A_SpawnItemEx("ChillFrozenWatcher",0)
		"----" H 0 A_GiveInventory("ChillUltFlag",1)
		"----" H 0 A_GiveInventory("ChillAltDoubleDamage",1)
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		Goto Pain+1
		Pain.ChillmanShot:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ChillDebuffTimer")
		"----" H 0 A_JumpIfInventory("ChillColdCount",5,"Pain")
		"----" H 0 A_JumpIfInventory("ChillColdCount",4,"Pain.ChillmanFreeze")
		"----" H 0 A_JumpIfInventory("ChillColdCount",1,"Pain.Chill2")
		"----" H 0 A_SpawnItemEx("ChillDebuffWatcher")
		"----" H 0 A_GiveInventory("ChillColdCount",1)
		goto Pain+1
		Pain.Chill2:
		"----" H 0 A_GiveInventory("ChillColdCount",1)
		goto Pain+1
		Pain.Centaurman:
		"----" H 0
		goto Pain+1
		Pain.CentaurBuster:
		"----" H 0 A_GiveInventory("CentaurBusterProtect")
		goto Pain+1
		Pain.CentaurWallRush:
		"----" H 0 A_Stop
		"----" H 0 //A_JumpIfInventory("CentaurPerfectFlag",1,"Pain.CentaurWallRush2")
		"----" H 0 A_SpawnItemEx("CentaurPinWatcher")
		goto Pain.SparkShock
		Pain.CentaurWallRush2:
		"----" H 0 //A_TakeInventory("CentaurPerfectFlag",9)
		"----" H 0 //A_SpawnItemEx("CentaurPinWatcher2")
		goto Pain.SparkShock
		Pain.CentaurManFlash:
		"----" H 0 A_JumpIfInventory("UnstunMeOnHit",1,"RemoveStun")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ScreenFlash")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_GiveInventory("UnstunMeOnHit")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("CentaurArrowDebuff")
		"----" H 0 A_SpawnItemEx("CentaurFreezeWatcher")
		goto Pain+4
		Pain.CentaurManFlash2:
		"----" H 0 A_JumpIfInventory("UnstunMeOnHit",1,"RemoveStun")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ScreenFlash")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_GiveInventory("UnstunMeOnHit")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("CentaurArrowDebuff")
		"----" H 0 A_SpawnItemEx("CentaurFreezeWatcher2")
		goto Pain+4
		Pain.Quint:
		"----" H 0
		goto Pain+1
		Pain.QuintFall:
		"----" H 0 A_GiveInventory("QuintFallProtect")
		goto Pain+1
		Pain.QuintUlt:
		"----" H 0 A_Stop
		goto Pain+1
		Pain.QuintSpike:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,-20,CVF_REPLACE)
		goto Pain+1
		Pain.Commandoman:
		Pain.CommandoManBomb:
		"----" H 0
		goto Pain+1
		Pain.CommandomanStorm:
		"----" H 0 A_GiveInventory("CommandomanStormProtect")
		goto Pain+1
		Pain.CommandoStomp:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Commandoman")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.Diveman:
		"----" H 0
		goto Pain+1
		Pain.DivemanAttack:
		"----" H 0 A_GiveInventory("DivemanAttackProtect")
		goto Pain+1
		Pain.DivemanMoby:
		"----" H 0 A_GiveInventory("DiveManPoison")
		"----" H 0 A_SpawnItemEx("DivePoisonWatcher")
		goto Pain+1
		Pain.DivemanMine:
		"----" H 0 A_GiveInventory("DivemanMineProtect")
		goto Pain+1
		Pain.Concreteman1:
		"----" H 0
		goto Pain+1
		Pain.Concreteman2:
		"----" H 0 A_JumpIfInventory("ConcreteVision", 1, "ConcreteReset")
		"----" H 0 A_GiveInventory("ConcreteVision", 1)
		"----" H 0 A_GiveInventory("ConcreteTime", 105)
		"----" H 0 A_SpawnItemEx("ConcreteWatcher")
		goto Pain+1
		ConcreteReset:
		"----" H 0 A_GiveInventory("ConcreteTime", 105)
		goto Pain+1
		Pain.Concreteman3:
		"----" H 0 A_Stop
		"----" H 0 A_JumpIfInventory("FrozenInConcreteFlag",1,"Pain")
		"----" H 0 A_JumpIfInventory("ConcreteFreezeFlag2",1,"Pain.ConcreteFreezeReal")
		"----" H 0 A_JumpIfInventory("ConcreteFreezeFlag1",1,"Pain.ConcreteFreezePre")
		"----" H 0 A_GiveInventory("ConcreteFreezeFlag1",1)
		goto Pain+1
		Pain.ConcreteFreezePre:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ConcreteFreezeFlag2",1)
		"----" H 0 A_JumpIfInventory("ConcreteVision", 1, "ConcreteReset")
		"----" H 0 A_GiveInventory("ConcreteVision", 1)
		"----" H 0 A_GiveInventory("ConcreteTime", 105)
		"----" H 0 A_SpawnItemEx("ConcreteWatcher")
		goto Pain+1
		Pain.ConcreteFreezeReal:
		/*"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("FrozenInConcreteFlag")
		"----" H 0 A_GiveInventory("ConcreteFreezer")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")*/
		"----" H 0
		goto Pain+1
		Pain.ConcreteFreezeReal2:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("FrozenInConcreteFlag")
		"----" H 0 A_GiveInventory("ConcreteFreezer")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0
		goto Pain+1
		Pain.ConcretemanUlt:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("FrozenInConcreteFlag",1,"Pain")
		"----" H 0 A_GiveInventory("FrozenInConcreteFlag")
		"----" H 0 A_GiveInventory("ConcreteUltFreezer")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		goto Pain+1
		Pain.ConcTackle2:
		"----" H 0 A_JumpIfInventory("ConcreteShotDebuff",1,"Pain.ConcreteCrit")
		"----" H 0 A_TakeInventory("ConcreteShotDebuff")
		"----" H 0 A_TakeInventory("ConcreteVision", 1)
		"----" H 0 A_TakeInventory("ConcreteTime", 105)
		goto Pain+1
		Pain.ConcStomp2:
		"----" H 0 A_JumpIfInventory("ConcreteShotDebuff",1,"Pain.ConcreteCrit")
		"----" H 0 A_TakeInventory("ConcreteShotDebuff")
		"----" H 0 A_TakeInventory("ConcreteVision", 1)
		"----" H 0 A_TakeInventory("ConcreteTime", 105)
		goto Pain+1
		Pain.ConcreteCrit:
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ConcreteBreakFX",random(0,48),0,random(0,64),random(-10,10),0,random(2,13),random(0,359))
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" H 0 A_TakeInventory("ConcreteShotDebuff")
		"----" H 0 A_TakeInventory("ConcreteVision", 1)
		"----" H 0 A_TakeInventory("ConcreteTime", 105)
		goto Pain+1
		Pain.MetongerZ:
		Pain.MetongerZSentry:
		"----" H 0
		goto Pain+1
		Pain.MetongerZSpin:
		"----" H 0 A_GiveInventory("MetongerZSpinProtect")
		goto Pain+1
		Pain.Oilman:
		"----" H 0
		goto Pain+1
		Pain.OilmanSlick:
		"----" H 0 A_JumpIfInventory("OilNoSlip", 1, "Pain")
		"----" H 0 A_GiveInventory("OilNoSlip")
		"----" H 0 A_SpawnItemEx("OilSlipWatcher")
		Goto Pain+1
		Pain.OilmanAlt:
		"----" H 0
		goto Pain+1
		Pain.OilmanFlame:
		"----" H 0 A_TakeInventory("OilNoSlip")
		Goto Pain+1
		Death.OilmanFlame:
		"----" H 0 A_JumpIfInventory("OilNoSlip",1,"Death.Gib")
		goto Death
		Death.OilmanUlt:
		"----" H 0
		goto Death.Gib
		Pain.Toadman:
		"----" H 0
		goto Pain+1
		Pain.ToadmanStun:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Flashman")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.ToadmanJump:
		"----" H 0 A_GiveInventory("ToadmanJumpProtect")
		goto Pain+1
		Pain.ToadmanAlt:
		"----" H 0 A_Stop
		"----" H 0 A_PlaySoundEx("weapon/toadhit","SoundSlot5")
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ToadAltDrop", random(12, 40), 0, Random(16,48), random(10,20), 0, Random(-2,8), random(0, 359))
		/*
		"----" H 0 A_JumpIfInventory("ToadDebuffTimer",1,2)
		"----" H 0 A_SpawnItemEx("ToadDebuffWatcher")
		"----" H 0 A_PlaySoundEx("weapon/toadhit","SoundSlot5")
		"----" H 0 A_GiveInventory("ToadMovement")
		"----" H 0 A_GiveInventory("ToadDebuffTimer",280)*/
		goto Pain+1
		Pain.ToadmanLeap:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,51,1)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("ToadmanLeapProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItem("PainGrenadeFlingHit")
		goto Pain+1
		Pain.ToadmanRainFlush:
		"----" H 0 A_JumpIfInventory("ToadChargeDamage",1,"Pain.ToadmanCrit")
		goto Pain+1
		Pain.ToadmanCrit:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("ToadSteam",random(-32,32),random(-32,32),random(0,64),random(2,4),0,random(-3,3),random(0,359))
		goto Pain+1
		Pain.ToadUltAOE:
		"----" H 0 A_GiveInventory("ToadUltAOEProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_GiveInventory("ToadDoubleDamage")//A_Recoil(6)
		"----" H 0 A_GiveInventory("ToadUltScreen")
		goto Pain+1
		Pain.ToadmanUlt:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_Recoil(6)
		goto Pain+1
		Pain.Dustman:
		"----" H 0
		goto Pain+1
		Pain.DustVacuum:
		"----" H 0 A_GiveInventory("DustVacuumProtect")
		goto Pain+1
		Death.DustVacuum:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("weapon/dustrecycle","SoundSlot6")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,8,1)
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("DustSmokeFX",random(0,48),0,random(0,64),0,0,0,random(0,359))
		goto Death.NoFX
		Pain.DustPowerShot:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Dustman")
		"----" H 0 A_GiveInventory("DustVision")
		"----" H 0 A_PlaySoundEx("misc/junkmix","SoundSlot6")
		"----" H 0 A_SpawnItemEx("DustManStopWatcher")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		goto Pain+1
		Pain.Skullman:
		"----" H 0 A_JumpIfInventory("SkullDebuffDamage",1,"Pain.SkullCrit")
		goto Pain+1
		Pain.SkullmanBlue:
		"----" H 0 A_GiveInventory("SkullManBarrierProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,9,1)
		"----" H 0 A_JumpIfInventory("SkullDebuffDamage",1,"Pain.SkullBlueCrit")
		goto Pain+1
		Pain.SkullmanWhite:
		"----" H 0 A_GiveInventory("SkullManBarrierProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,10,1)
		goto Pain+1
		Pain.SkullCrit:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" H 0 A_TakeInventory("ShortUltimateAmmo",5)
		"----" H 0 A_TakeInventory("MediumShortUltimateAmmo",10)
		"----" H 0 A_TakeInventory("MediumUltimateAmmo",15)
		"----" H 0 A_TakeInventory("MediumLongUltimateAmmo",20)
		"----" H 0 A_TakeInventory("LongUltimateAmmo",25)
		"----" H 0 A_TakeInventory("VeryLongUltimateAmmo",30)
		"----" H 0 A_TakeInventory("LongestUltimateAmmo",35)
		"----" H 0 A_TakeInventory("MaximumUltimateAmmo",40)
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("SkullVanishFX3",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		goto Pain+1
		Pain.SkullBlueCrit:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("SkullVanishFX2",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		goto Pain+1
		Pain.SkullCage:
		"----" H 0 A_PlaySoundEx("weapon/skullcurse","SoundSlot6")
		"----" H 0 A_GiveInventory("SkullCageProtect")
		"----" H 0 A_SpawnItemEx("SkullCageWatcher")
		"----" H 0 A_GiveInventory("NoAltfire")
		"----" H 0 A_GiveInventory("NoThirdfire")
		"----" H 0 A_SpawnItemEx("SkullDebuffFX1")
		"----" H 0 A_SpawnItemEx("SkullDebuffFX2")
		"----" H 0 A_SpawnItemEx("SkullDebuffFX3")
		"----" H 0 A_SpawnItemEx("SkullDebuffFX4")
		"----" H 0 A_GiveInventory("SkullDebuffDamage")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,12,112)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,11,1)
		goto Pain+1
		Pain.SkullManUlt:
		"----" H 0 A_JumpIfInventory("SkullDebuffDamage",1,"Pain.SkullManUltHeal")
		goto Pain+1
		Pain.SkullManUltHeal:
		"----" HHHHHHHH 0 A_SpawnItemEx("SkullAbsorbFX",random(8,40),0,random(0,48),0,0,random(3,6),random(0,359))
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,14,1)
		goto Pain+1
		Death.SkullmanBlue:
		"----" H 0 A_GiveInventory("SkullManBarrierProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,9,1)
		goto Death
		Death.SkullmanWhite:
		"----" H 0 A_GiveInventory("SkullManBarrierProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,10,1)
		goto Death
		Death.SkullCage:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,11,1)
		goto Death
		Pain.Tenguman:
		"----" H 0
		goto Pain+1
		Pain.TenguManHold:
		"----" H 0 A_GiveInventory("TenguManHoldProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,15,CVF_REPLACE|CVF_RELATIVE)
		goto Pain+1
		Pain.TenguManKick:
		"----" H 0 A_PlaySoundEx("weapon/tengukickhit","SoundSlot6")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,100,1,0)
		goto Pain+1
		Pain.TenguManSwoop:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,112)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,13,1)
		"----" H 0 A_GiveInventory("TenguManSwoopProtect")
		"----" H 0 A_Stop
		goto Pain+1
		Death.TenguManSwoop:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,112)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,13,1)
		goto Death.Gib
		Pain.TenguManUlt:
		"----" H 0 A_GiveInventory("TenguManUltProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked")
		"----" H 0 A_GiveInventory("CaltropNoMobility",1)
		"----" H 0 A_ChangeVelocity(0,0,8.8,CVF_REPLACE|CVF_RELATIVE)
		goto Pain+1
		Pain.Gutsman:
		Pain.GutsmanBit:
		"----" H 0
		goto Pain+1
		Death.Gutsman:
		Death.GutsmanGUpperCut:
		"----" H 0
		goto Death.Gib
		Pain.Bombman:
		Pain.BombmanDud:
		"----" H 0
		Goto Pain+1
		Death.Bombman:
		"----" H 0
		goto Death.Gib
		Pain.BombmanStun:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked4",1)
		goto Pain+1
		Pain.Saturn:
		"----" H 0
		goto Pain+1
		Pain.SaturnRing:
		"----" H 0 A_GiveInventory("SaturnRingProtect")
		goto Pain+1
		Pain.SaturnStopper:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("SaturnStopperFreezer")
		"----" H 0 A_GiveInventory("ScreenFlash")
		"----" H 0 A_GiveInventory("NoThirdFire")
		goto Pain+1
		Pain.SaturnCounter:
		"----" H 0 A_GiveInventory("BlackHoleCounterProtect")
		goto Pain+1
		Pain.Jupiter:
		Pain.MaximumShocker:
		"----" H 0
		Goto Pain+1
		Death.MaximumShocker:
		"----" H 0
		goto Death.ElectricDeath
		Pain.JupiterElectricShock:
		"----" H 0  A_GiveInventory("ElectricShockProtect", 1)
		Goto Pain+1
		Pain.ElectricShockColumn:
		"----" H 0  A_GiveInventory("ElectricShockColumnProtect", 1)
		Goto Pain+1
		Pain.Mercury:
		Pain.MercuryStationaryGlob:
		"----" H 0
		Goto Pain+1
		Pain.MercuryGlobDamager:
		"----" H 0 A_GiveInventory("MercuryGlobProtect")
		Goto Pain+1
		Pain.MercuryGlobForm:
		"----" H 0 A_GiveInventory("MercuryGlobFormProtect",1)
		goto Pain+1
		Pain.MercuryUltSteal:
		"----" H 0 A_SpawnItemEx("StolenUltAmmo",0,0,0,12,0,12,random(0,360),SXF_TRANSFERTRANSLATION)
		Pain.MercuryUltSteal2:
		"----" H 0 A_TakeInventory("ShortUltimateAmmo",5)
		"----" H 0 A_TakeInventory("MediumShortUltimateAmmo",10)
		"----" H 0 A_TakeInventory("MediumUltimateAmmo",15)
		"----" H 0 A_TakeInventory("MediumLongUltimateAmmo",20)
		"----" H 0 A_TakeInventory("LongUltimateAmmo",25)
		"----" H 0 A_TakeInventory("VeryLongUltimateAmmo",30)
		"----" H 0 A_TakeInventory("LongestUltimateAmmo",35)
		"----" H 0 A_TakeInventory("MaximumUltimateAmmo",40)
		Goto Pain+1
		Pain.Uranus:
		Pain.UranusBit:
		Pain.UranusDeepDestroyer:
		"----" H 0
		Goto Pain+1
		Pain.UranusSlam:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("UranusWallRushImmune")
		goto Pain+1
		Death.UranusSlam:
		Death.UranusDeepDestroyer:
		"----" H 0 A_Stop
		goto Death.Gib
		Pain.UranusQuake:
		"----" H 0 A_GiveInventory("BullHornsQuakeProtect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,random(30,50),0,0)
		Goto Pain+1
		Pain.Pluto:
		Pain.PlutoBreakDash:
		"----" H 0
		Goto Pain+1
		Death.PlutoBreakDash:
		"----" H 0
		goto Death.Gib
		Pain.MetongerZSentry:
		Pain.MetongerZ:
		"----" H 0
		goto Pain+1
		Pain.Venus:
		"----" H 0
		Goto Pain+1
		Pain.VenusWaterCrash:
		"----" H 0 A_GiveInventory("WaterCrashProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,20,1,1)
		Goto Pain+1
		Pain.VenusMine2:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		Pain.VenusMine1:
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Pain.VenusGroundCrawler:
		"----" H 0 A_JumpIfInventory("VenusDebuffTimer",1,3)
		"----" H 0 A_SpawnItemEx("VenusDebuffWatcher")
		"----" H 0 A_GiveInventory("VenusDebuffTimer",1)
		"----" H 0 A_GiveInventory("ToadMovement")
		"----" H 0 A_GiveInventory("VenusGroundProtect")
		goto Pain+1
		Death.VenusMine1:
		Death.VenusMine2:
		Death.VenusMine3:
		Death.VenusWaterCrash:
		"----" H 0
		goto Death.Gib
		Pain.Sunstar:
		Pain.SunstarSolarFlare:
		Pain.SunstarIonStorm:
		"----" H 0
		Goto Pain+1
		Pain.SunstarNovaBeam:
		"----" H 0 A_GiveInventory("NovaBeamSDProtect")
		Goto Pain+1
		Pain.SunstarCharge:
		"----" H 0 A_SpawnItem("BaseFlinger3")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.SunstarBurn:
		"----" H 0 A_GiveInventory("SolarisFieldFireProtect", 1)
		"----" H 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.SunstarBurning:
		"----" HHHHH 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHHHH 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Death.Sunstar:
		Death.SunstarBurn:
		Death.SunstarBurning:
		Death.SunstarNovaBeam:
		Death.SunstarCharge:
		Death.SunstarSolarFlare:
		"----" H 0
		goto Death.MagmamanUlt
		Death.SunstarIonStorm:
		"----" H 0
		goto Death.AcidmanUlt
		
		Pain.Alien:
		"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain.AlienLevelUp")
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		
		Pain.AlienBreath:
		"----" H 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain.AlienLevelUp")
		goto Pain+1
		
		Pain.AlienBurning:
		"----" HHHHH 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHHHH 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain.AlienLevelUp")
		goto Pain+1
		
		Pain.AlienLevelUp:
		"----" H 0 A_GiveInventory("AlienDripCancel",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,20,1)
		"----" H 0 A_TakeInventory("AlienChemicalColor",1)
		goto Pain+1
		
		Pain.AlienDrip:
		"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain")
		"----" H 0 A_GiveInventory("AlienChemicalColor",1)
		"----" H 0 A_SpawnItemEx("AlienDripWatcher")
		"----" H 0 A_GiveInventory("AlienDebuffFlag",1)
		goto Pain+1
		
		Death.Alien:
		Death.AlienBreath:
		"----" H 0 A_JumpIfInventory("AlienDebuffFlag",1,"Death.AlienLevelUp")
		goto Death
		
		Death.AlienDozer:
		"----" H 0 A_JumpIfInventory("AlienDebuffFlag",1,"Death.AlienLevelUpGib")
		goto Death.Gib
		
		Death.AlienLevelUp:
		Death.AlienDrip:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,20,1)
		goto Death
		
		Death.AlienLevelUpGib:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,20,1)
		goto Death.Gib
		
		Pain.WavemanHarpoon:
		"----" H 0 A_GiveInventory("WavemanHarpoon_P",1)
		Goto Pain+1
		Pain.WavemanWS1:
		"----" H 0 A_GiveInventory("WavemanWSProtect",1)
		Goto Pain+1
		Pain.WavemanWS2:
		"----" H 0 A_GiveInventory("WavemanWSProtect2",1)
		Goto Pain+1
		Pain.WavemanWS3:
		"----" H 0 A_GiveInventory("WavemanWSProtect3",1)
		Goto Pain+1
		Pain.WavemanWS4:
		"----" H 0 A_GiveInventory("WavemanWSProtect4",1)
		Goto Pain+1
		Pain.WavemanWS5:
		"----" H 0 A_GiveInventory("WavemanWSProtect5",1)
		Goto Pain+1
		Pain.WavemanBike:
		"----" H 0 A_ScaleVelocity(0.7)
		goto Pain+1
		
		Pain.GravityDrop:
		"----" H 0 A_GiveInventory("GravityDropProtect",1)
		"----" H 0 A_Stop
		goto Pain+1
		Pain.GravityManHoldDown:
		"----" H 0 A_JumpIfInventory("GravityManHoldDownDamage",1,"Pain.GravityCrit")
		goto Pain+1
		Pain.GravityCrit:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","criticalhit")
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("GravityDropFX",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		goto Pain+1
		Death.GravityManHoldDown:
		"----" H 0 A_JumpIfInventory("GravityCritFlag",1,"Death.Gib")
		goto Death
		Pain.GravityUlt:
		"----" H 0 A_GiveInventory("GravityUltHit",1)
		goto Pain+1
		Pain.GravityManBusterAir:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,100,1,0)
		goto Pain+1
		Pain.GravityUltDrop:
		"----" H 0
		goto Pain+1
		Death.GravitySky:
		"----" H 0 A_SpawnItemEx("GravityTwinkle")
		goto Death.Falling
		Death.GravityManHold:
		Death.GravityUlt:
		//"----" H 0 A_SetScale(2.5,-2.5) Thanks OpenGL
		"----" H 0 A_SetGravity(-1)
		"----" H 0 ThrustThingZ(0,50,0,0)
		goto Death
		
		Pain.KnightmanJump:
		"----" H 0 A_GiveInventory("KnightmanJumpProtect")
		goto Pain+1
		Pain.KnightPerfect:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Pain.KnightmanCrush:
		"----" H 0 A_GiveInventory("KnightmanCrushProtect")
		goto Pain+1
		Death.KnightPerfect:
		"----" H 0
		goto Death.Gib
		Pain.KnightPerfectUlt:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked4",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger8")
		"----" H 0 ThrustThingZ(0,12,0,0)
		goto Pain+1
		Death.KnightPerfectUlt:
		"----" H 0
		goto Death.Gib
		Pain.KnightFullJump:
		"----" H 0 A_GiveInventory("KnightmanJumpProtect")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		
		Pain.CloudmanBolt:
		"----" H 0 A_GiveInventory("CloudmanBoltProtect")
		goto Pain+1
		Pain.Cloudman:
		Pain.CloudmanCharge:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Death.CloudmanCharge:
		"----" H 0
		goto Death.ElectricDeath
		
		Death.StrikeManUlt:
		"----" H 0 A_SpawnItemEx("StrikeCheerSound")
		goto Death.Gib
		
		Pain.YamatoSprint:
		"----" H 0 A_GiveInventory("YamatoSprintProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,50,0,0)
		goto Pain+1
		Pain.YamatoSpin:
		"----" H 0 A_GiveInventory("YamatoSpinProtect")
		goto Pain+1
		Pain.YamatoBenK:
		"----" H 0 A_GiveInventory("YamatoSpinProtect")
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		
		Pain.Fuseman:
		"----" H 0
		Goto Pain+1
		Pain.FusemanFuseChain:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,26,1)
		Goto Pain+1
		Death.FusemanHighVoltage:
		"----" H 0
		goto Death.Gib
		Pain.FusemanHalfStun:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		Goto Pain+1
		Pain.FusemanFuseTackle:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked2",1)
		"----" H 0 A_GiveInventory("FuseTackleProtect")
		Goto Pain+1
		Death.FusemanFuseTackle:
		"----" H 0
		goto Death.ElectricDeath
		Pain.BurstmanFloorProtected:
		"----" H 0 A_GiveInventory("BurstHurtBombsProtection",1)
		Pain.Burstman:
		Pain.BurstmanFloor:
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Pain.BurstmanBubble:
		"----" H 0 A_GiveInventory("BurstBubbleProtect")
		"----" H 0 A_ScaleVelocity(0.5)
		"----" H 0 ThrustThingZ(0,20,0,0)
		goto Pain+1
		Pain.BurstmanUlt:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" H 0 A_JumpIfInventory("BurstVision", 1, "Pain.Burstman")
		"----" H 0 A_GiveInventory("BurstVision", 1)
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_SpawnItemEx("BurstTrapWatcher")
		goto Pain+1
		
		Pain.Plantman:
		Pain.PlantSentry:
		"----" H 0
		Goto Pain+1
		Pain.PlantmanBarrier:
		"----" H 0 A_GiveInventory("PlantmanBarrierProtect")
		goto Pain+1
		
		Pain.BlizzardSlam:
		"----" H 0 A_Stop
		goto Pain+1
		Death.BlizzardSlam:
		"----" H 0
		Goto Death.Gib
		Pain.BlizzardUlt:
		"----" H 0 A_Stop
		goto Pain+1
		Death.BlizzardUlt:
		"----" H 0
		goto Death.ColdFreeze
		
		Pain.Stoneman:
		Pain.StonemanPillar3:
		"----" H 0 A_ScaleVelocity(0.75)
		goto Pain+1
		Pain.StonemanStone:
		"----" H 0 A_GiveInventory("StonemanStoneProtect")
		goto Pain+1
		Pain.StonemanPillar2:
		"----" H 0 A_GiveInventory("StonemanPillar2Protect")
		"----" H 0 ThrustThingZ(0,50,0,0)
		goto Pain+1
		Pain.StoneStomp:
		"----" H 0 A_GiveInventory("StoneStompProtect")
		goto Pain+1
		Pain.StonemanQuake:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("StonemanQuakeProtect")
		goto Pain+1
		Pain.StoneHand:
		Pain.StonePillarBreak:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,42,1)
		"----" H 0 A_GiveInventory("StoneHandProtect")
		goto Pain+1
		Pain.StoneKnock:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		Goto Pain+1
		Death.StoneKnock:
		"----" H 0
		goto Death.UranusThrow
		Death.StoneBreak:
		"----" H 0 A_Quake(4,22,0,200)
		goto Death.Gib
		
		Pain.King:
		Pain.KingChop:
		Pain.KingUlt:
		Pain.KingUltChop:
		"----" H 0
		Goto Pain+1
		Pain.KingAxeSpin:
		"----" H 0 A_GiveInventory("AxeSpinProtect",1)
		Goto Pain+1
		Death.KingUlt:
		Death.KingUltChop:
		Death.KingAxeSpinUlt:
		"----" H 0
		Goto Death.Gib
		
		Pain.Searchman:
		Pain.SearchBush:
		"----" H 0
		Goto Pain+1	
		Pain.DeadlyStorm:
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		
		Pain.Blademan: 
        "----" H 0
        goto Pain+1
        Pain.BladeDash:
		"----" H 0 A_Stop
        Pain.BladeDash3:
        "----" H 0 A_GiveInventory("BladeDashProtect")
        goto Pain+1
        Pain.BladeDash2:
		"----" H 0 A_Stop
        goto Pain+1
        Pain.BlademanUlt:
        "----" H 0
        goto Pain+1
        Death.BlademanUlt:
        "----" H 0
        Goto Death.Gib
		
		Pain.SolarmanBurning:
		"----" HHHHH 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHHHH 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain.AlienLevelUp")
		goto Pain+1
		Pain.Solarman:
		Pain.SolarInferno:
		"----" H 0
		Goto Pain+1
		Pain.SolarmanProtect:
		"----" H 0 A_GiveInventory("SolarWave3Protect")
		Goto Pain+1
		Pain.SolarWave: 
		"----" H 0 A_GiveInventory("SolarWaveProtect")
		Goto Pain+1
		Pain.SolarSun2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,33,1)
		Pain.SolarSun:
		"----" H 0 A_GiveInventory("SolarSunProtect")
		Goto Pain+1
		Death.SolarSun2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,34,1)
		"----" H 0 A_PlaySoundEx("weapon/sunparry","Auto")
		Death.SolarSun:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,34,1)
		"----" H 0 A_PlaySoundEx("weapon/sunparry","Auto")
		Goto Death.MagmamanUlt
		Death.SolarInferno:
		"----" H 0
		Goto Death.MagmamanUlt
		
		Pain.NitromanRage:
		"----" H 0 A_GiveInventory("NitroRageWheelProtect")
		Goto Pain+1
		Pain.Nitroman:
		"----" H 0
		Goto Pain+1
		Pain.BikeSlide:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,43,1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain.BikeForm")
		"----" H 0 A_PlaySoundEx("weapon/concretehit","SoundSlot6")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Pain.BikeForm:
		Pain.BikeStunt:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,43,1)
		"----" H 0 A_GiveInventory("BikeFormProtect")
		"----" H 0 ThrustThingZ(0, 40, 0, 0)
		Goto Pain+1
		Death.BikeForm:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,43,2)
		Death.BadTraffic:
		Death.BadTrafficImpact:
		"----" H 0
		Goto Death.Gib
		Death.BikeStunt:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,43,2)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,29,1)
		"----" H 0 A_PlaySoundEx("weapon/nitrocheer","SoundSlot6")
		Goto Death.Gib
		
		Pain.ProtoManBuster:
		Pain.ProtoManCharge:
		"----" H 0
		Goto Pain+1
		Pain.ProtoSmash: 
		"----" H 0 A_PlaySoundEx("weapon/concretehit","SoundSlot6")
		"----" H 0 A_GiveInventory("ProtoManWallRush_CI")
		"----" H 0 A_GiveInventory("ProtoSmashProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain.SparkShock
		Pain.ProtoDash:
		"----" H 0 A_GiveInventory("ProtoDashProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,5,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Goto Pain+1
		Pain.BigBangStrike:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 A_GiveInventory("BigBangStrikeProtect")
		Goto Pain+1
		
		Pain.Aquaman:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Pain.AquamanCannon:
		"----" H 0 A_GiveInventory("AquamanCannonProtect")
		Goto Pain+1
		Pain.AquamanColumn:
		"----" H 0 A_ScaleVelocity(0.95)
		"----" H 0 A_GiveInventory("AquamanColumnProtect")
		goto Pain+1
		Pain.AquamanUp:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,35,1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,50,0,0)
		goto Pain+1
		Death.AquamanUp:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,35,1)
		"----" H 0 ThrustThingZ(0,280,0,0)
		goto Death
		Pain.AquamanRainbow:
		"----" H 0 A_GiveInventory("AquamanRainbowProtect")
		Goto Pain+1
		Pain.AquamanStomp:
		"----" H 0 A_SpawnItem("BaseFlinger5")
		goto Pain+1
		Death.AquamanStomp:
		"----" H 0
		goto Death.Flatten
		
		Pain.TrioFist:
		Pain.TrioUlt:
		"----" H 0 
		goto Pain+1
		Pain.TrioMain:
		"----" H 0 A_GiveInventory("DarkSwipeProtect",1)
		goto Pain+1
		Pain.TrioTornadoHold:
		"----" H 0 A_GiveInventory("GigaTornadoHoldProtect",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,30,0,1)
		goto Pain+1
		Pain.TrioThunderClaw:
		"----" H 0 A_GiveInventory("GigaThunderClawProtect",1)
		goto Pain+1
		Pain.TrioAstroCrush:
		"----" H 0 A_GiveInventory("GigaAstroCrushProtect",1)
		goto Pain+1
		Pain.TrioFlashBomb:
		"----" H 0 A_GiveInventory("GigaFlashBombProtect",1)
		goto Pain+1
		Pain.TrioFlameSword:
		"----" H 0 A_GiveInventory("GigaFlameSwordProtect",1)
		goto Pain+1
		Pain.TrioHomingSniper:
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("GigaHomingSniperProtect",1)
		goto Pain+1
		Pain.TrioIceWave:
		"----" H 0 A_GiveInventory("GigaIceWaveProtect",1)
		goto Pain+1
		Pain.TrioWaterBalloon:
		"----" H 0 A_GiveInventory("GigaWaterBalloonProtect",1)
		goto Pain+1
		Pain.TrioDarkCharge:
		"----" H 0 A_spawnItemEx("DarkChargeFlinger")
		"----" H 0 A_GiveInventory("DarkChargeProtect",1)
		goto Pain+1
		Death.TrioTornadoHold:
		"----" H 0 ThrustThingZ(0,60,0,0)
		Goto Death
		Death.TrioThunderClaw:
		"----" H 0
		Goto Death.ElectricDeath
		Death.TrioFlameSword:
		"----" H 0
		Goto Death.MagmamanUlt
		Death.TrioIceWave:
		"----" H 0
		Goto Death.FrostmanFreeze
		Death.TrioAstroCrush:
		Death.TrioFlashBomb:
		Death.TrioHomingSniper:
		Death.TrioWaterBalloon:
		"----" H 0
		goto Death.Gib
		Death.TrioDarkCharge:
		"----" H 0 ThrustThingZ(0,30,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		Death.TrioUlt:
		"----" H 0 A_GiveInventory("DarkEclipseCannonFlash",1)
		"----" H 0 A_PlaySoundEx("misc/chat_yell","SoundSlot6")
		"----" H 0 A_SpawnItemEx("TrioSkullEnergyVanish",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)
		"----" HHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("TrioSkullEnergyFX",0,0,32,Random(5,10),0,Random(-10,10),Random(0,360),SXF_TRANSFERTRANSLATION)
		goto Death.Gib

		Pain.BassBusterVC:
		Pain.BassBusterVCUlt:
		"----" H 0
		Goto Pain+1
		Pain.BassCrescentKick:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("CrescentKickProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.BassCometDash:
		"----" H 0 A_GiveInventory("CometDashProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.BassRocketBuster:
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Goto Pain+1
		Death.BassCrescentKick:
		"----" H 0 ThrustThingZ(0,50,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death
		Death.BassBusterVCUlt:
		Death.BassCometDash:
		Death.BassRocketBuster:
		"----" H 0
		Goto Death
		
		Pain.MagicMan:
		Pain.MagicManBallUlt:
		Pain.MagicManDoveUlt:
		"----" H 0
		Goto Pain+1
		Pain.MagicManRomper:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("RobbedBolts",0,0,32,Random(-10,10),0,Random(5,10),Random(0,360),SXF_TRANSFERTRANSLATION)
		Goto Pain+1
		Pain.MagicManCardB:
		"----" H 0 A_GiveInventory("MagicCardBProtect",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,31,1)
		goto MagicManCardAfter
		Pain.MagicManCard:
		"----" H 0 A_GiveInventory("MagicCardProtect",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,30,1)
		MagicManCardAfter:
		"----" H 0 A_GiveInventory("PainMagicM_CardHit",1)
		Goto Pain+1
		Pain.MagicManCard2B:
		"----" H 0 A_GiveInventory("MagicCardProtect2B",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,31,1)
		goto MagicManCard2After
		Pain.MagicManCard2:
		"----" H 0 A_GiveInventory("MagicCardProtect2",1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,30,1)
		MagicManCard2After:
		"----" H 0 A_GiveInventory("PainMagicM_CardHit2",1)
		//%12.5 Ult
		"----" H 0 A_TakeInventory("ShortUltimateAmmo",8)
		"----" H 0 A_TakeInventory("MediumShortUltimateAmmo",15)
		"----" H 0 A_TakeInventory("MediumUltimateAmmo",23)
		"----" H 0 A_TakeInventory("MediumLongUltimateAmmo",30)
		"----" H 0 A_TakeInventory("LongUltimateAmmo",38)
		"----" H 0 A_TakeInventory("VeryLongUltimateAmmo",45)
		"----" H 0 A_TakeInventory("LongestUltimateAmmo",53)
		"----" H 0 A_TakeInventory("MaximumUltimateAmmo",60)
		Goto Pain+1 
		Pain.MagicManTrain:
		"----" H 0 A_GiveInventory("MagicManTrainProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1 
		Death.MagicManRomper:
		"----" HHHHHHHHHH 0 A_SpawnItemEx("RobbedBolts",0,0,32,Random(-10,10),0,Random(5,10),Random(0,359),1)
		Goto Death.Gib
		Death.MagicManCardB:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,31,1)
		goto MagicManCardAfterDeath
		Death.MagicManCard:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,30,1)
		MagicManCardAfterDeath:
		"----" H 0 A_GiveInventory("PainMagicM_CardHit",1)
		Goto Death
		Death.MagicManCard2B:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,31,1)
		goto MagicManCard2AfterDeath
		Death.MagicManCard2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,30,1)
		MagicManCard2AfterDeath:
		"----" H 0 A_GiveInventory("PainMagicM_CardHit2",1)
		goto Death
		Death.MagicManCard2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,30,1)
		"----" H 0 A_GiveInventory("PainMagicM_CardHit2",1)
		Goto Death
		MagicGlove:
		"####" H 0 A_Jump(218,"MagicManUltAfter")
		"####" H 0 A_GiveInventory("NoSpeed",1)
		"####" H 0 A_SpawnItemEx("MagicBoxingGlove")
		"####" "#" 8 A_ChangeVelocity(0,0,40,CVF_RELATIVE|CVF_REPLACE)
		goto Death.Gib
		Death.MagicManBallUlt:
		Death.MagicManDoveUlt:
		Death.MagicManTrain:
		"----" H 0 A_GiveInventory("MagicCheerHandler",1)
		"----" H 0 A_CheckFloor("MagicGlove")
		MagicManUltAfter:
		"----" H 0 A_Jump(256,"ConfettiDeathRM","CardDeathRM","BirdDeathRM","Death.MagicShowDeath1","Death.MagicShowDeath2","Death.MagicShowDeath3","Death.MagicShowDeath4","Death.MagicShowDeath5")
		ConfettiDeathRM:
		"----" H 0 A_SpawnItemEx("ConfettiSpawner", 0, 0, 32)
		Goto MagicManDeathCont
		CardDeathRM:
		"----" H 0 A_SpawnItemEx("CardSpawner", 0, 0, 32)
		Goto MagicManDeathCont
		BirdDeathRM:
		"----" H 0 A_SpawnItemEx("DoveSpawner", 0, 0, 32)
		Goto MagicManDeathCont
		MagicManDeathCont:
		"----" H 0
		Goto Death.Gib
		Death.MagicShowDeath1:
		M0TG A 0 A_GiveInventory("FakeWilySpawner",1)
		M0TG A 0 A_GiveInventory("NoSpeed",1)
		M0TG A 0 A_SetGravity(0.0)
		M0TG A 0 A_Stop
		M0TG AAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_PlaySoundEx("*death","Body")
		M0TG A 0 A_StopSound(CHAN_BODY)
		goto Death.NoFX
		Death.MagicShowDeath2:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("misc/partyball","Body")
		"----" H 0 A_PlaySoundEx("weapon/shad_poof","SoundSlot3")
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ShadowPoof2",random(0,40),0,random(-40,80),0,0,0,random(0,359))
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("MagicDeathRomper",random(0,32),0,random(0,64),random(1,9),0,random(4,11),random(0,359),1,64)
		goto Death.NoFX
		Death.MagicShowDeath3:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("weapon/magicbuzzer","Body")
		"----" H 0 A_PlaySoundEx("weapon/shad_poof","SoundSlot3")
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ShadowPoof2",random(0,40),0,random(-40,80),0,0,0,random(0,359))
		BBAM A 0 A_GiveInventory("NoSpeed",1)
		BBAM A 0 A_SetGravity(0.0)
		BBAM A 40 A_Stop
		BBAM A 0 A_SpawnItemEx("TimeStopGFX",8,-4,60)
		BBAM F 35 A_PlaySoundEx("misc/gammadeath1","Body")
		BBAM F 10 A_PlaySoundEx("item/skulllaugh","Auto",0,2)
		BBAM F 10 A_PlaySoundEx("weapon/magiclaugh2","Auto",0,2)
		BBAM F 10 A_PlaySoundEx("weapon/magiclaugh3","Auto",0,2)
		BBAM F 10 A_PlaySoundEx("weapon/magiclaugh1","Auto",0,2)
		BBAM H 20
		BBAM H 1 A_ChangeVelocity(0,2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_ChangeVelocity(0,-2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_Stop
		BBAM H 1 A_ChangeVelocity(0,2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_ChangeVelocity(0,-2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_Stop
		BBAM H 1 A_ChangeVelocity(0,2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_ChangeVelocity(0,-2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_Stop
		BBAM H 1 A_ChangeVelocity(0,2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_ChangeVelocity(0,-2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_Stop
		BBAM H 1 A_ChangeVelocity(0,2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_ChangeVelocity(0,-2,0,CVF_RELATIVE|CVF_REPLACE)
		BBAM H 1 A_Stop
		Goto Death.Gib
		Death.MagicShowDeath4:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("misc/partyball","Body")
		"----" H 0 A_PlaySoundEx("weapon/shad_poof","SoundSlot3")
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ShadowPoof2",random(0,40),0,random(-40,80),0,0,0,random(0,359))
		"----" HHHHHHHHHH 0 A_SpawnItemEx("MagicDeathBalloon",random(0,16),0,random(8,40),random(0,5),0,random(-1,2),random(0,359),1)
		goto Death.NoFX
		Death.MagicShowDeath5:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("misc/partyball","Body")
		"----" H 0 A_PlaySoundEx("weapon/shad_poof","SoundSlot3")
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ShadowPoof2",random(0,40),0,random(-40,80),0,0,0,random(0,359))
		"----" H 0 A_SpawnItemEx("MagicMonopellan",0,0,0,0,0,0,0,1)
		goto Death.NoFX
		
		Pain.GroundManSpreadDrill:
		"----" H 0 A_ScaleVelocity(0.85)
		"----" H 0 A_PlaySoundEx("weapon/spreaddrillhit","SoundSlot5")
		"----" H 0 A_GiveInventory("GroundManSpreadDrillProtect",1)
		Goto Pain+1
		Pain.GroundManUltDrill:
		"----" H 0 A_PlaySoundEx("weapon/spreaddrillhit","SoundSlot5")
		"----" H 0 A_GiveInventory("GroundManUltDrillProtect",1)
		Goto Pain+1
		Pain.GroundManTank:
		"----" H 0 A_PlaySoundEx("weapon/spreaddrillhit","SoundSlot5")
		"----" H 0 A_GiveInventory("TankFormProtect",1)
		Goto Pain+1
		Pain.GroundManUltBody:
		"----" H 0 A_GiveInventory("GroundManUltBodyProtect",1)
		Goto Pain+1
		Pain.GroundManUltDrill:
		"----" H 0 A_GiveInventory("GroundManUltDrillProtect",1)
		Goto Pain+1
		Death.GroundManTank:
		Death.GroundManUltBody:
		Death.GroundManUltDrill:
		"----" H 0
		Goto Death.Gib
		
		Pain.PirateManMine1: 
		"----" H 0 A_GiveInventory("PirateMineProtect1",1)
		PirateLaunch:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,50,0,0)
		"----" H 0 A_GiveInventory("PiratemanAntiJuggle")
		Goto Pain+1
		Pain.PirateManMine2: 
		"----" H 0 A_GiveInventory("PirateMineProtect2",1)
		goto PirateLaunch
		Pain.PirateManMine3: 
		"----" H 0 A_GiveInventory("PirateMineProtect3",1)
		goto PirateLaunch
		Pain.PirateManMine4: 
		"----" H 0 A_GiveInventory("PirateMineProtect4",1)
		goto PirateLaunch
		Pain.PirateManMine5: 
		"----" H 0 A_GiveInventory("PirateMineProtect5",1)
		goto PirateLaunch
		Pain.PirateManMine6: 
		"----" H 0 A_GiveInventory("PirateMineProtect6",1)
		goto PirateLaunch
		Pain.PirateManMine7: 
		"----" H 0 A_GiveInventory("PirateMineProtect7",1)
		goto PirateLaunch
		Pain.PirateManMine8: 
		"----" H 0 A_GiveInventory("PirateMineProtect8",1)
		goto PirateLaunch
		Pain.PirateManMineDirect1: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect1",1)
		goto Pain+1
		Pain.PirateManMineDirect2: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect2",1)
		goto Pain+1
		Pain.PirateManMineDirect3: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect3",1)
		goto Pain+1
		Pain.PirateManMineDirect4: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect4",1)
		goto Pain+1
		Pain.PirateManMineDirect5: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect5",1)
		goto Pain+1
		Pain.PirateManMineDirect6: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect6",1)
		goto Pain+1
		Pain.PirateManMineDirect7: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect7",1)
		goto Pain+1
		Pain.PirateManMineDirect8: 
		"----" H 0 A_GiveInventory("PirateMineDirectProtect8",1)
		goto Pain+1
		Pain.PirateManBubble: 
		"----" H 0 A_SpawnItemEx("PirateBubbleFlinger")
		"----" H 0 A_GiveInventory("PirateBubbleProtect",1)
		Goto Pain+1
		Pain.PirateManBubbleUlt: 
		"----" H 0 A_GiveInventory("PirateManWallRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_GiveInventory("PirateBubbleProtect",1)
		Goto Pain+1
		Death.PirateManMine1:
		Death.PirateManMine2:
		Death.PirateManMine3:
		Death.PirateManMine4:
		Death.PirateManMine5:
		Death.PirateManMine6:
		Death.PirateManMine7:
		Death.PirateManMine8:
		"----" H 0
		Goto Death.Gib
		Death.PirateManBubble:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death
		Death.PirateManBubbleUlt:
		"----" H 0
		Goto Death.UranusThrow

		Pain.DuoV:
		"----" H 0
		Goto Pain+1 
		Pain.DuoVTackle:
		"----" H 0 A_GiveInventory("ShoulderTackleProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		Goto Pain+1
		Pain.DuoVEnergyFistCenter:
		"----" H 0 A_GiveInventory("DuoWallRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Pain+1
		Pain.DuoVEnergyFist:
		"----" H 0 A_GiveInventory("DuoShockwavePartProtect",1)
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Pain+1
		Pain.DuoVComet: 
		"----" H 0 A_GiveInventory("JusticeCometProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Goto Pain+1
		Death.DuoVTackle:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death
		Death.DuoVEnergyFist:
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Death
		Pain.DuoVEnergyFistCenterUlt:
		"----" H 0 A_GiveInventory("DuoWallRush_CIUlt")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Pain+1
		
		Pain.TornadoMan:
		Pain.TornadoManUlt:
		"----" H 0 ThrustThingZ(0, 35, 0, 0)
		Goto Pain+1 
		Pain.TornadoManAlt:
		"----" H 0 A_GiveInventory("TornadoManAltProtect",1)
		"----" H 0 ThrustThingZ(0, 70, 0, 0)
		"----" H 0 A_GiveInventory("TornadoManAntiJuggle")
		Goto Pain+1
		Pain.TornadoManFlight:
		"----" H 0
		Goto Pain+1
		Pain.TornadoManUlt2:
		"----" H 0 A_GiveInventory("MaxTornadoProtect",1)
		"----" H 0 ThrustThingZ(0, 10, 0, 0)
		Goto Pain+1
		Pain.TornadoManM1:
		"----" H 0 A_GiveInventory("TornadoManM1Protect",1)
		"----" H 0 A_CheckFloor("Pain.TornadoManM1Ground")
		"----" H 0 ThrustThingZ(0, 0, 0, 0)//A_Stop
		"----" H 0 A_ScaleVelocity(0.5)
		Goto Pain+1
		
		Pain.TornadoManM1Ground:
		"----" H 0 A_ScaleVelocity(0.75)//ThrustThingZ(0, 30, 0, 0)
		goto Pain+1
		Death.TornadoManAlt:
		Death.TornadoManFlight:
		"----" H 0
		Goto Death.Gib
		Death.TornadoMan:
		Death.TornadoManM1:
		"----" H 0 ThrustThingZ(0, 75, 0, 0)
		Goto Death
		Death.TornadoManUlt:
		Death.TornadoManUlt2:
		"----" H 0 A_SetAngle(random(0,359))
		goto Death.UranusThrow
		
		Pain.JewelMan:
		Pain.JewelManUlt:
		"----" H 0
		Goto Pain+1
		Pain.JewelManHug:
		"----" H 0 A_GiveInventory("JewelManHugProtect",1)
		Goto Pain+1
		Pain.JewelManAlt:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("CariCarryRMProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		"----" H 0 ThrustThingZ(0, 70, 0, 0)
		Goto Pain+1
		Pain.JewelManUlt2:
		"----" H 0 ThrustThingZ(0, 40, 0, 0)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked4",1)
		Goto Pain+1
		Death.JewelManAlt:
		Death.JewelManUlt:
		Death.JewelManUlt2:
		"----" H 0
		Goto Death.Gib

		Pain.Dynamoman: 
		"----" H 0
		Goto Pain+1
		Pain.PlasmaPlus:
		"----" H 0 A_GiveInventory("PlasmaPlusProtect",1)
		Pain.DynamoShocker:
		Pain.DynamoShockerUlt:
		"----" H 0 A_ScaleVelocity(0.25)
		Goto Pain+1
		Death.DynamoUltStun:
		Death.DynamoShocker: 
		"----" H 0
		goto Death.ElectricDeath
		
		Death.DynamoShockerUlt:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,23,1)
		goto Death.ElectricDeath
		Pain.DynamoUltStun:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked6",1)
		Goto Pain+1
		Pain.DynamoM2Stun:
		"----" H 0 A_GiveInventory("DynamoM2StunProtect",1)
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		
		Pain.SpringMan:
		"----" H 0
		Goto Pain+1
		Pain.SpringManUlt:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		Goto Pain+1
		Pain.SpringManSpin:
		Pain.SpringManSpinUlt:
		"----" H 0 A_GiveInventory("SpringSpinProtect",1)
		Goto Pain+1
		Pain.SpringManFist:
		Pain.SpringManFistUlt:
		"----" H 0 A_SpawnItemEx("SpringManFlinger")
		Goto Pain+1
		Pain.SpringManSlam:
		Pain.SpringManSlamUlt:
		"----" H 0 ThrustThingZ(0, 40, 0, 0)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_SpawnItemEx("SpringManFlinger")
		"----" H 0 A_TakeInventory("SpringGrabProtect",1)
		"----" H 0 A_TakeInventory("TempPitProtect_P",1)
		Goto Pain+1
		Pain.SpringManElectricity:
		"----" H 0 A_GiveInventory("SpringElectricityProtect",1)
		Goto Pain+1
		Death.SpringManSpin:
		Death.SpringManFist:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0,30,0,0)
		Goto Death.Knockback
		Death.SpringManSlam:
		"----" H 0
		Goto Death.PunkSuzy
		Death.SpringManUlt:
		Death.SpringManSpinUlt:
		Death.SpringManFistUlt:
		Death.SpringManSlamUlt:
		"----" H 0
		Goto Death.Gib
		Death.SpringManElectricity:
		"----" H 0
		Goto Death.ElectricDeath

		Pain.ShadeMan:
		Pain.ShadeMan2:
		Pain.ShadeManDrain:
		"----" H 0
		Goto Pain+1
		Pain.ShadeManAlt:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("DontStunMeYouStupidBish",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" H 0 A_JumpIfInventory("ShadeManStareStunned",1,"RemoveStun")
		"----" H 0 A_PlaySound("weapon/centaurflash")
		"----" H 0 A_GiveInventory("InflictStoneStareDebuff",1)
		"----" H 0 A_GiveInventory("StoneStareStunActivator",1)
		Goto Pain+3
		RemoveStun:
		"----" H 0 A_GiveInventory("DontStunMeYouStupidBish")
		"----" H 0 A_GiveInventory("StoneStareUnstun",1)
		"----" H 1 A_Jump(256,"ClassPain")
		wait
		Death.ShadeMan2:
		"----" H 0
		Goto Death.Gib

		Pain.VANPookin:
		"----" H 0
		Goto Pain+1
		Pain.VANPookinFountain:
		"----" H 0 A_GiveInventory("GreenFountainProtect",1)
		Goto Pain+1
		Pain.VANPookinSlam: 
		"----" H 0 A_GiveInventory("PumpkinSlamProtect",1)
		Goto Pain+1
		Pain.VANPookinSlammed:
		"----" H 0 A_GiveInventory("VANPookinQuakeProtect",1)
		"----" H 0 ThrustThingZ(0, 20, 0, 0)
		Goto Pain+1
		Pain.VANPookinSpawn:
		Pain.VANPookinCrush:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.VANPookinRam:
		"----" H 0 A_GiveInventory("RunawayPumpkinProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Death.VANPookin:
		Death.VANPookinFountain:
		Death.VANPookinSlam:
		Death.VANPookinSlammed:
		"----" H 0
		Goto Death.Gib
		Death.VANPookinSpawn:
		Death.VANPookinRam:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0, 50, 0, 0)
		Goto Death
		Death.VANPookinCrush:
		"----" H 0
		Goto Death.PunkSuzy
		
		Pain.SlashMan:
		"----" H 0 A_SpawnItemEx("SlashManClawHitFX")
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		Goto Pain+1
		Pain.SlashMan2:
		"----" H 0 A_SpawnItemEx("SlashManClawHitFX")
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		"----" H 0 A_SpawnItemEx("SlashedFragment",0,0,Random(24,40),3,0,3,Random(0,359),SXF_TRANSFERTRANSLATION)
		Goto Pain+1
		Pain.SlashManAlt:
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		"----" H 0 A_GiveInventory("RollingSlashProtect",1)
		Goto Pain+1
		Pain.SlashManDash:
		Pain.SlashManDash2:
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		"----" H 0 A_GiveInventory("SlashDashProtect",1)
		Goto Pain+1
		Pain.SlashManGoo:
		"----" H 0 A_JumpIfInventory("IAmGooped",1,"Pain.SlashManGooFloor")
		"----" H 0 A_SpawnItemEx("GooCapsuleDebuff")
		Goto Pain+1
		Pain.SlashManGooFloor:
		"----" H 0
		Goto Pain+1
		Pain.SlashManGoo2:
		"----" H 0 A_JumpIfInventory("IAmGooped",1,"Pain.SlashManGooFloor")
		"----" H 0 A_SpawnItemEx("GooCapsuleDebuff2") 
		Goto Pain+1
		Pain.SlashManGoo2Floor:
		"----" H 0 A_SpawnItemEx("GooCapsuleDebuff2") 
		"----" H 0 A_JumpIfInventory("IAmGooped",1,"Pain.SlashManGooFloor")
		"----" H 0 A_SpawnItemEx("MovementFreezeSlash")
		Goto Pain+1
		Death.SlashMan2:
		Death.SlashManAlt:
		Death.SlashManDash:
		Death.SlashManDash2:
		"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
		Goto Death.Gib
		
		Pain.FrostmanWave:
		"----" H 0 A_GiveInventory("FrostmanWaveProtect",1)
		goto Pain+1
		Pain.FrostmanFreeze:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("FrostmanWaveProtect",1)
		"----" H 0 A_Stop
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostFreezeFX")
		//"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.Frostman")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Frostman")
		"----" H 0 A_SpawnItemEx("FrostFreezeWatcher")
		"----" H 0 A_GiveInventory("FrostFreezeFlag")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,36,1)
		goto Pain+1
		Pain.PenpenFrostman:
		"----" H 0 A_GiveInventory("PenpenFrostmanProtect")
		goto Pain+1
		Death.FrostmanFreeze:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_GiveInventory("FreezeVision",1)
		"----" H 0 A_GiveInventory("NoSpeed",1)
		"----" H 0 A_SetGravity(0.0)
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("IsDead",1)
		"----" H 30 ACS_ExecuteAlways(971,0,6262)
		"----" HHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostAir",random(8,32),0,random(0,70),random(14,20),0,random(-9,9),random(0,359))
		"----" HHHHHH 0 A_SpawnItemEx("FrostDebris1",32,0,random(0,32),random(7,16),0,random(7,21),random(0,359))
		"----" HHHHHH 0 A_SpawnItemEx("FrostDebris2",32,0,random(0,32),random(7,16),0,random(7,21),random(0,359))
		"----" H 0 A_PlaySoundEx("weapon/frostbreak","SoundSlot7")
		goto Death.NoFX
		Death.FrostSmash2:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostAir",random(8,32),0,random(0,70),random(14,20),0,random(-9,9),random(0,359))
		"----" HHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostDebris1",32,0,random(0,32),random(12,23),0,random(9,25),random(0,359))
		"----" HHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostDebris2",32,0,random(0,32),random(127,23),0,random(9,25),random(0,359))
		"----" H 0 A_PlaySoundEx("weapon/frostkill","SoundSlot7")
		goto Death.NoFX
		Pain.FrostSmash:
		Pain.FrostSmash2:
		Pain.FrostUlt:
		"----" H 0 A_Stop
		goto Pain
		Death.FrostSmash:
		"----" H 0 A_Stop
		goto Death
		Death.FrostUlt:
		Death.FrostPunch:
		"----" H 0
		Goto Death.Gib
		Pain.FrostPunch:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger8")
		"----" H 0 A_GiveInventory("FrostPunchProtect",1)
		goto Pain+1
		
		Pain.DrWily:
		Pain.DrWilyPF:
		Pain.DrWilyUltElectricity:
		"----" H 0
		Goto Pain+1
		Pain.DrWily2:
		"----" H 0 A_GiveInventory("WilyShot2Protect",1)
		Goto Pain+1
		Pain.DrWily3:
		"----" H 0 A_GiveInventory("WilyShot3Protect",1)
		Goto Pain+1
		Pain.DrWilyPF2:
		"----" H 0 A_GiveInventory("WilyPlasmaSphereProtect",1)
		Goto Pain+1
		Pain.DrWilyPowerShot:
		"----" H 0 ThrustThingZ(0,80,0,0)
		Goto Pain+1
		Pain.DrWilyUltFire:
		"----" H 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.DrWilyUltFireBurning:
		"----" HHHHH 0 A_SpawnItemEx("TurbomanWheelBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HHHHH 0 A_SpawnItemEx("TurbomanScorchBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.DrWilyUltIce:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.DrWily")
		"----" H 0 A_SpawnItemEx("MovementFreezeWily")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		Goto Pain+2
		Pain.DrWilyFloorLightning:
		"----" H 0 A_GiveInventory("WilyFloorLightningProtect",1)
		Goto Pain+1
		Death.DrWily:
		Death.DrWily2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,37,1)
		Goto Death
		Death.DrWily3:
		Death.DrWilyPF:
		Death.PressnQuake:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,37,1)
		Goto Death.Gib
		Death.DrWilyPF2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,37,2)
		goto Death.AcidmanUlt
		Death.DrWilyPowerShot:
		"----" H 0 ThrustThingZ(0, 120, 0, 0)
		Goto Death
		Death.DrWilyMissile:
		"----" H 0
		Goto Death.Gib
		Death.DrWilyUltFire: 
		Death.DrWilyUltFireBurning:
		"----" H 0
		goto Death.MagmamanUlt
		Death.DrWilyUltIce:
		"----" H 0
		goto Death.ColdFreeze
		Death.DrWilyUltElectricity:
		Death.DrWilyFloorLightning:
		"----" H 0
		Goto Death.ElectricDeath
		Pain.DrWilyMissile:
		"----" H 0 A_ScaleVelocity(0.1)
		Goto Pain+1
		Pain.DrWilyMissile2:
		"----" H 0
		Goto Pain+1
		
		Pain.MicroDevilAlt:
		"----" H 0 A_GiveInventory("SplittingAttackProtect",1)
		Goto Pain+1
		Pain.MicroDevilTF:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.MicroDevilUlt:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("DevilTrainProtect",1)
		Goto Pain+1
		Death.MicroDevilAlt:
		"----" H 0
		Goto Death.Gib
		Death.MicroDevilTF:
		"----" H 0
		Goto Death.PunkSuzy
		Death.MicroDevilUlt:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0, 80, 0, 0)
		Goto Death
		Pain.MicroDevil:
		"----" H 0
		Goto Pain+1

		Pain.YellowDevilStrong:
		"----" H 0 A_GiveInventory("DevilRayProtect",1)
		Goto Pain+1
		Pain.YellowDevilTF:
		"----" H 0 A_GiveInventory("YellowDevilRecompositionProtect",1)
		Goto Pain+1
		Death.YellowDevilStrong:
		Death.YellowDevilTF:
		Death.YellowDevilUlt:
		"----" H 0
		Goto Death.Gib

		Pain.ClownMan:
		"----" H 0 A_PlaySoundEx("weapon/ClownManClawHit","Auto")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		Pain.ClownMan2:
		"----" H 0 A_GiveInventory("ThunderClawRMProtect",1)
		Goto Pain+1
		Pain.ClownManAlt:
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("ThunderClawArmsProtect",1)
		"----" H 0 A_GiveInventory("CaltropNoMobility",1)
		Goto Pain+1
		Pain.ClownManAlt2:
		"----" H 0 A_GiveInventory("ThunderCarnivalProtect",1)
		Goto Pain+1
		Pain.ClownManAlt2B:
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Goto Pain+1
		Pain.ClownManUlt:
		"----" H 0 A_GiveInventory("SisiRollProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger8")
		Goto Pain+1
		Pain.ClownManAltB:
		"----" H 0 ThrustThingZ(0, 35, 0, 0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("ThunderClawArmsProtect",1)
		Goto Pain+1
		Death.ClownMan:
		Death.ClownManAlt:
		Death.ClownManAltB:
		"----" H 0
		Goto Death.ElectricDeath
		Death.ClownManAlt2:
		Death.ClownManAlt2B:
		"----" H 0
		Goto Death.Gib
		Death.ClownManUlt:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0, 40, 0, 0)
		Goto Death

		Pain.SwordMan:
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_GiveInventory("FlameSwordRMProtect",1)
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.SwordMan2:
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.SwordManAlt:
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_GiveInventory("FireSlashProtect",1)
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.SwordManTF:
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_GiveInventory("DividingStrikeProtect",1)
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.SwordManTFFoot:
		"----" H 0 A_GiveInventory("DividingStrikeProtectFoot",1)
		"----" H 0 A_ScaleVelocity(0.9)
		Goto Pain+1
		
		Pain.SwordManTF2:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_GiveInventory("SwordManWallRush_CI")
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		Goto Pain+1
		Pain.SwordManUlt:
		"----" H 0 ThrustThingZ(0,24,0,0)
		"----" H 0 A_PlaySound("weapon/flamehit",1,0.6)
		"----" H 0 A_SpawnItemEx("FlameSwordBitRM",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_GiveInventory("FireCycloneProtect",1)
		Goto Pain+1
		Death.SwordManAlt:
		"----" H 0
		Goto Death.Gib
		Death.SwordManAlt2:
		"----" H 0
		Goto Death.PunkSuzy
		Death.SwordManTF2:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0, 40, 0, 0)
		Goto Death
		Death.SwordManUlt:
		"----" H 0
		Goto Death.MagmamanUlt

		Pain.GoldenAirman:
		"----" H 0 A_GiveInventory("GoldenAirShooterProtect",1)
		Goto Pain+1
		Pain.GoldenAirman2:
		"----" H 0 A_GiveInventory("GoldenVacuumShotProtect",1)
		Goto Pain+1
		Pain.GoldenAirman3:
		"----" H 0 ThrustThingZ(0, 30, 0, 0)
		"----" H 0 A_GiveInventory("GoldenGigaTornadoProtect",1)
		Goto Pain+1
		Pain.GoldenAirmanTornado:
		"----" H 0 A_GiveInventory("GoldenAirmanTornadoProtect",1)
		Goto Pain+1
		Pain.GoldenAirManAlt:
		"----" H 0 A_GiveInventory("GoldenAirWallProtect",1)
		Goto Pain+1
		Pain.GoldenAirmanTF:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_GiveInventory("OmegaAirRushProtect",1)
		"----" H 0 A_PlaySoundEx("weapon/omegahit1","SoundSlot6")
		"----" H 0 A_SpawnItemEx("HitFX",Random(-40,40),Random(-40,40),Random(0,64))
		"----" H 0 A_Stop
		Goto Pain+1
		Pain.GoldenAirmanTF2:
		"----" H 0 A_GiveInventory("AirTFHit",1)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_PlaySoundEx("weapon/omegahit1","SoundSlot6")
		"----" H 0 A_SpawnItemEx("HitFX",Random(-40,40),Random(-40,40),Random(0,64))
		"----" H 0 A_Stop
		goto Pain+1
		Pain.GoldenAirmanTF3:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("AirTFHit",1)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_PlaySoundEx("weapon/omegahit2","SoundSlot6")
		"----" H 0 A_SpawnItemEx("AirHitFX",0,0,32)
		"----" H 0 ThrustThingZ(0,70,0,0)
		goto Pain+1
		Death.GoldenAirmanTF:
		Death.GoldenAirmanTF2:
		Death.GoldenAirmanTF3:
		"----" H 0 A_PlaySoundEx("weapon/omegahit2","Auto")
		"----" H 0 A_SpawnItemEx("AirHitFX",0,0,32)
		Death.GoldenAirman2:
		Death.GoldenAirmanTornado:
		Death.GoldenAirmManUlt:
		"----" H 0
		Goto Death.Gib
		Death.GoldenAirman3:
		"----" H 0 ThrustThingZ(0, 60, 0, 0)
		Goto Death
		
		Pain.JunkMan:
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Pain.JunkManCube:
		"----" H 0 A_ScaleVelocity(0.7)
		goto Pain+1
		Pain.JunkManCubeForm:
		"----" H 0 //A_JumpIfInventory("DarkCannonDebuff",1,"Pain.JunkmanCubeForm2")
		goto Pain+1
		Pain.JunkManCubeForm2:
		//"----" H 0 A_SpawnItemEx("JunkCubeGrabWarper")
		"----" H 0 //A_SetTranslucent(0.0)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,50,1)
		goto Pain+1
		
		Death.JunkManCube:
		Death.JunkManCubeForm:
		"----" H 0
		goto Death.Gib
		Pain.JunkQuake:
		"----" H 0 A_GiveInventory("JunkQuakeProtect", 1)
		"----" H 0 A_Stop
		"----" H 0 ThrustThingZ(0,4,0,0)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.JunkStomp:
		"----" H 0 A_GiveInventory("JunkStompProtect", 1)
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("BaseFlinger5")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.JunkManShield:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("JunkCaptureWatcher")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX1")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX2")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX3")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX4")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX5")
		"----" H 0 A_SpawnItemEx("JunkCaptureFX6")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,38,1)
		goto Pain+1
		
		Pain.JoeBuster:
		Pain.GunnerJoe:
		Pain.JoeEject:
		"----" H 0
		goto Pain+1
		Death.JoeBuster:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,39,1)
		goto Death
		Pain.JoeGrenade:
		"----" H 0 A_ScaleVelocity(0.8)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,41,1)
		goto Pain+1
		Death.JoeGrenade:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,39,1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,41,1)
		goto Death.Gib
		Pain.SniperArmorWalk:
		"----" H 0 A_GiveInventory("SniperArmorWalkProtect")
		"----" H 0 A_ScaleVelocity(0.9)
		goto Pain+1
		Pain.SniperArmorJump:
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Death.SniperArmorWalk:
		Death.SniperArmorJump:
		Death.JoeEject:
		Death.GunnerJoe:
		"----" H 0
		goto Death.Gib
		Pain.JoeBike2:
		"----" H 0 A_GiveInventory("JoeBike2Protect")
		Pain.JoeBike:
		"----" H 0 A_ScaleVelocity(0.7)
		goto Pain+1
		Death.JoeBike:
		"----" H 0
		goto Death.WavemanBike
		Death.JoeBike2: //Knockback death doesn't work here due to the damage :(
		"----" H 0
		goto Death.Gib
		Pain.JoeTruckGrill:
		"----" H 0 A_GiveInventory("JoeTruckGrillProtect")
		goto Pain+1
		Pain.JoeTruck:
		"----" H 0 A_GiveInventory("JoeTruckProtect")
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Pain.JoeTruckReverse:
		"----" H 0 A_GiveInventory("JoeTruckProtect")
		"----" H 0 A_ScaleVelocity(0.8)
		goto Pain+1
		Death.JoeTruckGrill:
		Death.JoeTruck:
		"----" H 0
		goto Death.Gib
		Death.JoeTruckReverse:
		"----" H 0
		goto Death.Flatten
		Pain.ApacheJoe:
		"----" H 0 A_SpawnItemEx("ApacheBurnFX1",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" H 0 A_SpawnItemEx("ApacheBurnFX2",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Pain.ApacheJoeBurn:
		"----" HH 0 A_SpawnItemEx("ApacheBurnFX1",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		"----" HH 0 A_SpawnItemEx("ApacheBurnFX2",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
		goto Pain+1
		Death.ApacheJoe:
		Death.ApacheJoeBurn:
		"----" H 0
		goto Death.MagmamanUlt
		
		Pain.DragonFlame:
		"----" H 0 A_PlaySoundEx("heatman/burn","SoundSlot6")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.MechaDragon")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_GiveInventory("DragonBurnColor")
		"----" H 0 A_Stop
		Pain.MechaDragon:
		"----" H 0 A_ScaleVelocity(0.9)
		Goto Pain+1
		Pain.DragonBurn:
		"----" H 0 A_PlaySoundEx("heatman/burn","SoundSlot6")
		"----" HHHHHHHH 0 A_SpawnItemEx("DragonFireFX",0,0,32,random(-7,7),random(-7,7),random(-7,7),random(0,359))
		goto Pain+1
		Pain.DragonBreath:
		"----" H 0 A_ScaleVelocity(0.5)
		goto Pain+1
		Death.DragonFlame:
		Death.DragonBurn:
		Death.DragonBreath:
		"----" H 0
		goto Death.MagmamanUlt
		Pain.DragonUlt:
		"----" H 0 A_Stop
		Goto Pain+1
		Death.DragonUlt:
		"----" H 0
		goto Death.Gib
		
		Pain.MadGrinder:
		"----" H 0 A_GiveInventory("RoadRollerProtect",1)
		Goto Pain+1
		Pain.MadGrinder2:
		"----" H 0 A_GiveInventory("RoadRollerProtect2",1)
		Goto Pain+1
		Pain.MadGrinderMain:
		"----" H 0 A_SpawnItemEx("RollerSlamFlinger")
		Goto Pain+1
		Pain.MadGrinderMain2:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("RollerSlamQuakeProtect",1)
		Goto Pain+1
		Pain.MadGrinderTF:
		"----" H 0 A_GiveInventory("MohawkSawProtect",1)
		Goto Pain+1
		Death.MadGrinder:
		Death.MadGrinder2:
		"----" H 0
		goto Death.Flatten
		Death.MadGrinderMain:
		Death.MadGrinderTF:
		"----" H 0
		goto Death.Gib
		Death.MadGrinderMain2:
		"----" H 0 ThrustThingZ(0,50,0,0)
		goto Death
		Pain.MadGrinderAlt2:
		"----" H 0
		goto Pain.TurbomanBurn
		Pain.MadGrinder3:
		"----" H 0 A_GiveInventory("RollerSlamProtect",1)
		"----" H 0 A_GiveInventory("MadGrinderFloorRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,-50,0,0)
		Goto Pain+1
		Pain.MadGrinder4:
		"----" H 0 A_GiveInventory("MadGrinderShockwavePartProtect",1)
		Goto Pain+1

		Pain.HannyaNEDBomb:
		"----" H 0 A_Stop
		Goto Pain+1
		Pain.HannyaNEDLaser:
		"----" H 0 A_SpawnItemEx("HannyaNEDLaserProtect")
		Goto Pain+1
		Death.HannyaNEDBomb:
		Death.HannyaNEDLaser:
		Death.HannyaNEDMissile:
		"----" H 0
		goto Death.Gib

		Pain.WilyMachineMain1:
		"----" H 0 ThrustThingZ(0,30,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.WilyMachineMain3:
		"----" H 0 A_GiveInventory("WilyMachineLightningProtect",1)
		Goto Pain+1
		Pain.WilyMachineMain3B:
		"----" H 0 A_GiveInventory("WilyMachineLightningProtect2",1)
		Goto Pain+1
		Pain.WilyMachineSynth:
		"----" H 0 A_GiveInventory("WilyMachineLaserProtect",1)
		Goto Pain+1
		Pain.WilyMachineAlt1:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 A_GiveInventory("WilyMachineFlickProtect",1)
		"----" H 0 A_PlaySoundEx("weapon/stonehit","SoundSlot6")
		Goto Pain+1
		Pain.WilyMachineTF:
		"----" H 0 A_GiveInventory("WilyRocketProtect",1)
		Goto Pain+1
		Pain.WilyMachineUlt2:
		"----" H 0 A_GiveInventory("WilyCapsuleXShotProtect",1)
		Goto Pain+1

		Death.WilyMachineMain1:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		Death.WilyMachineMain2:
		Death.WilyMachineAlt3:
		Death.WilyMachineTF:
		Death.WilyMachineUlt1:
		Death.WilyMachineUlt2:
		"----" H 0
		goto Death.Gib
		Death.WilyMachineMain3:
		Death.WilyMachineMain3B:
		"----" H 0
		Goto Death.ElectricDeath
		Death.WilyMachineSynth:
		"----" H 0
		goto Death.Gib
		Death.WilyMachineAlt1:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 A_PlaySoundEx("weapon/stonehit","SoundSlot6")
		goto Death.Knockback
		
		Pain.RaDevil:
		"----" H 0 A_ScaleVelocity(0.95)
		goto Pain+1
		Death.RaDevil:
		Death.RaDevilWave:
		"----" H 0
		goto Death.Gib
		Pain.RaDevilSlam:
		"----" H 0 A_Stop
		goto Pain+1
		Death.RaDevilSlam:
		"----" H 0 A_Stop
		goto Death.Flatten
		Pain.RaDevilWave:
		"----" H 0 A_ChangeVelocity(momx*0.7,momy*0.7,4,CVF_RELATIVE|CVF_REPLACE)
		goto Pain+1
		
		//============ MM11 weapons
		Pain.ScrambleThunder:
		"----" H 0 A_GiveInventory("ScrambleThunderProtect",1)
		Goto Pain+1
		Pain.ChainBlast:
		Pain.AcidBarrier:
		"----" H 0
		Goto Pain+1
		Death.ChainBlast:
		"----" H 0
		Goto Death.Gib

		//============ Power Gear
		Pain.TimeSlower:
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot6")
		"----" H 0 A_GiveInventory("Slower",1)
		Goto Pain+1
		Pain.IceSlasherGear:
		"----" H 0 A_JumpIfInventory("IceSlasherGearProtect",1,"SkipThis")
		"----" H 0 A_PlaySoundEx("weapon/icefreeze","SoundSlot6")
		"----" H 0 A_GiveInventory("IceSlasherSlowed",1)
		SkipThis:
		"----" H 0
		Goto Pain+1
		Pain.HeatmanAfterBurnPillarGear:
		"----" H 0
		Goto Pain.HeatmanAfterBurnPillar
		Pain.HeatBurningGear:
		"----" H 0
		Goto Pain.HeatBurning
		Death.HeatBurningGear:
		Death.HeatmanAfterBurnPillarGear:
		"----" H 0
		Goto Death
		Pain.TimeStopperGear:
		"----" H 0 A_PlaySoundEx("misc/gammadeath1","SoundSlot5")
		"----" H 0 A_PlaySoundEx("weapon/flashstunboom","Body")
		"----" H 0 A_GiveInventory("TimeStopActivator", 1)
		Goto Pain+1
		Pain.PowerSparkShock:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked4",1)
		goto Pain+1
		Pain.MagnetMissileGear:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		Pain.ShadowBlade2:
		"----" H 0 A_GiveInventory("ShadowBlade2Protect")
		Goto Pain+1
		Pain.TopSpin2:
		"----" H 0 A_GiveInventory("TopSpin2Protect")
		Goto Pain+1
		Pain.HardKnuckleGear:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		Goto Pain+1
		Pain.HardKnuckleGearDirect:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 ThrustThingZ(0, 25, 0, 1)
		Goto Pain+1
		Pain.EnhancedFlashStopper:
		"----" H 0 
		"----" H 0 A_JumpIfInventory("BrightBlind", 1,3)
		"----" H 0 A_GiveInventory("BrightBlind",125)
		"----" H 0 ACS_ExecuteAlways(249, 0)
		"----" H 0 A_GiveInventory("FlashStopActivator", 1)
		Goto Pain+1
		Pain.RainFlushGear:
		"----" HHHHH 0 A_SpawnItemEx("ToadSteam",random(-32,32),random(-32,32),random(0,64),random(2,4),0,random(-3,3),random(0,359))
		goto Pain+1
		Pain.BigWaterWave:
		"----" H 0 ThrustThingZ(0, 70, 0, 1)
		"----" H 0 A_GiveInventory("GeyserWaveProtect",1)
		goto Pain+1
		Pain.ChargeKickGear:
		"----" H 0 ThrustThingZ(0, 50, 0, 1)
		"----" H 0 A_GiveInventory("GearChargeKickProtect",1)
		goto Pain+1
		Pain.DenserGravityHold:
		"----" H 0 A_ChangeVelocity(momx, momy, 0, CVF_REPLACE)
		Goto GravityForce4 
		Pain.KnightCrushGear:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.WindStormGear:
		"----" H 0 A_GiveInventory("WindStormHit", 1)
		"----" H 0 A_GiveInventory("GearWindStormProtect",1)
		goto Pain+1
		Pain.JunkShieldGear:
		"----" H 0 A_GiveInventory("JunkCubeProtect", 1)
		goto Pain+1
		Pain.JunkShieldGear2:
		"----" H 0 A_GiveInventory("JunkCubeProtect2", 1)
		goto Pain+1
		Pain.WildCoilGear:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		goto Pain+1
		Pain.IceWaveGear:
		"----" H 0 A_GiveInventory("IceWaveGearProtect",1)
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_Stop
		"----" HHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("FrostFreezeFX")
		"----" H 0 A_JumpIfInventory("FreezeVision",1,"Pain.IceWaveGear2")
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.IceWaveGear2")
		"----" H 0 A_SpawnItemEx("FrostFreezeWatcher")
		"----" H 0 A_GiveInventory("FrostFreezeFlag")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,36,1)
		goto Pain+1
		Pain.IceWaveGear2:
		"----" H 0 A_GiveInventory("IceWaveGearProtect",1)
		goto Pain+1
		Pain.TornadoHoldGear:
		"----" H 0 A_GiveInventory("TornadoHoldGearProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_ChangeVelocity(0,0,15,CVF_REPLACE|CVF_RELATIVE)
		goto Pain+1
		Pain.GearMegaBall:
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		goto Pain+1
		Pain.WaterBalloonGear:
		"----" H 0 A_GiveInventory("WaterBalloonGearProtect", 1)
		goto Pain+1
		Pain.ConcreteShotGear: 
		"----" H 0 A_GiveInventory("ConcreteShotGearProtect")
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("FrozenInConcreteFlag")
		"----" H 0 A_GiveInventory("ConcreteFreezer")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		goto Pain+1
		Pain.ChillSpikeGearFreeze:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ChillColdCount",1)
		"----" H 0 A_JumpIfInventory("ChillAltDoubleDamage",1,1)
		"----" H 0 A_SpawnItemEx("ChillFrozenWatcher",0)
		"----" H 0 A_GiveInventory("ChillUltFlag",1)
		"----" H 0 A_GiveInventory("ChillAltDoubleDamage",1)
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		Goto Pain+1
		Pain.ChillSpikeGear:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_GiveInventory("ChillDebuffTimer")
		"----" H 0 A_JumpIfInventory("ChillColdCount",5,"Pain")
		"----" H 0 A_JumpIfInventory("ChillColdCount",4,"Pain.ChillSpikeGearFreeze")
		"----" H 0 A_JumpIfInventory("ChillColdCount",1,"Pain.ChillSpikeGear2")
		"----" H 0 A_SpawnItemEx("ChillDebuffWatcher")
		"----" H 0 A_GiveInventory("ChillColdCount",2)
		goto Pain+1
		Pain.ChillSpikeGear2:
		"----" H 0 A_GiveInventory("ChillColdCount",2)
		goto Pain+1
		Pain.SpreadDrillGear:
		"----" H 0 A_GiveInventory("SpreadDrillGearProtect")
		goto Pain+1
		Pain.SpreadDrillGear2:
		"----" H 0 A_GiveInventory("SpreadDrillGear2Protect")
		goto Pain+1
		Pain.LightningBolt:
		"----" H 0 A_GiveInventory("LightningBoltProtect")
		goto Pain+1
		Pain.LightningBoltGear:
		"----" H 0 A_GiveInventory("LightningBoltGearProtect")
		goto Pain+1
		Pain.GrabBusterGear:
		"----" H 0 A_TakeInventory("ShortUltimateAmmo",5)
		"----" H 0 A_TakeInventory("MediumShortUltimateAmmo",10)
		"----" H 0 A_TakeInventory("MediumUltimateAmmo",15)
		"----" H 0 A_TakeInventory("MediumLongUltimateAmmo",20)
		"----" H 0 A_TakeInventory("LongUltimateAmmo",25)
		"----" H 0 A_TakeInventory("VeryLongUltimateAmmo",30)
		"----" H 0 A_TakeInventory("LongestUltimateAmmo",35)
		"----" H 0 A_TakeInventory("MaximumUltimateAmmo",40)
		goto Pain+1
		Pain.BubbleBombGear:
		"----" H 0 A_ScaleVelocity(0.8)
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		goto Pain+1
		Pain.ElectricShockGear:
		"----" H 0 A_GiveInventory("ElectricShockGearProtect")
		goto Pain+1
		Pain.GearBlackHole:
		"----" H 0 A_GiveInventory("GearBlackHoleProtect")
		goto Pain+1
		Pain.Sakugarne:
		"----" H 0 A_GiveInventory("SakugarneProtect")
		goto Pain+1
		//============ End of Power Gear	

		//============ Flings
		Pain.NapalmDash:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItem("PainNapalmFlingHit")
		Goto Pain+1
		Pain.NapalmBoost:
		"----" H 0 A_GiveInventory("NapalmBoostProtect")
		"----" H 0 A_SpawnItem("PainNapalmFlingHit")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Pain+1
		
		Death.QuickSpin:
		"----" H 0 ThrustThingZ(0,60,0,0)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,28,1)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		
		Pain.GalaxyLaunch:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0,30,0,0)
		goto Pain+1

		Death.GrenadeThird:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,0,28)
		"----" H 0 A_Recoil(40)
		"----" H 0 A_ChangeVelocity(-20,0,20,CVF_REPLACE)
		goto Death
		
		Pain.TurbomanDrive:
		"----" H 0 A_PlaySoundEx("weapon/turbocrash","SoundSlot6")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 A_GiveInventory("TurboDriveProtect")
		goto Pain+1
		Pain.TurbomanUlt:
		"----" H 0 A_PlaySoundEx("weapon/turbocrash","SoundSlot6")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 A_GiveInventory("TurboUltProtect")
		goto Pain+1

		Pain.MagnetmanPull:
		"----" H 0 A_GiveInventory("MagnetmanPullProtect")
		"----" H 0 A_PlaySoundEx("weapon/magnetmissile","SoundSlot6")
		"----" H 0 A_JumpIfInventory("MagnetAltDamage",1,"Pain.MagnetCrit")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		goto Pain+1
		Pain.MagnetCrit:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,15,1)
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 A_PlaySoundEx("classes/criticalhit","SoundSlot5")
		"----" HHHHHHHHHHHHHHHH 0 A_SpawnItemEx("MagnetManFX",random(-32,32),random(-32,32),random(0,64),random(5,8),0,random(-6,6),random(0,359))
		"----" H 0 A_TakeInventory("MagnetAltDamage")
		goto Pain+1

		Pain.ShadowmanAlt:
		"----" H 0 A_GiveInventory("ShadowmanAltProtect")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		goto Pain+1

		Pain.DarkMan1Ram:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItem("BaseFlinger3")
		"----" H 0 A_GiveInventory("DarkMan1RamProtect")
		goto Pain+1
		Pain.DarkMan1Ram2:
		"----" H 0 A_SpawnItem("BaseFlinger3")
		"----" H 0 A_GiveInventory("DarkMan1RamProtect")
		goto Pain+1
		Pain.DarkMan1Ram3:
		"----" H 0 A_SpawnItem("BaseFlinger2")
		"----" H 0 A_GiveInventory("DarkMan1RamProtect")
		goto Pain+1
		Pain.DarkMan1Ram4:
		"----" H 0 A_GiveInventory("DarkMan1WallRush_CI")
		"----" H 0 A_GiveInventory("DarkMan1RamProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain.SparkShock
		Pain.DarkMan1Ram5:
		"----" H 0 A_GiveInventory("DarkMan1WallRush_CI")
		"----" H 0 A_GiveInventory("DarkMan1RamProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger5")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain.SparkShock

		Pain.Darkman2Alt:
		"----" H 0 A_PlaySoundEx("misc/darkleap","SoundSlot6")
		"----" H 0 A_SpawnItem("BaseFlinger5")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("DarkSprintProtect")
		goto pain.SparkShock
		Death.Darkman2Alt:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death

		Pain.BusterRodGKnockback:
		"----" H 0 A_GiveInventory("BusterRodGKnockbackProtect")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		goto Pain+1

		Pain.MegaWaterSAlt:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		Pain.MegaWaterSAlt2:
		"----" H 0 A_SpawnItemEx("MegaHoseFlinger")
		Pain.MegaWaterSAlt3:
		"----" H 0 A_GiveInventory("MegaHoseProtect")
		goto Pain+1

		Pain.HyperStormHUlt:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("HSHUltWallRush_CI")
		"----" H 0 A_GiveInventory("HSHFlingProtect",1)
		"----" H 0 A_SpawnItemEx("PointBlankHyperExhaleFlinger")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain+1
		Pain.HyperStormHPointBlank:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("HSHWallRush_CI")
		"----" H 0 A_GiveInventory("HSHFlingProtect",1)
		"----" H 0 A_SpawnItemEx("PointBlankHyperExhaleFlinger")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain+1
		Death.HyperStormHPointBlank:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,18,1) //Altfire no drain period
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,2,56) //Altfire ammo
		goto Death.Knockback

		Pain.RaThorLunge:
		"----" H 0 A_GiveInventory("RaThorWallRush_CI")
		"----" H 0 A_GiveInventory("RaThorLungeProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain.SparkShock
		Death.RaThorLunge:
		"----" H 0
		goto Death.UranusThrow

		Pain.CentaurArrow1:
		"----" H 0 A_SpawnItem("BaseFlinger4")
		goto Pain+1
		Pain.CentaurArrow2:
		"----" H 0 A_SpawnItem("BaseFlinger5")
		goto Pain+1
		Pain.CentaurArrow3:
		"----" H 0 A_SpawnItem("BaseFlinger6")
		goto Pain+1
		Pain.CentaurArrow4:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		Pain.CentaurArrow5:
		"----" H 0 A_GiveInventory("CentaurWallRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		goto Pain+1
		Pain.CentaurDash:
		"----" H 0 A_GiveInventory("CentaurWallRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Pain+1

		Pain.QuintKnockback:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_ChangeVelocity(0,0,10,CVF_REPLACE)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1

		Pain.CommandoPunch:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_ChangeVelocity(0,0,12,CVF_REPLACE)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1

		Pain.ConcretemanTackle:
		"----" H 0 A_TakeInventory("FrozenInConcreteCounter",999)
		"----" H 0 A_TakeInventory("FrozenInUltConcreteCounter",999)
		"----" H 0 A_GiveInventory("ConcreteTackleProtect",1)
		"----" H 0 A_PlaySoundEx("weapon/concretehit","SoundSlot6")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain.ConcTackle2")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_JumpIfInventory("ConcreteShotDebuff",1,1)
			"----" H 0 A_GiveInventory("ConcreteManWallRush_CI")
		"----" H 0 ThrustThingZ(0,50,0,1)
		goto Pain.ConcTackle2
		Pain.ConcretemanStomp:
		"----" H 0 A_TakeInventory("FrozenInConcreteCounter",999)
		"----" H 0 A_TakeInventory("FrozenInUltConcreteCounter",999)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain.ConcStomp2")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		goto Pain.ConcStomp2

		Pain.OilmanUlt:
		"----" H 0 A_GiveInventory("SliderUltProtect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0, random(30,60), 0, 1)
		Goto Pain+1
		
		Pain.ToadmanUltEye:
		"----" H 0 A_GiveInventory("ToadmanEyeProtect",1)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Pain+1
		
		Pain.GutsmanTackle:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,22,1)
		"----" H 0 A_GiveInventory("GutsmanTackleProtect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		goto Pain+1
		Death.GutsmanTackle:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,22,1)
		"----" H 0 ThrustThingZ(0,80,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		Pain.GutsmanQuake:
		"----" H 0 A_GiveInventory("GutsmanQuakeProtect", 1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		"----" H 0 ThrustThingZ(0, random(5,10), 0, 1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		Pain.GutsmanGUpperCut:
		"----" H 0 A_GiveInventory("GutsmanGFlingProtect",1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_GiveInventory("GutsManGCeilingRush_CI")
		"----" H 0 ThrustThingZ(0, 120, 0, 1)
		Goto Pain+1
		Death.GutsmanGUpperCut:
		"----" H 0 A_SpawnItemEx("BaseFlinger")
		"----" H 0 ThrustThingZ(0, 150, 0, 1)
		goto Death
		Pain.GutsmanGCeilingRush:
		"----" H 0 A_Stop
		goto Pain+1
		Death.GutsmanGCeilingRush:
		"----" H 0 A_ChangeVelocity(0,0,25,CVF_REPLACE)
		goto Death.Knockback

		Pain.SaturnSlide:
		"----" H 0 A_GiveInventory("SaturnSlideProtect")
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		goto Pain+1

		Pain.JupiterSwoop:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("JupiterSwoopProtect", 1)
		Goto Pain+1

		Pain.UranusAlt:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("BullHornsProtect", 1)
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,19,1)
		Goto Pain+1
		Pain.UranusThrow:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,16,1)
		"----" H 0 A_GiveInventory("Shocked3",1)
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("UranusWallRush_CI")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 ThrustThingZ(0,20,0,0)
		"----" H 0 A_SpawnItemEx("BullTossFlinger")
		Goto Pain+1
		Death.UranusThrow:
		"----" H 0 ThrustThingZ(0,80,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		Death.Knockback:
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		"####" H 1 A_SpawnItemEx("DeathRockCheck") "----" H 0 A_JumpIfInventory("CriticalDeath",1,"Death.NoFX")
		goto Death.Gib
		
		Pain.VenusMine3:
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Pain.VenusMine2

		Pain.KnightmanSpin:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		"----" H 0 A_GiveInventory("KnightmanSpinProtect")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1
		Pain.KnightmanSpinUlt:
		"----" H 0 A_GiveInventory("KnightmanWallRush_CI")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("KnightmanSpinUltProtect")
		goto Pain+1
		
		Death.WavemanBike:
		"----" H 0 A_SpawnItemEx("WaveCrashSound")
		"----" H 0 ThrustThingZ(0,80,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		
		Pain.StrikeManBall:
		"----" H 0 A_GiveInventory("StrikeManBallProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,5,0,0)
		goto Pain+1
		Death.StrikeManBall:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 ThrustThingZ(0,40,0,0)
		goto Death.Knockback
		
		Pain.FusemanHighVoltage:
		"----" H 0 A_GiveInventory("HighVoltageProtect")
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		Goto Pain+1
		
		Pain.BurstPush:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_GiveInventory("BurstPushProtect")
		goto Pain+1
		
		Pain.BlizzardBowl2:
		"----" H 0 A_GiveInventory("BlizzardWallRush_CI")
		Pain.BlizzardBowl:
		"----" H 0 A_GiveInventory("BlizzardBowlProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,24,1)
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_ChangeVelocity(0,0,12,CVF_REPLACE)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1
		Pain.BlizzardSki:
		"----" H 0 A_GiveInventory("BlizzardSkiProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("BullTossFlinger")
		"----" H 0 ThrustThingZ(0,15,0,0)
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		goto Pain+1
		Death.BlizzardBowl:
		Death.BlizzardBowl2:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,24,1)
		Death.BlizzardSki:
		"----" H 0 A_ChangeVelocity(0,0,25,CVF_REPLACE)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback

		Pain.BadTraffic:
		"----" H 0 ThrustThingZ(0, 60, 0, 1)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 A_GiveInventory("NitroTruckProtect")
		Goto Pain+1
		
		Pain.StonemanPillar:
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger4")
		goto Pain+1
		Pain.AirmanIntroPusher:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Pain+1
		Pain.StoneSpin:
		"----" H 0 A_PlaySoundEx("weapon/stonehit","SoundSlot6")
		"----" H 0 A_GiveInventory("StoneSpinProtect")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,27,1)
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.StoneSpin2")
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Pain+1
		Pain.StoneSpin2:
		"----" H 0 ThrustThingZ(0,20,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger8")
		goto Pain+1
		Death.StoneSpin:
		"----" H 0 A_PlaySoundEx("weapon/stonehit","SoundSlot6")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,27,1)
		"----" H 0 ThrustThingZ(0,100,0,0)
		"----" HH 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		
		Death.BikeSlide:
		"----" H 0 A_SpawnItemEx("WaveCrashSound")
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,43,4)
		"----" H 0 A_ChangeVelocity(0,0,25,CVF_REPLACE)
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		goto Death.Knockback
		
		Death.ProtoDash:
		"----" H 0 ThrustThingZ(0,40,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death
		Death.ProtoSmash:
		"----" H 0 A_PlaySoundEx("weapon/concretehit","SoundSlot6")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 ThrustThingZ(0,40,0,0)
		Goto Death
		Death.BigBangStrike:
		"----" H 0 A_SpawnItemEx("BaseFlinger2")
		"----" H 0 ThrustThingZ(0,80,0,0)
		Goto Death
		
		//============ End of Flings
		
		//============ Enemy Assist
		Pain.Pepe:
		"----" H 0 A_GiveInventory("PepeProtect")
		Goto Pain+1
		
		Pain.Kuku:
		"----" H 0 A_GiveInventory("KukuProtect")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_ChangeVelocity(-20, random(-15, 15), 15, CVF_RELATIVE | CVF_REPLACE)
		Goto Pain+1
		
		Pain.Magfly:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		//"----" H 0 A_JumpIfInventory("MagFlyVision", 1, "BubbleReset")
		//"----" H 0 A_GiveInventory("MagFlyVision", 1)
		"----" H 0 A_GiveInventory("MagFlyTrapTime", 70)
		"----" H 0 A_GiveInventory("NoThirdFire")
		"----" H 0 A_SpawnItemEx("MagFlyTrapWatcher")
		goto Pain+1
		
		Pain.Taka:
		Pain.Elecn:
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		goto Pain+1
		
		Pain.ShieldAttacker:
		"----" H 0 A_GiveInventory("ShieldAttackerProtection", 1)
		goto Pain+1
		
		Pain.RaThorAssist:
		"----" H 0 A_GiveInventory("RaThorAssistInflict",1)
		goto Pain+1
		
		Pain.Roader:
		"----" H 0 A_GiveInventory("RoaderProtect")
		"----" H 0 A_JumpIfInventory("RoaderNoKnocks",1,"Pain")
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_GiveInventory("TempPitProtect_P")
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("RoaderNoKnocks")
		"----" H 0 A_ChangeVelocity(0, 0, random(5,10))
		goto Pain+1
		
		Pain.Harri:
		"----" H 0 A_GiveInventory("HarriDamageProtect", 1)
		"----" H 0 A_Stop
		goto Pain+1
		
		Pain.Holo:
		"----" H 0
		"----" H 0 A_GiveInventory("BrightBlind",160)
		"----" H 0 ACS_NamedExecuteAlways("VC_ChargeBlind",0)
		Goto Pain+1
		
		Pain.Coro:
		"----" H 0 A_Stop
		Goto Pain+1
		
		Pain.Mhead:
		"----" H 0
		Goto Pain+1
		
		Pain.Hyoey:
		"----" H 0 A_GiveInventory("RustDebuffTimer")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",3,"Pain")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",2,"Pain.Rust2")
		"----" H 0 A_JumpIfInventory("RustDebuffCount",1,"Pain.Rust1")
		"----" H 0 A_SpawnItemEx("RustDebuffWatcher")
		"----" H 0 A_GiveInventory("RustDebuffCount",2)
		goto Pain+1
		
		Pain.Poton:
		"----" H 0 A_GiveInventory("PotonProtect")
		Goto Pain+1
		
		Pain.Pierrobot:
		"----" H 0 A_Stop
		Goto Pain+1
		
		Pain.PierroGear:
		"----" H 0 A_ScaleVelocity(0.8)
		Goto Pain+1
		
		Pain.Bombombomb:
		"----" H 0 A_Stop
		goto Pain+1
		
		Pain.Skullmet:
		"----" H 0 A_GiveInventory("SkullmetProtect")
		"----" H 0 A_Stop
		goto Pain+1
		
		Pain.Shirokuma:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain.Freezeman")
		"----" H 0 A_GiveInventory("ShirokumaProtect")
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("MovementFreeze2")
		"----" H 0 A_GiveInventory("FreezeVision",1)
		Goto Pain+2
		
		Pain.Boobeam:
		"----" H 0
		goto Pain+1
		
		Pain.Gayo:
		"----" A 0 A_GiveInventory("GayoProtect")
		Goto Pain+1
		
		Pain.Bikky:
		"----" A 0 A_GiveInventory("BikkyProtect")
		Goto Pain+1
		
		Pain.BikkyQuake:
		"----" H 0 A_JumpIfInventory("HardmanQuakeProtect2",1,"SkipThis")
		"----" H 0 A_GiveInventory("HardmanQuakeProtect2", 1)
		Goto Pain.SparkShock
		
		Pain.Pointan:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_JumpIfInventory("SheepAssistImmune",1,"Pain")
		"----" H 0 A_PlaySoundEx("assist/pointan","SoundSlot6")	
		"----" H 0 A_SpawnItemEx("PointanWatcher")
		"----" H 0 A_GiveInventory("SheepAssistImmune",1)
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		goto Pain+1
		
		Pain.Crunch:
		"----" H 0 A_JumpIfInventory("IsTheTerminator",1,"Pain.Terra")
		"----" H 0 A_SpawnItemEx("CrunchTrapped")
		"----" H 0 A_SpawnItemEx("CrunchTrap")
		"----" H 0 A_GiveInventory("DarkCannonDebuff")
		"----" H 0 A_GiveInventory("NoThirdFire")
		Goto Pain+1
		
		Pain.Feeber:
		"----" H 0 A_JumpIfInventory("PumpBubbleCheck",1,"Pain.Venus")
		"----" H 0 A_GiveInventory("FeeberPickup",1)
		goto Pain+1
		
		Pain.Rabbiton:
		"----" H 0 A_GiveInventory("RabbitonProtect")
		goto Pain+1
		
		Pain.Chainsoar:
		"----" H 0 A_GiveInventory("ChainsoarProtect")
		Goto Pain+1
		
		Pain.BigFish:
		"----" H 0 A_GiveInventory("BigFishProtect",1)
		"----" H 0 A_Stop
		"----" H 0 A_JumpIfInventory("AlienChemicalColor",1,"Pain.AlienLevelUp")
		goto Pain+1
		
		Pain.Tomahawkman:
		"----" A 0 A_TakeInventory("SkullWalkerSafety", 1)
		goto Pain+1
		
		Pain.Irucan:
		"----" H 0 A_GiveInventory("IrucanProtect")
		Goto Pain+1
		
		Pain.CFN24:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		goto Pain+1
		
		Pain.SepaRoader:
		"----" H 0 A_GiveInventory("SepaRoaderProtect")
		Goto Pain+1
		
		Pain.AuAu:
		"----" H 0 A_JumpIfInventory("StunImmunity",1,"Pain")
		"----" H 0 A_GiveInventory("StunImmunity")
		"----" H 0 A_GiveInventory("FreezemanFreezeProtect",1)
		"----" H 0 A_SpawnItemEx("MovementFreeze")
		Goto Pain+2
		
		Pain.KaminariKogoro:
		"----" H 0 A_GiveInventory("KaminariKogoroProtect")
		"----" H 0 A_SpawnItemEx("KamiDebuffWatcher")
		goto Pain+1
		
		Pain.KDrone:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,26,40)
		Goto Pain+1
		
		Pain.CargouQ:
		"----" A 0 A_Stop
		Goto Pain+1
		
		Pain.GoriThree:
		"----" H 0 A_Stop
		"----" H 0 ThrustThingZ(0,20,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger6")
		goto Pain+1
		
		Pain.Lyric:
		"----" H 0
		goto Pain+1
		
		Pain.Nombrellan:
		"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
		"----" H 0 A_GiveInventory("NombrellanProtect")
		"----" H 0 A_ChangeVelocity(momx, momy, 5, CVF_REPLACE)
		Goto Pain+1
		
		Pain.GilliamKnight:
		"----" H 0 A_GiveInventory("GilliamKnightProtect")
		goto Pain+1
		Pain.GilliamKnight2:
		"----" H 0 A_GiveInventory("GilliamKnight2Protect")
		goto Pain+1
		
		Pain.RaDevilAssist:
		"----" H 0 A_GiveInventory("RaDevilAssistInflict",1)
		goto Pain+1

		Pain.MicroDevilChunkB:
		"----" H 0 A_GiveInventory("MicroDevilChunkBProtect")
		goto Pain+1
		Pain.MicroDevilChunkB2:
		"----" H 0 A_GiveInventory("MicroDevilChunkB2Protect")
		goto Pain+1
		Pain.MicroDevilChunkB3:
		"----" H 0 A_GiveInventory("MicroDevilChunkB3Protect")
		goto Pain+1
		
		Pain.DigMole:
		"----" H 0
		Goto Pain+1
		
		Pain.DustCrusherAssist:
		"----" H 0 A_GiveInventory("DustCrusherAssistProtect",1)
		goto Pain+1

		Pain.PressnQuake:
		"----" H 0 A_Stop
		"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
		"----" H 0 A_GiveInventory("Shocked",1)
		"----" H 0 A_GiveInventory("PressnQuakeProtect",1)
		goto Pain+1
		
		Death.Pressn:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,37,1)
		Goto Death.Gib

		Pain.Coiln:
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		"----" H 0 A_GiveInventory("CoilnProtect",1)
		goto Pain+1
		Death.Coiln:
		"----" H 0 ThrustThingZ(0,50,0,0)
		"----" H 0 A_SpawnItemEx("BaseFlinger3")
		Goto Death

		Pain.FireMet:
		"----" H 0 A_GiveInventory("FireMetProtect",1)
		goto Pain+1
		Death.FireMet:
		Death.FireMet2:
		"----" H 0
		Goto Death.MagmamanUlt
		
		//======== Assist Deaths
		Death.KillerBomb:
		Death.Pierrobot:
		Death.Blocky:
		Death.Harri:
		Death.Spike:
		Death.Bombombomb:
		Death.CFN24:
		Death.WilyPodV:
		Death.MicroDevilChunkB:
		Death.MicroDevilChunkB2:
		Death.MicroDevilChunkB3:
		Death.AstroZombieg:
		Goto Death.Gib
		
		Death.PierroGear:
		Death.Bikky:
		goto Death.Flatten
		
		Death.Fooj:
		"----" A 0 A_SpawnItemEx("SmallHealth", 18, 0, 58, 8, 0, 12, random(-35, 35))
		"----" A 0 A_SpawnItemEx("SmallHealth", 18, 0, 58, 8, 0, 12, random(-35, 35))
		Goto Death
		
		Death.BigFish:
		"----" H 0 A_JumpIfInventory("AlienDebuffFlag",1,"Death.AlienLevelUp")
		goto Death
		
		Death.Parocket:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,40,10)
		goto Death.Gib

//V6B
MegamanPain:
"----" A 0 A_JumpIfInventory("GravityHoldPainPower",1,"GravityHoldWait")
"----" A 0 A_JumpIfInventory("WilyIcePainPower",1,"WilyIceWait")
goto "Super::MegamanPain"
GravityHoldWait:
"----" A 2
"----" A 0 A_CheckFloor(2)
"----" A 0 ThrustThingZ(0,150,1,0)
"----" A 0
goto "Super::MegamanPain"
WilyIceWait:
"----" A 30
"----" A 30
"----" A 0 ACS_NamedExecuteWithResult("core_freezeplayer", 0, false)
"----" A 0 A_TakeInventory("IceVision",1)
goto SuperSpawn

MegamanDeath:
//"----" A 0 A_JumpIfInventory("ExplodeDeathFlag",1,"MegamanExplode")
"----" A 0 A_JumpIfInventory("ExplodeDeathFlag",1,"MegamanGib")
"----" A 0 A_JumpIfInventory("FallingDeathFlag",1,"MegamanFall")
"----" A 0 A_JumpIfInventory("RisingDeathFlag",1,"MegamanRise")
"----" A 0 A_JumpIfInventory("IceDeathFlag",1,"MegamanIce")
goto "Super::MegamanDeath"
MegamanRise:
"----" A 1 A_ChangeFlag("NOINTERACTION", 1)
RiseMyMegaman:
"----" A 1 ThrustThingZ(0,10,0,1)
"----" A 0 A_JumpIf(ceilingz-z<=(height+1), "RiseMyMegamanEnd")
"----" A 0 A_GiveInventory("BlowDeathTimer", 1)
"----" A 0 A_JumpIfInventory("BlowDeathTimer", 35, "RiseMyMegamanEnd")
loop
RiseMyMegamanEnd:
"----" A 0 A_Stop
"----" A 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 0)
goto MegamanFall
MegamanIce:
"----" H 0 ACS_NamedExecuteWithResult("core_chargecolor",CLR_ICEDEATH,TCLR_ICEDEATH)
"----" H 1 A_PlaySoundEx("*icefreze","Voice")
"----" HHHHHHHHHHHHHHHHHHHH 1 A_JumpIfInventory("CriticalDeath",1,"MegamanIceGib")
"----" H 0 A_SpawnItemEx("FrozenDeathFX", 0, 0, 1, 0, 0, 0, 0, SXF_TRANSFERTRANSLATION)
"----" H 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
"----" H 0 A_PlaySoundEx("*icedeath","Voice")
goto MegamanErase
MegamanIceGib:
"----" H 0 A_SpawnItemEx("FrozenDeathFX", 0, 0, 1, 0, 0, 0, 0, SXF_TRANSFERTRANSLATION)
"----" H 0 A_SpawnItemEX("CriticalDeathSpawner",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)
"----" H 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
"----" H 0 A_PlaySoundEx("*icedeath","Voice")
goto MegamanErase

Pain.GravityHold:
"----" A 0 A_ChangeVelocity(momx, momy, 0, CVF_REPLACE)
"----" A 0 A_JumpIf(z-floorz>180,"GravityForce4")
"----" A 0 A_JumpIf(z-floorz>128,"GravityForce3")
"----" A 0 A_JumpIf(z-floorz>32,"GravityForce2")
"----" A 0 A_JumpIf(z-floorz>8,"GravityForce1")
Goto GravityForceNo
GravityForce4:
"----" A 0 A_GiveInventory("GravityForce4",1)
Goto GravityForceB
GravityForce3:
"----" A 0 A_GiveInventory("GravityForce3",1)
Goto GravityForceB
GravityForce2:
"----" A 0 A_GiveInventory("GravityForce2",1)
Goto GravityForceB
GravityForce1:
"----" A 0 A_GiveInventory("GravityForce1",1)
Goto GravityForceB
GravityForceB:
"----" A 0 A_GiveInventory("GravityHoldPainPower",1)
Goto Pain+1
GravityForceNo:
"----" A 0 A_CheckFloor(2)
"----" A 0 ThrustThingZ(0,150,1,0)
"----" A 0
Goto Pain+1

Pain.WilyIce:
"----" A 0 ACS_NamedExecuteWithResult("core_freezeplayer", 0, true)
"----" A 0 A_SpawnItemEx("ImFrozen")
"----" A 0 A_GiveInventory("IceVision",1)
"----" A 0 A_Stop
"----" A 0 A_GiveInventory("WilyIcePainPower",1)
Goto Pain+1

Death.FallingTag:
Death.Falling:
"----" A 0 A_GiveInventory("TerminatorPitChecker",1)
"----" A 0 A_JumpIfInventory("FallDeathExplodeFlag", 1, "Death")
"----" A 0 A_GiveInventory("FallingDeathFlag",1)
goto Death
Death.WindStorm:
Death.GravityHold:
Death.TornadoBlow:
Death.TornadoHold:
"----" A 0 A_GiveInventory("RisingDeathFlag",1)
goto Death

Death.IceSlasher:
Death.BlizzardAttack:
Death.FreezeCracker:
Death.FreezeCrackerBit:
Death.IceWave:
Death.ChillSpike:
Death.ChillShot:
Death.WilyIce:
Death.GigaIceWave:
Ice:
"----" A 0 A_GiveInventory("IceDeathFlag",1)
goto Death

Pain.NoPain:
PLY1 B 0 
goto SuperSpawn
Pain.BotSight:
"####" B 5 HealThing(1)
goto SuperSpawn
Pain.ProtoBuster:
Pain.DarkMan:
Pain.FireSpin:
Pain.QuickBoomerang:
Pain.Buster:
Pain.BassBuster:
Pain.WildCoil:
Pain.ChargeKick:
Pain.YamatoSpear:
Pain.DiveMissile:
Pain.StarCrash:
Pain.CentaurFlash:
Pain.ScrewCrusher:
Pain.TornadoHold:
Pain.TrebleSentry:
Pain.ScorchWheel:
Pain.MagnetMissile:
Pain.JunkShield:
Pain.OilSlider:
Pain.BassBuster:
Pain.WaveBurner:
Pain.WaveBurnerUW:
Pain.Gamma:
Pain.MetoolSwimmer:
Pain.Misc:
Pain.KyorownBullet:
Pain.Treble:
Pain.MegaArm:
Pain.NeedleCannon:
Pain.LaserTrident:
Pain.WheelCutterSaw:
PLY1 H 0 
Goto pain+1
Pain.TripleBlade:
Pain.CommandoBomb:
Pain.ElectricShock:
Pain.TornadoHoldPod:
Pain.ThunderWool:
Pain.WaterShield:
Pain.GyroChopper:
PLY1 H 0 
Goto Pain+2
Pain.TornadoHold:
PLY1 H 0 A_GiveInventory("TornadoHoldProtect", 1)
Goto Pain+2
Pain.Reggae:
TNT1 A 0 A_PlaySoundEx("item/reggae", "SoundSlot7", 0)
Goto Pain+1
Pain.CrystalEyeBit:
PLY1 H 0 A_GiveInventory("CrystalEyeHit", 1)
Pain.WaterBalloon:
Pain.FlashBomb:
Pain.RemoteMine:
Pain.IceWall:
PLY1 H 0 A_ScaleVelocity(0.9)
Goto Pain+1
Pain.SpreadDrill:
Pain.SpreadDrill2:
Pain.SpreadDrill3:
PLY1 H 0 A_JumpIfInventory("SpreadDrillProtect", 1 ,2)
PLY1 H 0 A_PlaySoundEx("weapons/mmb/spreaddrillhit","SoundSlot5")
PLY1 H 0 A_GiveInventory("SpreadDrillProtect", 1)
Goto pain+1
Pain.FlameSword:
PLY1 H 0 A_GiveInventory("FlameSwordProtect", 1)
PLY1 H 0 A_PlaySoundEx("weapons/mm8/flameswordhit","SoundSlot5")
PLY1 HH 0 A_SpawnItemEx("FlameSwordBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,360))
Goto pain
Pain.WindStorm:
PLY1 H 0 A_GiveInventory("WindStormHit", 1)
Goto pain+1
Pain.SpringBoxTrap:
Pain.ClownTrain:
Pain.FlingDamage:
PLY1 H 0 A_JumpIfInventory("NoPushFlag", 1, "SkipFling")
PLY1 H 0 //ThrustThing(random(0,255),50,1,0)
PLY1 H 0 ThrustThing(random(0,255),5,0,0)
PLY1 H 0 ThrustThingZ(0,30,0,0)
Goto pain+1
Pain.SlashClaw:
PLY1 H 0 A_PlaySoundEx("weapons/mm7/slashclawhit","SoundSlot5")
Goto Pain
Pain.TenguSlash:
PLY1 H 0 A_PlaySoundEx("weapons/mmb/tengubladehit","SoundSlot5")
goto Pain
Pain.FlashStopper:
PLY1 H 0 
PLY1 H 0 A_GiveInventory("FlashStopperHit", 1)
goto Pain+1
Pain.TimeSlow:
PLY1 H 0 A_GiveInventory("Slowed",1)
Goto pain+1
Pain.SparkShock:
PLY1 H 0 A_SpawnItemEx("ShockFX",6,0,32)
PLY1 H 0 A_GiveInventory("Shocked",1)
Goto Pain+2
Pain.CrashBomb:
PLY1 H 0 A_Stop
Goto Pain+1
Pain.ConcreteShot:
PLY1 H 0 A_JumpIfInventory("ConcreteVision", 1, "ConcreteReset")
PLY1 H 0 A_GiveInventory("ConcreteVision", 1)
PLY1 H 0 A_GiveInventory("ConcreteTime", 105)
PLY1 H 0 A_SpawnItemEx("ConcreteWatcher")
goto Pain+1
ConcreteReset:
PLY1 H 0 A_GiveInventory("ConcreteTime", 105)
goto Pain+1
Pain.TornadoBlow:
PLY1 H 0 A_JumpIfInventory("NoPushFlag", 1, "SkipFling")
PLY1 H 0 ThrustThingZ(0, 60, 0, 0)
goto Pain+1
Pain.ChillSpike:
PLY1 H 0 A_GiveInventory("ChillFreeze", 1)
goto Pain+1
Pain.SparkChaser:
PLY1 H 0 A_GiveInventory("SparkChaserTagged", 1)
goto Pain+1
Pain.BreakDash:
PLY1 H 0 A_GiveInventory("BreakDashProtect", 1)
PLY1 H 0 A_Stop
goto Pain+1
Pain.TopSpin:
"----" H 0 A_GiveInventory("TopSpinProtect")
"----" H 0 A_JumpIfInventory("NoPushFlag",1,"Pain")
"----" H 0 A_GiveInventory("TempPitProtect_P")
"----" H 0 A_SpawnItemEx("BaseFlinger6")
goto Pain+1
SkipFling:
PLY1 H 0
Goto pain+1

Pain.WilyFire:
PLY1 H 0 A_SpawnItemEx("ImOnFire")
PLY1 H 0 A_GiveInventory("FireVision",1)
Goto Pain
Pain.Drowning:
Pain.DrowningTag:
Pain.Fire:
Pain.Falling:
Pain.FallingTag:
Pain.Slime:
Pain.SlimeTag:
PLY1 H 0 
PLY1 H 0 A_JumpIfInventory("BeatCallCheck", 1, "BeatAssist")
Goto Pain+1
Pain.TimeStopper:
PLY1 H 0 A_GiveInventory("TimeStopActivator", 1)
Goto Pain+1
BeatAssist:
PLY1 H 0 
PLY1 H 0 HealThing(2)
"####" H 2 ACS_NamedExecuteAlways("core_beatflight", 0, 0, 1)
PLY1 H 0 A_JumpIfInventory("BeatCallProtection", 1, "Spawn")
Goto Pain+1
Pain.EclipsePunch:
PLY1 B 0 
Goto SuperSpawn

Death.Beam:
Death.instagib:
Death.Telefrag:
//Gibs for classes
Death.HeatWallCrash:
Death.WoodRoll:
Death.AirmanVacuum:
Death.Crashman:
Death.CrashmanLand:
Death.CrashManBomb:
Death.QuickDash:
Death.QuickDash2:
Death.HardRocket:
Death.MagnetmanOre:
Death.MagnetmanPull:
Death.PharaohmanWaveCounter:
Death.DrillFrenzy:
Death.DrillmanAscend:
Death.ToadmanLeap:
Death.DivemanTorpedo:
Death.DivemanAttack:
Death.SkullManWhite:
Death.GravityDrop:
Death.GravityUltDrop:
Death.WaveBikeBoom:
Death.StonemanPillar3:
Death.Napalmman:
Death.NapalmUlt:
Death.NapalmBoost:
Death.GyromanAttackUlt:
Death.CrystalmanJoeShot:
Death.ChargemanRam:
Death.Darkman1Ram:
Death.Darkman1Ram2:
Death.Darkman1Ram3:
Death.Darkman4ProtoShot:
Death.YamatoUlt:
Death.TenguManKick:
Death.DeadlyStorm:
Death.GrenademanM1:
Death.AstroPitBeam:
Death.BurnermanLunge:
Death.GalaxyBHB:
Death.GalaxyLaunch:
Death.GalaxymanSwoop:
Death.ConcretemanTackle:
Death.ConcretemanStomp:
Death.CommandoManBomb:
Death.CommandoPunch:
Death.SheepmanWool:
Death.Blastman:
Death.Enker2:
Death.Enker3:
Death.PunkAlt:
Death.PunkRip:
Death.PunkBounce:
Death.RaThorDarkMatter:
Death.QuintSpike:
Death.QuintKnockback:
//Ultimate Attacks
Death.ElecmanLightning:
Death.MetalUlt:
Death.QuickManBeam:
Death.AirmanUlt:
Death.HeatmanAfterBurnTackle:
Death.BubbleCrit:
Death.MagnetmanUlt:
Death.GeminimanUlt:
Death.HardmanUlt:
Death.SnakemanUlt:
Death.TopmanUltimate:
Death.ShadowmanFrog:
Death.NeedlePoker:
Death.NeedleUlt:
Death.SparkmanUlt:
Death.DrillmanUlt:
Death.PharaohUlt:
Death.BrightmanJump:
Death.ToadmanUlt:
Death.SkullmanUlt:
Death.StoneStomp:
Death.StarManRock:
Death.CentaurUlt:
Death.CentaurDash:
Death.KnightmanSpinUlt:
Death.KnightFullJump:
Death.WindmanUlt:
Death.FreezemanPose:
Death.Burstman:
Death.TurbomanUlt:
Death.MM7Lightning:
Death.TenguManUlt:
Death.AstroCrushUlt:
Death.GrenademanUlt:
Death.SheepmanUlt:
Death.TerraUlt:
Death.QuintUlt:
Death.PunkUlt:
Death.BalladeDrop:
Death.BalladeUlt:
Death.BalladeUltFloor:
Death.BusterRodGKnockback:
//End of classes
Death.Gib:
"----" H 0 A_GiveInventory("FakeWilySpawner",1)
"----" H 0 //ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,45,1)
"----" H 0 A_JumpIfInTargetInventory("PowerUltBuildCooldown",1,"Death.GibAfter")
"----" H 0 A_GiveToTarget("ShortUltimateAmmo",25)
"----" H 0 A_GiveToTarget("MediumShortUltimateAmmo",40)
"----" H 0 A_GiveToTarget("MediumUltimateAmmo",50)
"----" H 0 A_GiveToTarget("MediumLongUltimateAmmo",50)
"----" H 0 A_GiveToTarget("LongUltimateAmmo",63)
"----" H 0 A_GiveToTarget("VeryLongUltimateAmmo",75)
"----" H 0 A_GiveToTarget("LongestUltimateAmmo",87)
"----" H 0 A_GiveToTarget("MaximumUltimateAmmo",100)
"----" H 0 A_GiveToTarget("TerminationUltimateAmmo",188)
Death.GibAfter:
"----" Z 0 SetPlayerProperty(0, 0, PROP_TOTALLYFROZEN)
// [Russ] Because this state can be reached after the death confirmation of other means, don't give them again!
"----" H 0 A_JumpIfInventory("IsDead", 1, 2)
"----" H 0 A_GiveInventory("DeathFlagPack", 1)
"----" H 0 A_GiveInventory("CriticalDeathGiver", 1)
"----" H 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
TNT1 A 1 A_CheckPlayerDone
wait
Death.Drowning:
Death.DrowningTag:
Death.Fire:
Death.Falling:
Death.FallingTag:
Death.Slime:
Death.SlimeTag:
Death.Spiney:
Death.Massacre:
Death.Ice:
"----" A 0 A_GiveInventory("TerminatorPitChecker",1)
goto Death

		ClassPain:
		//"----" H 0 SetPlayerProperty(0,0,4)
		"----" H 0 ACS_NamedExecuteWithResult("core_decdmg_begin")
		"----" HHHHHHHHHH 2 A_SpawnItemEx("PainFX",-5,0,3,0,0,0)
		Goto Spawn+1
		
		Death:
		"----" H 0 SetPlayerProperty(0, 0, 4) 
		"----" H 0 A_NoBlocking
		"----" H 0 A_GiveInventory("DeathFlagPack", 1)
		"----" H 0 A_GiveInventory("IsDead",1)
		"----" H 0 //A_Stop
		"----" H 0 A_GiveToTarget("KilledMeStock",1)
		"----" H 0 A_GiveToTarget("KilledMe",1)
		ContinueDeath:
		"----" H 0 //ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,45,1)
		"----" H 0 A_JumpIfInTargetInventory("PowerUltBuildCooldown",1,"ContinueDeathNoUlt")
		"----" H 0 A_GiveToTarget("ShortUltimateAmmo",25)
		"----" H 0 A_GiveToTarget("MediumShortUltimateAmmo",40)
		"----" H 0 A_GiveToTarget("MediumUltimateAmmo",50)
		"----" H 0 A_GiveToTarget("MediumLongUltimateAmmo",50)
		"----" H 0 A_GiveToTarget("LongUltimateAmmo",63)
		"----" H 0 A_GiveToTarget("VeryLongUltimateAmmo",75)
		"----" H 0 A_GiveToTarget("LongestUltimateAmmo",87)
		"----" H 0 A_GiveToTarget("MaximumUltimateAmmo",100)
		"----" H 0 A_GiveToTarget("TerminationUltimateAmmo",188)
		ContinueDeathNoUlt:
		"----" H 0 A_JumpIfInTargetInventory("MegaBusterV",1,"WeaponGetM")
		"----" H 0 A_JumpIfInTargetInventory("ProtoBusterV",1,"WeaponGetM")
		"----" H 0 A_JumpIfInTargetInventory("BassBusterV",1,"WeaponGetM")
		"----" H 0 A_JumpIfInTargetInventory("HandOfJusticeBoss",1,"WeaponGetM")
		"----" H 1 A_Jump(256,"ClassDeath")
		wait
		ClassDeath:
		"----" H 0 SetPlayerProperty(0, 0, PROP_TOTALLYFROZEN)
		"----" H 0 ACS_NamedExecuteWithResult("core_decdmg_begin")
		"----" H 0 A_NoBlocking
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("DeathFlagPack", 1)
		"----" HHHHHHHHHHHHHHHHHHHH 1 A_JumpIfInventory("CriticalDeath", 1, "Death.Gib")
		"----" H 0 SetPlayerProperty(0, 0, PROP_TOTALLYFROZEN)
		"----" H 0 A_PlayerScream
		"----" H 0 A_SpawnItemEx("FakeDeathFX",0,0,32)
		ClassDeathLoop:
		TNT1 A 1 A_CheckPlayerDone
		wait
		Death.TopmanAlt:
		"####" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,49,1)
		Goto Death
		Death.TopmanAlt2:
		"####" H 0 ThrustThingZ(0,120,0,0)
		"####" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,49,1)
		Death.TopmanThird:
		Death.TopmanThird2:
		Death.TopmanSpike:
		"----" H 0 //ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,45,1)
		"####" H 0 A_JumpIfInTargetInventory("PowerUltBuildCooldown",1,"Death.TopmanSpinA")
		"####" H 0 A_GiveToTarget("ShortUltimateAmmo",25)
		"####" H 0 A_GiveToTarget("MediumShortUltimateAmmo",40)
		"####" H 0 A_GiveToTarget("MediumUltimateAmmo",50)
		"####" H 0 A_GiveToTarget("MediumLongUltimateAmmo",50)
		"####" H 0 A_GiveToTarget("LongUltimateAmmo",63)
		"####" H 0 A_GiveToTarget("VeryLongUltimateAmmo",75)
		"####" H 0 A_GiveToTarget("LongestUltimateAmmo",87)
		"####" H 0 A_GiveToTarget("MaximumUltimateAmmo",100)
		"####" H 0 A_GiveToTarget("TerminationUltimateAmmo",188)
		Death.TopmanSpinA:
		"####" H 0 SetPlayerProperty(0, 0, 4) 
		"####" H 0 A_NoBlocking
		"####" H 0 A_GiveInventory("IsDead",1)
		"####" H 0 //A_Stop
		"####" H 0 A_GiveToTarget("KilledMeStock",1)
		"####" H 0 A_GiveToTarget("KilledMe",1)
		Death.TopmanSpinB:
		"####" H 0
		"####" H 1 A_Jump(256,"Death.TopmanSpinC")
		wait
		Death.TopmanSpinC:
		"####" H 0 ACS_ExecuteAlways(999,0,0)
		"####" HHHHHHHHHHHHHHHHHHHH 1 A_SetAngle(angle-30)
		"####" H 0 A_PlayerScream
		"####" H 0 A_SpawnItemEx("FakeDeathFX",0,0,32)
		TNT1 A 1 A_CheckPlayerDone
		wait
		Death.FlameUlt:
		TNT1 A 1 SetPlayerProperty(0, 0, 4)
		NOFX A 0 A_GiveToTarget("KilledMe",1)
		NOFX A 0 A_GiveToTarget("KilledMeStock",1)
		NOFX A 0 A_TakeInventory("WeaponCharge",999) 
		NOFX A 0 A_GiveInventory("CutterFlag",999)
		NOFX A 0 A_GiveInventory("IsDead",1)
		NOFX A 0 A_PlayerScream
		NOFX A 0 A_SpawnItemEx("FakeDeathFX",0,0,32)
		TNT1 A 1 A_CheckPlayerDone
		wait
		Death.SaturnBlackHole:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_PlaySoundEx("weapon/blackholegb","SoundSlot6")
		"----" HHHHHHHHHH 1 A_SetScale(scalex-0.25, scaley-0.25)
		goto Death.NoFX
		Death.AcidBurning:
		Death.Acid3:
		Death.AcidmanUlt:
		Death.ToadUltAOE:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("AcidDeathDrop",random(0,48),0,random(0,64),0,0,0,random(0,359),1)
		"----" H 0 A_PlaySoundEx("weapon/acidwave","SoundSlot6")
		goto Death.NoFX
		Death.MagmamanUlt:
		"####" H 0 A_GiveInventory("FakeWilySpawner",1)
		"####" H 8 ACS_ExecuteAlways(971,0,5678)
		"####" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("MagmaUltDeathFX",random(0,48),0,random(0,64),0,0,frandom(0.0,1.0),random(0,359))
		"####" H 0 A_PlaySoundEx("misc/lava","SoundSlot6")
		goto Death.NoFX
		Death.ChillmanJump:
		"----" H 0 A_JumpIfInventory("ChillUltFlag",1,"Death.ChillBreak")
		Goto Death
		Death.Coldman:
		"----" H 0 ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,48,1)
		"----" H 0 A_JumpIfInventory("ColdFreezeFlag",1,"Death.ColdFreeze")
		goto Death
		Death.ToadmanRainFlush:
		"----" H 0 A_JumpIfInventory("ToadUltFlag",1,"Death.AcidmanUlt")
		Goto Death
		Death.ChillBreak:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" HHHHHHHHHHHH 0 A_SpawnItemEx("ChillDeathFX",random(0,48),0,random(0,64),random(-10,10),0,random(2,13),random(0,359))
		"----" H 0 A_PlaySoundEx("weapon/centaurflash","SoundSlot6")
		"----" H 0 A_PlaySoundEx("weapon/chillbreak","SoundSlot5")
		goto Death.NoFX
		Death.ColdFreeze:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_GiveInventory("NoSpeed",1)
		"----" H 0 A_SetGravity(0.0)
		"----" H 0 A_Stop
		"----" H 0 A_GiveInventory("IsDead",1)
		"----" H 0 A_PlaySoundEx("weapon/colddeath","SoundSlot6")
		"----" H 0 ACS_ExecuteAlways(971,0,1234)
		"----" H 0 A_SpawnItemEx("ColdDeathAirSpawner")
		"----" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 1 A_FadeOut(0.025,0)
		goto Death.NoFX
		Death.ElectricDeath:
		"####" H 0 A_GiveInventory("NoSpeed",1)
		"####" H 0 A_SetGravity(0.0)
		"####" H 0 A_Stop
		"####" H 0 A_GiveInventory("IsDead",1)
		"####" H 0 A_PlaySoundEx("classes/electricdeath","SoundSlot6")
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		"####" HHHHHHHH 0 A_SpawnItemEx("ElectricDeathFX",random(12,36),0,random(0,56),0,0,0,random(0,359),0,64) "####" H 1 ACS_ExecuteAlways(971,0,5678) "####" H 1 ACS_ExecuteAlways(971,0,13579)
		goto Death.Gib
		Death.Concreteman1:
		Death.Concreteman2:
		Death.Concreteman3:
		"----" H 0 A_GiveInventory("FakeWilySpawner",1)
		"----" H 0 A_SpawnItemEx("ConcreteDeathBlock",0,0,0,0,0,0,0,SXF_ABSOLUTEANGLE)
		goto Death.NoFX
		Death.NoFX:
		"----" H 1 SetPlayerProperty(0, 0, 4)
		"----" H 0 A_GiveToTarget("KilledMe",1)
		"----" H 0 A_GiveToTarget("KilledMeStock",1)
		"----" H 0 A_TakeInventory("WeaponCharge",999) 
		"----" H 0 A_GiveInventory("CutterFlag",999)
		"----" H 0 A_GiveInventory("DeathFlagPack", 1)
		"----" H 0 A_GiveInventory("IsDead",1)
		"----" H 0 //A_PlayerScream
		"----" H 0 //A_SpawnItemEx("FakeDeathFX",0,0,32)
		"----" H 0 //ACS_NamedExecuteAlways("VC_GiveTargetAmmo",0,45,1)
		"----" H 0 A_JumpIfInTargetInventory("PowerUltBuildCooldown",1,"ClassDeathLoop")
		"----" H 0 A_GiveToTarget("ShortUltimateAmmo",25)
		"----" H 0 A_GiveToTarget("MediumShortUltimateAmmo",40)
		"----" H 0 A_GiveToTarget("MediumUltimateAmmo",50)
		"----" H 0 A_GiveToTarget("MediumLongUltimateAmmo",50)
		"----" H 0 A_GiveToTarget("LongUltimateAmmo",63)
		"----" H 0 A_GiveToTarget("VeryLongUltimateAmmo",75)
		"----" H 0 A_GiveToTarget("LongestUltimateAmmo",87)
		"----" H 0 A_GiveToTarget("MaximumUltimateAmmo",100)
		"----" H 0 A_GiveToTarget("TerminationUltimateAmmo",188)
		TNT1 A 1 A_CheckPlayerDone
		wait
	}
}

actor VCBaseWeapon : Weapon
{
	+WEAPON.AMMO_OPTIONAL
	+WEAPON.ALT_AMMO_OPTIONAL
	+WEAPON.DONTBOB
	+INVENTORY.UNDROPPABLE
	Weapon.SlotNumber 1
	Inventory.PickupSound "weapon/weaponup"
	Scale 2.0
	weapon.ammotype "Base28Ammo"
	inventory.icon "TNT1A0"
	dropitem ""
	States
	{
	Deselect:
	TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
	TNT1 A 1 A_Lower
	Loop
	Select:
	TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
	TNT1 A 1 A_Raise
	Loop
	
	Ready:
	TNT1 A 1 A_WeaponReady
	loop
	Fire:
	TNT1 A 1 A_RailWait
	Goto Ready
	
	Flash:
	TNT1 A 1
	stop
	
	User1:
	UltimateAttack:
	NoAmmo:
	TNT1 A 1
	goto Ready
	
	Flashloop:
		TNT1 A 0
		stop
	NoFlash:
		TNT1 A 0
		stop
	Sound.BusterCharge:
		TNT1 A 9 A_PlaySoundEx("weapon/adapterchargeloop","Weapon",0)
		TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
		TNT1 A 1 A_JumpIfInventory("WeaponCharge",1,"Sound.BusterCharge")
		stop
	}
}

actor BaseCustomFlag1 : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor BaseCustomFlag2 : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor BaseDecorativeActor
{
	scale 2.5
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NONETID
	+NOINTERACTION
	+DONTREFLECT
	States
	{
		Spawn:
		TNT1 A 0
		stop
	}
}


actor TerminalArmorClass : VCBaseClass {player.maxhealth 600 health 600 dropitem "Terminator"}

actor TankArmorClass : VCBaseClass {player.maxhealth 167 health 167}
actor HighArmorClass : VCBaseClass {player.maxhealth 137 health 137}
actor SemiHighArmorClass : VCBaseClass {player.maxhealth 116 health 116}

actor SemiWeakArmorClass : VCBaseClass {player.maxhealth 92 health 92}
actor WeakArmorClass : VCBaseClass {player.maxhealth 86 health 86}
actor GlassArmorClass : VCBaseClass {player.maxhealth 80 health 80}

actor TankArmor : inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor HighArmor : TankArmor {}
actor SemiHighArmor : TankArmor {}
actor NormalArmor : TankArmor {}
actor SemiWeakArmor : TankArmor {}
actor WeakArmor : TankArmor {}
actor GlassArmor : TankArmor {}

actor TerminationUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 1500
	+INVENTORY.IGNORESKILL
}

actor MaximumUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 800
	+INVENTORY.IGNORESKILL
}

actor LongestUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 700
	+INVENTORY.IGNORESKILL
}

actor VeryLongUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 600
	+INVENTORY.IGNORESKILL
}

actor LongUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 500
	+INVENTORY.IGNORESKILL
}

actor MediumLongUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 400
	+INVENTORY.IGNORESKILL
}

actor MediumUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 300
	+INVENTORY.IGNORESKILL
}

actor MediumShortUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 200
	+INVENTORY.IGNORESKILL
}

actor ShortUltimateAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 100
	+INVENTORY.IGNORESKILL
}

actor Base28Ammo : Ammo
{
	inventory.amount 1
	inventory.maxamount 28
	+INVENTORY.IGNORESKILL
}

actor Base56Ammo : Ammo
{
	inventory.amount 1
	inventory.maxamount 56
	+INVENTORY.IGNORESKILL
}

actor Base112Ammo : Ammo
{
	inventory.amount 1
	inventory.maxamount 112
	+INVENTORY.IGNORESKILL
}

actor BaseAltfireAmmo : Ammo
{
	inventory.amount 1
	inventory.maxamount 112
	+INVENTORY.IGNORESKILL
} 

/*actor BaseCooldownInv : Ammo
{
	inventory.amount 1
	inventory.maxamount 28
	+INVENTORY.IGNORESKILL
}

Actor BaseCooldownPower : Powerup
{
	Powerup.Duration 0x7FFFFFFF
}*/

actor MovementReturnFailsafe : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
states
{
Pickup:
TNT1 A 0 SetPlayerProperty(0,0,0)
TNT1 A 0 SetPlayerProperty(0,0,4)
TNT1 A 0 A_TakeInventory("DarkCannonDebuff")
TNT1 A 0 A_TakeInventory("NoThirdfire")
stop
}
}

actor MovementFrozen : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsTheTerminator",1,"Nope")
TNT1 A 0 A_Stop
TNT1 A 0 SetPlayerProperty(0,1,0)
stop
Nope:
TNT1 A 0
stop
}
}

actor MovementFrozen2 : MovementFrozen
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsTheTerminator",1,"Nope")
TNT1 A 0 A_Stop
TNT1 A 0 A_GiveInventory("NoThirdFire")
TNT1 A 0 SetPlayerProperty(0,1,4)
stop
}
}

actor MovementFrozen3 : MovementFrozen
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsTheTerminator",1,"Nope")
TNT1 A 0 A_Stop
TNT1 A 0 A_GiveInventory("NoThirdFire")
TNT1 A 0 SetPlayerProperty(0,1,4)
TNT1 A 0 SetPlayerProperty(0,1,0)
stop
Nope:
TNT1 A 0
stop
}
}

actor MovementFrozen4 : MovementFrozen
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsTheTerminator",1,"Nope")
TNT1 A 0 A_GiveInventory("NoThirdFire")
TNT1 A 0 SetPlayerProperty(0,1,4)
stop
}
}

actor MovementFrozen5 : MovementFrozen
{
states
{
Pickup:
TNT1 A 0 A_Stop
TNT1 A 0 A_GiveInventory("NoThirdFire")
TNT1 A 0 SetPlayerProperty(0,1,4)
TNT1 A 0 SetPlayerProperty(0,1,0)
stop
}
}

actor MovementFrozenGrab : MovementFrozen
{
states
{
Pickup:
TNT1 A 0 A_GiveInventory("NoThirdFire")
TNT1 A 0 A_GiveInventory("IGotGrabbed")
TNT1 A 0 SetPlayerProperty(0,1,4)
stop
}
}

actor BaseMovement : CustomInventory
{
//var int user_xThrust;
states
{
Pickup:
TNT1 A 0//insert all your mobility checks fellas
TNT1 A 0 A_JumpIfInventory("IAmFrozen",1,"Failed")//Almost universal lol
//TNT1 A 0 A_JumpIfInventory("PowerShock",1,"Failed")//Almost universal lol

TNT1 A 0 A_JumpIfInventory("QuarterStun",1,"Failed")//Cutman
TNT1 A 0 A_JumpIfInventory("FreezeVision",1,"Failed")//Iceman,Freezeman
TNT1 A 0 A_JumpIfInventory("BubbleTrapTime",1,"Failed")//Bubbleman
TNT1 A 0 A_JumpIfInventory("CaltropNoMobility",1,"Failed")//Shadowman
TNT1 A 0 A_JumpIfInventory("Needleman_TetheredTime",1,"Failed")//Needleman
TNT1 A 0 A_JumpIfInventory("BrightUltFreezeDamage",1,"Failed")//Brightman
TNT1 A 0 A_JumpIfInventory("DarkCannonDebuff",1,"Failed")//Darkman but also pretty much everything?
TNT1 A 0 A_JumpIfInventory("ShadeManStareStunned",1,"Failed")//Shademan
TNT1 A 0 A_JumpIfInventory("TerraFirmaFreeze",1,"Failed")


TNT1 A 0 A_Jump(256,"itTimeGo")


itTimeGo:
TNT1 A 0 //ACS_NamedExecuteWithResult("VC_Mobility",10.0,0,0,1)//A_ChangeVelocity(10,0,0,CVF_RELATIVE|CVF_REPLACE)
stop
Failed:
TNT1 A 0
stop
}
}

actor UltimateAttackItem1 : CustomInventory
{
	Tag "$ITEM_ULTIMATE"
	+inventory.undroppable
	inventory.amount 1
	inventory.maxamount 1
	inventory.icon "ULTAI0"
	scale 2.0
	+COUNTITEM
	+INVBAR
	states
	{
		Spawn:
		TNT1 A 0
		stop
		Failure:
		ULTA I 0
		ULTA I 0 A_PlaySoundEx("classes/itemfail","SoundSlot7")
		fail
		Haha:
		ULTA I 0 A_PlaySoundEx("item/skulllaugh","SoundSlot7")
		fail
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("ShortUltimateAmmo",100,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem1MM8 : UltimateAttackItem1
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem2 : UltimateAttackItem1
{
	states
	{
		Haha:
		ULTA I 0 A_PlaySoundEx("item/skulllaugh","SoundSlot7")
		fail
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("AcidBarrierVision",1,"Failure")
		ULTA I 0 A_JumpIfInventory("MediumShortUltimateAmmo",200,1)
		Goto Failure
		ULTA I 0 A_JumpIfInventory("UltAirCheck",1,"AirCheck")
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
		AirCheck:
		ULTA I 0 A_CheckFloor("ItWorked")
		goto Failure
		ItWorked:
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem2MM8 : UltimateAttackItem2
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem3 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("PowerUltBuildCooldown",1,"Failure")
		ULTA I 0 A_JumpIfInventory("MediumUltimateAmmo",300,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem3MM8 : UltimateAttackItem3
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem4 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("MediumLongUltimateAmmo",400,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem4MM8 : UltimateAttackItem4
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem5 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("LongUltimateAmmo",500,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem5MM8 : UltimateAttackItem5
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem6 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("VeryLongUltimateAmmo",600,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem6MM8 : UltimateAttackItem6
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem7 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("LongestUltimateAmmo",700,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem7MM8 : UltimateAttackItem7
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem8 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("MaximumUltimateAmmo",800,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem8MM8 : UltimateAttackItem8
{
	inventory.icon "ULTAX0"
}

actor UltimateAttackItem9 : UltimateAttackItem1
{
	states
	{
		Use:
		ULTA I 0 A_JumpIfInventory("SkullDebuffDamage",1,"Haha")
		ULTA I 0 A_JumpIfInventory("FrozenByFlashman",1,"Failure")
		ULTA I 0 A_JumpIfInventory("TerminationUltimateAmmo",1500,1)
		Goto Failure
		ULTA I 0 A_GiveInventory("UltAttackFlag",1)
		fail
	}
}

actor UltimateAttackItem9MM8 : UltimateAttackItem9
{
	inventory.icon "ULTAX0"
}

actor UltAttackFlag : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor PowerUltBuildCooldown : PowerUp {}

actor UltBuildCooldownGiver : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	+INVENTORY.ALWAYSPICKUP
	Inventory.MaxAmount 0
	Powerup.Type "PowerUltBuildCooldown"
}

actor UltTimeLimit : inventory
{
	inventory.amount 50
	inventory.maxamount 50
}

actor InvProtection : inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor DeathGFX
{
	height 1
	radius 1
	+NOINTERACTION
	+NOGRAVITY
	-SOLID
	+DONTBLAST
	PROJECTILE
	States
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,16,0)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,8,8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,0,16)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,-8,8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,-16,0)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,-8,-8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,0,-16)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,8,-8)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,6,0)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,3,3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,0,6)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,-3,3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,-6,0)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,-3,-3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,0,-6)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,3,-3)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,8,0,8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,0,0,16)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,-8,0,8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,-8,0,-8)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,0,0,-16)
		TNT1 A 0 A_SpawnItemEx("DeathFX1",0,0,0,8,0,-8)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,3,0,3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,0,0,6)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,-3,0,3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,-3,0,-3)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,0,0,-6)
		TNT1 A 0 A_SpawnItemEx("DeathFX2",0,0,0,3,0,-3)
		stop
	}
}

actor HalfHalfDamageProtection : PowerProtection
{
Powerup.Duration 0x7FFFFFFD
damagefactor "Normal", 0.25
}

actor HalfDamageProtection : PowerProtection
{
Powerup.Duration 0x7FFFFFFD
DamageFactor "Normal", 0.5
}

actor QuarterDamageProtection : PowerProtection
{
Powerup.Duration 0x7FFFFFFD
DamageFactor "Normal", 0.75
}

actor UnSolid : Inventory
{
inventory.amount 1
inventory.maxamount 1
}

actor ReSolidifier
{
Height 0
Radius 0
+NOINTERACTION
-SOLID
+NOGRAVITY
+MISSILE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_GiveToTarget("UnSolid",1)
Spawn2:
TNT1 A 0 A_GiveToTarget("ReSolidifierCheckPickup",1)
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("UnSolid",1,"Spawn2")
stop
Death:
TNT1 A 0
stop
}
}

actor ReSolidifierCheckPickup : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("ReSolidifierCheck", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor ReSolidifierCheck
{
PROJECTILE
+DONTSPLASH
+SKYEXPLODE
//+NOINTERACTION
//+NOCLIP
Damage (0)
//radius 160
//height 160
//radius 16
//height 56
radius 24
height 84
States
{
Spawn:
TNT1 A 0
TNT1 A 1
TNT1 A 0 A_GiveToTarget("ReSolidify",1)
stop
Death:
XDeath:
TNT1 A 0
stop
}
}

actor ReSolidify : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("UnSolid",1,"Pickup2")
stop
Pickup2:
TNT1 A 0 A_ChangeFlag("SOLID",1)
TNT1 A 0 A_TakeInventory("UnSolid",1)
stop
}
}

actor NapalmExplodeFX
{
Speed 0
Damage 0
Scale 2.5
Height 0
Radius 0
+NOGRAVITY
+NOINTERACTION
+NOCLIP
-SOLID
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
NAPA EFGHIJKLMNOPQRS 2
stop
}
}

actor NapalmExplodeFX2 : NapalmExplodeFX
{
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
NAPA EFGHIJKLMNOPQRS 1
stop
}
}

//Copy-pasted from CBM
actor TempPitProtect_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 //insert possible variable here
TNT1 A 0 A_JumpIfInventory("PowerTempPitProtect",1,"Pickup2")
TNT1 A 0 A_ChangeFlag("NOBLOCKMONST",0)
TNT1 A 0 A_SpawnItemEx("TempPitProtect_H")
Pickup2:
TNT1 A 0 A_GiveInventory("PowerTempPitProtect",1)
stop
No:
TNT1 A 0
stop
}
}

actor PowerTempPitProtect : Powerup {Powerup.Duration 35}
actor IGotGrabbed : Powerup {Powerup.Duration 35}

//Helper moved to BasicActors.txt

actor TempPitProtectEnd_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsBot",1,"Pickup2")
TNT1 A 0 A_ChangeFlag("NOBLOCKMONST",1)
Pickup2:
TNT1 A 0
stop
}
}

actor UltSoundWatcherSpawn1: CustomInventory
{
inventory.amount 1
inventory.maxamount 1
+INVENTORY.AUTOACTIVATE
+COUNTITEM
+INVBAR
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher1")
stop
}
}

actor UltSoundWatcherSpawn2: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher2")
stop
}
}

actor UltSoundWatcherSpawn3: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher3")
stop
}
}

actor UltSoundWatcherSpawn4: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher4")
stop
}
}

actor UltSoundWatcherSpawn5: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher5")
stop
}
}

actor UltSoundWatcherSpawn6: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher6")
stop
}
}

actor UltSoundWatcherSpawn7: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher7")
stop
}
}

actor UltSoundWatcherSpawn8: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher8")
stop
}
}

actor UltSoundWatcherSpawn9: UltSoundWatcherSpawn1
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEx("UltReadySoundWatcher9")
stop
}
}

actor UltReadySoundWatcher1
{
Height 0
Radius 0
+NOINTERACTION
-SOLID
+NOGRAVITY
+MISSILE
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("ShortUltimateAmmo",100,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0, "Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker1",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("ShortUltimateAmmo",100,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher2 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",200,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MetSuitStart",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker2",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MetSuitStart",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",200,"Waiting")
goto Spawn
}
}

actor UltReadySoundWatcher3 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("MediumUltimateAmmo",300,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker3",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MediumUltimateAmmo",300,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher4 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("MediumLongUltimateAmmo",400,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MetSuitEnd",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker4",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MetSuitEnd",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MediumLongUltimateAmmo",400,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher5 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("LongUltimateAmmo",500,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker5",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("LongUltimateAmmo",500,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher6 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("VeryLongUltimateAmmo",600,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker6",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("VeryLongUltimateAmmo",600,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher7 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("LongestUltimateAmmo",700,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker7",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("LongestUltimateAmmo",700,"Waiting")
goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher8 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIfInTargetInventory("MaximumUltimateAmmo",800,"Sound")
TNT1 A 0 A_JumpIfInTargetInventory("IsTheTerminator",1,"Death")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
loop
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 A 0 A_GiveToTarget("UltPassChecker8",1)
TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("MaximumUltimateAmmo",800,"Waiting")
Goto Spawn
Death:
TNT1 A 0
stop
}
}

actor UltReadySoundWatcher9 : UltReadySoundWatcher1
{
States
{
Spawn:
TNT1 A 0
TNT1 AAA 1 A_JumpIfInTargetInventory("TerminationUltimateAmmo",1500,"Sound")
TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
goto Spawn+3
Sound:
TNT1 A 0 A_GiveToTarget("UltSoundPlayer")
Waiting:
TNT1 AA 1 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0)==0,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("TerminationUltimateAmmo",1500,"Waiting")
Goto Spawn+3
Death:
TNT1 A 0
stop
}
}

actor UltSoundPlayer : CustomInventory
{
states
{
Pickup:
TNT1 A 0 ACS_NamedExecuteAlways("VC_UltReadySound",0)
TNT1 A 0 A_JumpIfInventory("LightTeamFlag",1,"PickupL")
TNT1 A 0 A_JumpIfInventory("WilyTeamFlag",1,"PickupW")
TNT1 A 0 A_JumpIfInventory("CossackTeamFlag",1,"PickupC")
TNT1 A 0 A_JumpIfInventory("KingTeamFlag",1,"PickupK")
stop
PickupL:
TNT1 A 0 A_SpawnItemEx("UltIndicatorL")
stop
PickupW:
TNT1 A 0 A_SpawnItemEx("UltIndicatorW")
stop
PickupC:
TNT1 A 0 A_SpawnItemEx("UltIndicatorC")
stop
PickupK:
TNT1 A 0 A_SpawnItemEx("UltIndicatorK")
stop
Nope:
TNT1 A 0
stop
}
}

actor UltIndicatorL : BaseShieldWarper
{
VisibleToTeam 0
States
{
Spawn:
TNT1 A 0
TNT1 A 0 ACS_NamedExecuteAlways("core_shieldwarper", 0, 1)
TNT1 A 0 A_Jump(256, "Shield")
Goto Shield

Shield:
ULTA J 0 A_JumpIfInTargetInventory("PowerUltBuildCooldown",1,"Death")
ULTA J 0 A_JumpIfInTargetInventory("UltPassUsed",1,"Death")
ULTA J 1 A_Warp(AAPTR_TARGET, 0, 0, 0, 0, WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
loop

Death:
TNT1 A 0
stop
}
}

actor UltIndicatorW : UltIndicatorL
{
VisibleToTeam 1
}

actor UltIndicatorC : UltIndicatorL
{
VisibleToTeam 2
}

actor UltIndicatorK : UltIndicatorL
{
VisibleToTeam 3
}

actor QuakeFX
{
	+NOINTERACTION
	+NOGRAVITY
	+CLIENTSIDEONLY
	+FORCEXYBILLBOARD
	-SOLID
	scale 2.5
	height 1
	radius 1
	reactiontime 12
	var int user_angle;
	States
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_SetUserVar("user_angle", random(0, 6))
		SpawnLoop:
		TNT1 A 0 A_SpawnItemEx("QuakeParticle", random(320,480), 0, -(z-floorz), 60, 0, 5, user_angle, SXF_ABSOLUTEANGLE|SXF_NOCHECKPOSITION)
		TNT1 A 0 A_SetUserVar("user_angle", user_angle + 30)
		TNT1 A 0 A_Countdown
		loop
		Death:
		TNT1 A 0
		stop
	}
}

actor QuakeFX2 : QuakeFX
{
	reactiontime 6
	States
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_SetUserVar("user_angle", random(6, 12))
		SpawnLoop:
		TNT1 A 0 A_SpawnItemEx("QuakeParticle", random(160,320), 0, -(z-floorz), 60, 0, 5, user_angle, SXF_ABSOLUTEANGLE|SXF_NOCHECKPOSITION)
		TNT1 A 0 A_SetUserVar("user_angle", user_angle + 60)
		TNT1 A 0 A_Countdown
		loop
		Death:
		TNT1 A 0
		stop
	}
}

actor QuakeFX3 : QuakeFX
{
	reactiontime 12
	States
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_SetUserVar("user_angle", random(0, 6))
		SpawnLoop:
		TNT1 A 0 A_SpawnItemEx("QuakeParticle", random(0,160), 0, (-(z-floorz))+8, 60, 0, 0, user_angle, SXF_ABSOLUTEANGLE|SXF_NOCHECKPOSITION)
		TNT1 A 0 A_SetUserVar("user_angle", user_angle + 30)
		TNT1 A 0 A_Countdown
		loop
		Death:
		TNT1 A 0
		stop
	}
}

actor QuakeParticle
{
	+CLIENTSIDEONLY
	+NOINTERACTION
	-SOLID
	+NOGRAVITY
	height 0
	radius 0
	Scale 2.5
	States
	{
		Spawn:
		QUAK AB 3
		stop
	}
}

actor QuarterStun : PowerupGiver
{
  inventory.maxamount 0
  powerup.duration 9
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

//Flinger (from Reimagined Classes)
actor BaseFlinger
{
//+SERVERSIDEONLY
PROJECTILE
+NOINTERACTION
+NOCLIP
+DONTBLAST
damage 0
radius 1
height 1
speed 0
var int user_force;
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-80) //The higher the number sans the -, the stronger
goto Spawn3
Spawn3: //For half and quarter knockback -Fr3ak
TNT1 A 0 A_JumpIfInTargetInventory("IsHuge",1,"Half")
TNT1 A 0 A_JumpIfInTargetInventory("IsLarge",1,"Quarter")
goto Spawn2
Half:
TNT1 A 0 A_SetUserVar("user_force",user_force/2)
goto Spawn2
Quarter:
TNT1 A 0 A_SetUserVar("user_force",user_force*0.75)
goto Spawn2
Spawn2:
TNT1 A 0 A_TransferPointer(AAPTR_TARGET,AAPTR_DEFAULT,AAPTR_TARGET,AAPTR_TRACER) //target's target to self's tracer
TNT1 A 0 A_FaceTracer
TNT1 A 0 ThrustThing(angle*256/360,user_force,1,ACS_ExecuteWithResult(257,0))
stop
Death:
TNT1 A 0
stop
}
}

actor BaseFlinger2 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-120)
goto Spawn3
}
}

actor BaseFlinger3 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-40)
goto Spawn3
}
}

actor BaseFlinger4 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-5)
goto Spawn3
}
}

actor BaseFlinger5 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-10)
goto Spawn3
}
}

actor BaseFlinger6 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-15)
goto Spawn3
}
}

actor BaseFlinger7 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-100)
goto Spawn3
}
}

actor BaseFlinger8 : BaseFlinger
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("NoPushFlag",1,"Death")
TNT1 A 0 A_SetUserVar("user_force",-60)
goto Spawn3
}
}

actor BaseWallRushChecker
{
Height 0
Radius 0
Damage (0)
+NOINTERACTION
+NOCLIP
DamageType "RaThorWallRush"
Obituary "$OB_RATHOR7"
PROJECTILE
states
{
Spawn:
TNT1 A 0
TNT1 A 0 A_RearrangePointers(AAPTR_DEFAULT, AAPTR_DEFAULT, AAPTR_TARGET)
TNT1 A 0 A_TransferPointer(AAPTR_TARGET, AAPTR_DEFAULT, AAPTR_TARGET, AAPTR_TARGET)
SpawnStart0:
TNT1 A 0 A_GiveInventory("WallSlamTimer",1)
TNT1 A 0 A_SpawnItemEx("ConcreteSlamChecker",0,0,0)
SpawnStart:
TNT1 A 0 A_GiveInventory("WallSlamTrailPickup",1,AAPTR_TRACER)
TNT1 A 1 A_GiveInventory("WallSlamTimer",1,AAPTR_TRACER)
TNT1 A 0 A_Warp(AAPTR_TRACER,0,0,CallACS("TracerHeightGet")/2,0,0)
TNT1 A 0 A_SpawnItemEx("ConcreteSlamChecker",0,0,0)
TNT1 A 0 A_JumpIfInventory("RaThorWallRush_P",1,"DeathCheck",AAPTR_TRACER)
TNT1 A 0 A_JumpIfInventory("WallSlamRealTimer",1,"SpawnStart",AAPTR_TRACER)
TNT1 A 1 A_Jump(256,"Death")//goto Death
wait
DeathCheck:
TNT1 A 0 //A_JumpIfInventory("NewWallSlam",1,"Death",AAPTR_TRACER)
TNT1 A 0 A_SpawnItemEx("RaThorWallBonk")
TNT1 A 0 A_GiveInventory("WallSlamTimer",1)
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("ThorSlamRocks",random(-8,8),random(-8,8),random(-8,8),random(-8,8),random(-8,8),random(-8,8))
TNT1 A 0 A_Quake(7,35,0,256)
TNT1 A 0 A_PlaySoundEx("misc/quake","Body")
TNT1 A 0 A_PlaySoundEx("weapon/wallrush","Weapon")
TNT1 A 0 A_Warp(AAPTR_TRACER,0,0,CallACS("TracerHeightGet")/2,0,0)
TNT1 A 0 A_Explode(13,12,0,0,12)
TNT1 A 35
Death:
TNT1 A 2 A_GiveInventory("TempPitProtectEnd_P",1,AAPTR_TRACER)
stop
}
}

actor Shocked2 : PowerupGiver //1.5x stun
{
  inventory.maxamount 0
  powerup.duration 53
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

actor Shocked3 : PowerupGiver //Half stun
{
  inventory.maxamount 0
  powerup.duration 17
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

actor Shocked4 : PowerupGiver //2.0x stun
{
  inventory.maxamount 0
  powerup.duration 70
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

actor Shocked5 : PowerupGiver //3.0x stun
{
  inventory.maxamount 0
  powerup.duration 105
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

actor Shocked6 : PowerupGiver //6.0x stun
{
  inventory.maxamount 0
  powerup.duration 210
  powerup.color "00 00 00", 0.0
  powerup.type "PowerShock"
  +INVENTORY.AUTOACTIVATE
  +INVENTORY.ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A 6
    loop
  }
}

actor WeaponGetter : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("IsDead",1,"Nope")
TNT1 A 0 A_PlaySoundEx("classes/weaponget","Auto")
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,0,500)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,0,-500)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,500,0)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,-500,0)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,250,250)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,-250,-250)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,-250,250)
TNT1 A 0 A_SpawnItemEx("WeaponGetFX",0,250,-250)
Nope:
TNT1 A 0
stop
}
}

actor WeaponGetFX
{
height 1
radius 1
+NOCLIP
+NOINTERACTION
+NOGRAVITY
+DONTBLAST
scale 2.5
PROJECTILE
Speed 25
reactiontime 10
States
{
Spawn:
HARD B 0
HARD BB 1 A_JumpIfCloser(20,"Death")
HARD B 0 A_CustomMissile("WeaponGetFX3",0,0,0,0)
stop
Death:
HARD B 0
stop
}
}

actor WeaponGetFX2
{
height 1
radius 1
+NOCLIP
+NOINTERACTION
+NOGRAVITY
-SOLID
+DONTBLAST
scale 2.5
PROJECTILE
Speed 25
States
{
Spawn:
MMFX E 0
MMFX E 1 A_JumpIfCloser(20,"Death")
MMFX E 0 A_CustomMissile("WeaponGetFX3",0,0,0,0)
stop
Death:
MMFX E 0
stop
}
}

actor WeaponGetFX3
{
height 1
radius 1
+NOCLIP
+NOINTERACTION
+NOGRAVITY
-SOLID
+DONTBLAST
scale 2.5
PROJECTILE
Speed 25
States
{
Spawn:
MMFX D 0
MMFX DD 1 A_JumpIfCloser(20,"Death")
MMFX D 0 A_CustomMissile("WeaponGetFX4",0,0,0,0)
stop
Death:
MMFX D 0
stop
}
}

actor WeaponGetFX4
{
height 1
radius 1
+NOCLIP
+NOINTERACTION
+NOGRAVITY
-SOLID
+DONTBLAST
scale 2.5
PROJECTILE
Speed 25
States
{
Spawn:
MMFX C 0
MMFX CC 1 A_JumpIfCloser(20,"Death")
MMFX C 0 A_CustomMissile("WeaponGetFX5",0,0,0,0)
stop
Death:
MMFX C 0
stop
}
}

actor WeaponGetFX5
{
height 1
radius 1
+NOCLIP
+NOINTERACTION
+NOGRAVITY
-SOLID
+DONTBLAST
scale 2.5
PROJECTILE
Speed 25
States
{
Spawn:
MMFX B 0
MMFX BB 1 A_JumpIfCloser(20,"Death")
MMFX B 0 A_CustomMissile("WeaponGetFX",0,0,0,0)
stop
Death:
MMFX B 0
stop
}
}

actor DeathFX1VC : ExplosionEffect1 replaces DeathFX1
{
PROJECTILE
Speed 10
reactiontime 10
States
{
Spawn:
MX01 ABCDE 2
MX01 A 0 A_CountDown
loop
}
}

actor DeathFX2VC : DeathFX1VC replaces DeathFX2
{
speed 5
}

actor ThorSlamRocks
{
PROJECTILE
translation "208:208=217:217", "46:46=235:235"
Scale 2.5
Height 4
Radius 4
gravity 1.6
-NOGRAVITY
+NOCLIP
+BOUNCEONFLOORS
bouncefactor 0.6
Bouncecount 10
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
TNT1 A 0 A_Recoil(random(-5,-10))
TNT1 A 0 ThrustThingZ(0, random(10,50), 0, 1)
POWS B 2
POWS B 0 A_ChangeFlag("NOCLIP",0)
loopit:
POWS B 2 A_Jump(1,"Death")
loop
Death:
TNT1 A 0
stop
XDeath:
TNT1 A 0
stop
}
}

actor MM7DeathFX1 : DeathFX1VC
{
States
{
Spawn:
7EXP ABCDE 2
7EXP A 0 A_CountDown
loop
}
}

actor MM7DeathFX2 : MM7DeathFX1
{
speed 5
States
{
Spawn:
7EXP CDDEEAABBC 1
7EXP C 0 A_CountDown
loop
}
}

actor FakeDeathFXMM7 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,1.875,0.625)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,-1.875,-0.625)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,1.875,-0.625)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,-1.875,0.625)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,0.625,1.875)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,-0.625,-1.875)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,0.625,-1.875)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX1",0,0,0,0,-0.625,1.875)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,3.5,0)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,2.5,2.5)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,0,3.5)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,-2.5,2.5)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,-3.5,0)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,-2.5,-2.5)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,0,-3.5)
PLY1 Z 0 A_SpawnItemEx("MM7DeathFX2",0,0,0,0,2.5,-2.5)
TNT1 A 1
stop
}
}

actor MM3DeathFX1 : DeathFX1VC
{
States
{
Spawn:
MX01 ABCDE 5
MX01 AA 0 A_CountDown
loop
}
}

actor MM3DeathFX2 : MM3DeathFX1
{
speed 5
}

actor FakeDeathFXMM3 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM3DeathFX2", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
TNT1 A 1
stop
}
}

actor MM2DeathFX1 : DeathFX1VC
{
States
{
Spawn:
MX01 BCDEBCDE 1
MX01 A 0 A_CountDown
loop
}
}

actor MM2DeathFX2 : MM2DeathFX1
{
speed 5
}

actor FakeDeathFXMM2 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
TNT1 A 1
stop
}
}

actor MM1DeathFX1 : MM2DeathFX1
{
States
{
Spawn:
MX01 CDEBCDEB 1
MX01 A 0 A_CountDown
loop
}
}

actor FakeDeathFXMM1 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM1DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM1DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM1DeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM1DeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM2DeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
TNT1 A 1
stop
}
}

actor MM9DeathFX1 : DeathFX1VC
{
States
{
Spawn:
MX01 ABCDEABCDE 1
MX01 A 0 A_CountDown
loop
}
}

actor MM9DeathFX2 : MM9DeathFX1
{
speed 5
}

actor FakeDeathFXMM9 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM9DeathFX2", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED)
TNT1 A 1
stop
}
}

actor MMBDeathFX1 : DeathFX1VC
{
States
{
Spawn:
B3XP ABCDEF 2
B3XP A 0 A_CountDown
loop
}
}

actor MMBDeathFX2 : MMBDeathFX1
{
speed 5
States
{
Spawn:
B3XP FAABBCCDDEEF 1
B3XP C 0 A_CountDown
loop
}
}

actor MMBDeathFX3 : MMBDeathFX2
{
States
{
Spawn:
B3XP FABCDE 2 
B3XP C 0 A_CountDown
loop
}
}

actor FakeDeathFXMMB : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,4.2,0)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,3,3)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX2",0,0,0,0,0,4.2)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,-3,3)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,-4.2,0)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,-3,-3)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,0,-4.2)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX1",0,0,0,0,3,-3)
TNT1 A 11
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,3.75,1.25)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,-3.75,-1.25)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,3.75,-1.25)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,-3.75,1.25)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,1.25,3.75)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,-1.25,-3.75)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,1.25,-3.75)
PLY1 Z 0 A_SpawnItemEx("MMBDeathFX3",0,0,0,0,-1.25,3.75)
TNT1 A 1
stop
}
}

actor MM8DeathFX1 : DeathFX1VC
{
speed 6
States
{
Spawn:
8DFX ABCDEFGHIJKL 1
8DFX A 0 A_CountDown
loop
}
}

actor MM8DeathFX2 : MM8DeathFX1
{
speed 6.1
}

actor FakeDeathFXMM8 : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.9,  0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.4,  0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.4,  0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.9,  0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.9,  -0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.7,  -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  -0.4,  -0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.0,  -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.4,  -0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.7,  -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX1", 0, 0, 0, 0,  0.9,  -0.4, 0, SXF_MULTIPLYSPEED)
TNT1 A 18
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.9,  0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.4,  0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.4,  0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.7,  0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.9,  0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -1.0,  0.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.9,  -0.4, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.7,  -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  -0.4,  -0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.0,  -1.0, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.4,  -0.9, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.7,  -0.7, 0, SXF_MULTIPLYSPEED)
PLY1 Z 0 A_SpawnItemEx("MM8DeathFX2", 0, 0, 0, 0,  0.9,  -0.4, 0, SXF_MULTIPLYSPEED)
TNT1 A 1
stop
}
}

actor MMVDeathFX1 : DeathFX1VC
{
States
{
Spawn:
VXPL ABCD 2
VXPL A 0 A_CountDown
loop
}
}

actor MMVDeathFX2 : MMVDeathFX1
{
speed 5
}

actor FakeDeathFXMMV : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMVDeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
TNT1 A 1
stop
}
}

actor MMIIDeathFX1 : DeathFX1VC
{
States
{
Spawn:
VXPL ABC 5
VXPL AA 0 A_CountDown
loop
}
}

actor FakeDeathFXMMII : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMIIDeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
TNT1 A 1
stop
}
}

actor SARDeathFX1 : DeathFX1VC
{
States
{
Spawn:
PS1X A 0
PS1X A 0 A_PlaySoundEx("weapon/mm9explode2","Auto") 
PS1X ABCDEFGHIJ 1
stop
}
}

actor SARDeathFX2 : SARDeathFX1
{
scale 4.0
}

actor SARDeathFX3 : DeathFX1VC
{
States
{
Spawn:
PS1X K 0
PS1X K 70
PS1X KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 1 A_FadeOut(0.02)
stop
}
}

actor FakeDeathFXSAR : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
TNT1 A 0 A_SpawnItemEx("SARDeathFX3",0,0,0)
TNT1 A 0 A_SpawnItemEx("SARDeathFX2",0,0,32)
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
TNT1 A 6 A_SpawnItemEx("SARDeathFX1",random(0,40),0,random(-12,48),0,0,0,random(0,359))
stop
}
}

actor MMWTDeathFX1 : DeathFX1VC
{
States
{
Spawn:
G0FX BBCDDEA 1
G0FX B 0 A_CountDown
loop
}
}

actor MMWTDeathFX2 : MMWTDeathFX1
{
speed 5
}

actor FakeDeathFXMMWT : FakeDeathFX
{
scale 2.5
States
{
Spawn:
TNT1 A 1
G0FX ABBCDDEABBCDDEA 1
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0,  0.9,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0,  0.6,  0.6, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0,  0.0,  0.9, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0, -0.6,  0.6, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0, -0.9,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0, -0.6, -0.6, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0,  0.0, -0.9, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX1", 0, 0, 0, 0,  0.6, -0.6, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX2", 0, 0, 0, 0,  0.9,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX2", 0, 0, 0, 0,  0.0,  0.9, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX2", 0, 0, 0, 0, -0.9,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MMWTDeathFX2", 0, 0, 0, 0,  0.0, -0.9, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
TNT1 A 1
stop
}
}

actor MM11DeathFX1 : DeathFX1VC
{
renderstyle add
Speed 15
States
{
Spawn:
11DY EFGHIJKL 3
11DY EEE 0 A_CountDown
loop
}
}

actor MM11DeathFX2 : MM11DeathFX1
{
renderstyle translucent
alpha 0.7
}

actor FakeDeathFXMM11 : FakeDeathFX
{
reactiontime 3
States
{
Spawn:
TNT1 A 3
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX1", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0,  1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0,  0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0,  0.0,  1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0, -0.7,  0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0, -1.0,  0.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0, -0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0,  0.0, -1.0, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
PLY1 Z 0 A_SpawnItemEx("MM11DeathFX2", 0, 0, 0, 0,  0.7, -0.7, 0, SXF_MULTIPLYSPEED|SXF_TRANSFERTRANSLATION)
TNT1 A 12 A_Countdown
loop
}
}

actor PFDeathFX1 : DeathFX1VC
{
scale 3.5
reactiontime 5
States
{
Spawn:
2PFE ABCDEFGHIJKL 2
2PFE A 0 A_CountDown
loop
}
}

actor PFDeathFX2 : PFDeathFX1
{
scale 2.5
States
{
Spawn:
2PFE ABCDEFGHIJKL 2
2PFE A 1
stop
}
}

actor FakeDeathFXPF : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,1.875,0.625)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-1.875,-0.625)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,1.875,-0.625)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-1.875,0.625)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,0.625,1.875)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-0.625,-1.875)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,0.625,-1.875)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-0.625,1.875)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,3.5,0)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,2.5,2.5)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,0,3.5)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-2.5,2.5)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-3.5,0)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,-2.5,-2.5)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,0,-3.5)
PLY1 Z 0 A_SpawnItemEx("PFDeathFX1",0,0,0,0,2.5,-2.5)
TNT1 A 1
stop
}
}

actor PBDeathFX : DeathFX1VC
{
States
{
Spawn:
2PFE ABCDEFGHIJKABCDEFGHIJKABCDEFGHIJKABCDEFG 2
2PFE H 1
stop
}
}

actor FakeDeathFXPB : FakeDeathFX
{
States
{
Spawn:
TNT1 A 1
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,2.4,0.8)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-2.4,-0.8)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,2.4,-0.8)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-2.4,0.8)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,0.8,2.4)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-0.8,-2.4)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,0.8,-2.4)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-0.8,2.4)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,4.48,0)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,3.2,3.2)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,0,4.48)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-3.2,3.2)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-4.48,0)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,-3.2,-3.2)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,0,-4.48)
PLY1 Z 0 A_SpawnItemEx("PBDeathFX",0,0,0,0,3.2,-3.2)
TNT1 A 1
stop
}
}

const int IMMUNE_RADIUS = 1000;

actor SpecialDamageImmune : PowerProtection
{
Powerup.Duration 0x7FFFFFFD
damagefactor "Normal", 1.0
}

actor TurboRoaderBumpVC : CustomInventory replaces TurboRoaderBump //Sniper Joe related fix -Fr3ak
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("NoPushFlag",1,"Nope")
TNT1 A 1 ThrustThingZ(0, 40, 0, 0)
stop

Nope:
TNT1 A 0
stop
}
}

actor VCKillstreak : inventory
{
	inventory.amount 1
	inventory.maxamount 16
}

actor VCKillstreakHandler : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("VCKillstreak",16,"Nope")
TNT1 A 0 A_JumpIfInventory("LightTeamFlag",1,"Nope")
TNT1 A 0 A_JumpIfInventory("WilyTeamFlag",1,"Nope")
TNT1 A 0 A_JumpIfInventory("CossackTeamFlag",1,"Nope")
TNT1 A 0 A_JumpIfInventory("KingTeamFlag",1,"Nope")
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(975, 0)==0,"Pickup2") //Checks for Deathmatch mode
stop

Pickup2:
TNT1 A 0 A_GiveInventory("VCKillstreak",1)
TNT1 A 0 A_JumpIfInventory("VCKillstreak",16,"Pickup3")
stop

Pickup3:
TNT1 A 0 ACS_NamedExecute("VC_ClientSound",0,4)
TNT1 A 0 A_JumpIfInventory("IsFromMM8",1,"Pickup4")
TNT1 A 0 A_GiveInventory("BossMorphItem")
stop

Pickup4:
TNT1 A 0 A_GiveInventory("BossMorphItemMM8")
stop

Nope:
TNT1 A 0
stop
}
}

actor CanDeleteItem : inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

actor DeleteMeMetool : CustomInventory
{
States
	{
	Pickup:
	TNT1 A 0
	TNT1 A 0 A_JumpIfInventory("CanDeleteItem",1,"Pickup2")
	stop
	Pickup2:
	TNT1 A 0 Thing_Remove(0)
	stop
	}
}

actor SmallHealth_RespawnVC : 8BDMItemRespawnSmall replaces SmallHealth_Respawn
{
+VULNERABLE
	translation "192:192=4:4", "198:198=215:215"
	mass 1050
	States
	{
	Spawn:
	PUC0 AA 0 A_GiveInventory("CanDeleteItem")//SpawnItemEx("BassBoss1",0,0,10)
	TNT1 A 0
	goto Super::Spawn
	//stop
	}
}
actor BigHealth_RespawnVC : 8BDMItemRespawn replaces BigHealth_Respawn
{
+VULNERABLE
	translation "192:192=4:4", "198:198=215:215"
	mass 1050
	States
	{
	Spawn:
	PUC0 AA 0 A_GiveInventory("CanDeleteItem")//SpawnItemEx("BassBoss1",0,0,10)
	TNT1 A 0
	goto Super::Spawn
	//stop
	}
}
actor WeaponEnergy_RespawnVC : 8BDMColoredItemRespawnSmall replaces WeaponEnergy_Respawn
{ 
+VULNERABLE
mass 1050 
States
	{
	Spawn:
	PUC0 AA 0 A_GiveInventory("CanDeleteItem")//SpawnItemEx("BassBoss1",0,0,10)
	TNT1 A 0
	goto Super::Spawn
	//stop
	}
}
actor BigWeaponEnergy_RespawnVC : 8BDMColoredItemRespawn replaces BigWeaponEnergy_Respawn
{ 
+VULNERABLE
mass 1050 
	States
	{
	Spawn:
	PUC0 AA 0 A_GiveInventory("CanDeleteItem")//SpawnItemEx("BassBoss1",0,0,10)
	TNT1 A 0
	goto Super::Spawn
	//stop
	}
}

//Shadows
actor SmallHealth_RespawnShadowVC : 8BDMItemRespawnShadow replaces SmallHealth_RespawnShadow
{
+VULNERABLE
-NOINTERACTION
	mass 1050
	States
	{
	Spawn:
		HBAL A 0
		HBAL A 0 A_GiveInventory("CanDeleteItem")
		goto Super::Spawn
	}
}
actor BigHealth_RespawnShadowVC : 8BDMItemRespawnShadow replaces BigHealth_RespawnShadow
{
+VULNERABLE
-NOINTERACTION
	mass 1050
	States
	{
	Spawn:
		HBAL C 0
		HBAL C 0 A_GiveInventory("CanDeleteItem")
		goto Super::Spawn
	}
}
actor WeaponEnergy_RespawnShadowVC : 8BDMItemRespawnShadow replaces WeaponEnergy_RespawnShadow
{
+VULNERABLE
-NOINTERACTION
	mass 1050
	States
	{
	Spawn:
		EBAL A 0
		EBAL A 0 A_GiveInventory("CanDeleteItem")
		goto Super::Spawn
	}
}
actor BigWeaponEnergy_RespawnShadowVC : 8BDMItemRespawnShadow replaces BigWeaponEnergy_RespawnShadow
{
+VULNERABLE
-NOINTERACTION
	mass 1050
	States
	{
	Spawn:
		EBAL C 0
		EBAL C 0 A_GiveInventory("CanDeleteItem")
		goto Super::Spawn
	}
}


actor GrabProtectionBase : PowerProtection
{
	Powerup.Duration 0x7FFFFFFD
	DamageFactor "Normal", 0.25
}

actor BaseStunInflictor : CustomInventory
{
states
{
Pickup:
TNT1 A 0//insert all your inventory checks here
TNT1 A 0 A_JumpIfInventory("IAmFrozen",1,"Failed")
TNT1 A 0 A_JumpIfInventory("IsTheTerminator",1,"Failed")
TNT1 A 0 A_JumpIfInventory("BubbleVision", 1, "Failed")
TNT1 A 0 A_JumpIfInventory("DarkCannonDebuff",1,"Failed")
TNT1 A 0 A_JumpIfInventory("StoneStareProtect",1,"Failed")

//Insert any other universal thing you want to happen when a stun succeeds

TNT1 A 0 A_GiveInventory("StoneStareProtect",1)
TNT1 A 0 A_Jump(256,"Inflict")


Inflict:
TNT1 A 0 //This state is what the stuns would actually use
stop
Failed:
TNT1 A 0
stop
}
}