actor ClassBase : ClassBase3
{
states
{
//yo modders, replace this txt file and put your additional pain states here [Jaxof7]

//Example
//Pain.MegamanXBuster:
//"----" H 0 A_SpawnItemEx("FlashyMegamanX_FX")
//goto Pain

Pain.DMGNoHitstun:
"----" H 0
Goto Pain+2

Pain.DMGNoHitstunHeal:
"----" H 0 A_GiveInventory("DMGHealCheck",1)
Goto Pain+2

//august 12th 2036. the heat death of the universe
Death.MaestroFire:
Death.MaestroFireGuts:
Death.DrWily_Fire:Death.LightRyu_Fire:
Death.FireM_Storm:Death.FireM_Wave:Death.FireM_StormBit:Death.FireM_Spin:Death.FireM_Wave2:
Death.HeatM_Pillar:Death.HeatM_Tackle:Death.HeatM_Toss:Death.HeatM_Shot:
Death.PharaohM_Hold:Death.PharaohM_Aura:Death.PharaohM_Shot1:Death.PharaohM_Shot:Death.PharaohM_Shot3:Death.PharaohM_Wave:
Death.NapalmM_Bomb:Death.NapalmM_Missile:
Death.FlameM_Shot:Death.FlameM_Pillar:
Death.TurboM_WheelBit:Death.TurboM_Wheel:
Death.BurnerM_Shot:Death.BurnerM_Shot2:Death.BurnerM_DiveLand:Death.BurnerM_FireLine:
Death.MagmaM_Shot1:Death.MagmaM_Shot2:
Death.SunG_Wave:Death.SunG_WaveBit:Death.SunG_Slam:Death.SunG_Afterburn:Death.SunG_Beam:Death.SunG_Spark:Death.SunG_Rain:Death.SunG_Fire:Death.SunG_Rat:
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
goto Death

//electrical stimulation applied to a
Death.MegaElecBall:Death.MaestroShock:Death.MaestroShock2:
Death.ElecM_Beam:Death.ElecM_Zap:Death.ElecM_TeleZap:Death.ElecM_BeamL:Death.ElecM_BeamR:
Death.SparkM_Lob:Death.SparkSaw:Death.SparkShot1:Death.SparkShot2:Death.SparkShot3:Death.SparkM_Shock2:Death.SparkSuplex:Death.SparkShotAlt:
Death.DM2_Spark:Death.DarkM2_Level2:Death.DM2_Shield:
Death.KnightM_CastleCrush:
Death.CloudM_Shot:Death.CloudM_Zapper:Death.CloudM_Spark:Death.CloudM_Charge:
Death.ClownM_Aura:Death.ClownM_Aura2:Death.ClownM_Claw:Death.ClownM_ClawChain:Death.ClownM_Ground:
Death.DynamoTendril:Death.DynamoM_Orb:Death.DynamoM_Bolt:Death.DynamoM_TaggedBolt:Death.DynamoM_DishZap:
Death.PlugM_Plugged:Death.PlugM_Ball:
Death.SheepM_Bolt:Death.ArchOfWool:Death.ArchOfWoolGround:
Death.SparkChaserTerra:Death.Terra_Suppressor:Death.Jupiter_Beam:Death.Jupiter_Shot:
Death.FuseM_Scrambeam:Death.FusemanMeleeX:Death.FusemanMeleeBreaker:Death.FuseM_Breaker:Death.FuseM_Ground:Death.FuseM_Thunder:
"----" H 0 A_GiveInventory("ElectricDeathFlag",1)
goto Death

Pain.BasicPunch:
"----" H 0
goto Pain+2
Death.BasicPunch:
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Pain.RingM_Cage:
"----" H 0 A_GiveInventory("RingM_CageProtect",1)
//"----" H 0 A_SpawnItemEx("PainKnightM_PushHit")
Goto Pain+2

Pain.LightRyu_SpinKick:
Pain.SpringM_Fist:
"----" H 0 A_GiveInventory("TempPitProtect_P",1)
Goto Pain+2

Pain.NitroM_Ram:
"----" H 0 A_SpawnItemEx("PainNitroM_LeapHit",1)
"----" H 0 A_GiveInventory("NitroM_RamProtect",1)
Goto Pain+2
Death.NitroM_Ram:
goto Death.Flatten

Pain.NitroM_Ram2:
"----" H 0 ThrustThingZ(0,65,0,1)
"----" H 0 A_GiveInventory("NitroM_RamProtect",1)
Goto Pain+2
Death.NitroM_Ram2:
"----" H 0 ThrustThingZ(0,65,0,0)
Goto Death

Pain.ChillM_SpikeC:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("ChillM_AllSpikeProtect",1)
Goto Pain+2
Pain.ChillM_SpikeW:
"----" H 0 A_ScaleVelocity(.5)
"----" H 0 A_GiveInventory("ChillM_AllSpikeProtect",1)
Goto Pain+2
Pain.ChillM_Spike:
"----" H 0 A_GiveInventory("ChillM_AllSpikeProtect",1)
"----" H 0 A_ScaleVelocity(.95)
Goto Pain+2

Pain.ChillM_Salvo:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("ChillM_SalvoProtect",1)
Goto Pain+2
Pain.ChillM_Shot:
"----" H 0 A_ScaleVelocity(.9)
Goto Pain+2
Pain.ChillM_ShotW:
"----" H 0 
Goto Pain+2

Death.ChillM_Salvo:Death.ChillM_Shot:Death.ChillM_ShotW:Death.ChillM_Spike:Death.ChillM_SpikeC:Death.ChillM_SpikeW:
"----" H 0 A_GiveInventory("IceDeathFlag",1)
goto Death


Pain.TundraM_Gear:
"----" H 0 A_GiveInventory("TundraM_GearProtect",1)
Goto Pain+1

Pain.SunG_Wave:
"----" H 0 A_GiveInventory("SunG_WaveProtect",1)
Goto Pain+2

Pain.SunG_Slam:
"----" H 0 A_GiveInventory("SunG_SlamProtect",1)
"----" H 0 A_PlaySoundEx("misc/eclipsedarkshot","SoundSlot5")
"----" H 0 ThrustThingZ(0,60,0,0)
"----" H 0 A_SpawnItemEx("PainSunG_FireHit",0,0,0,0,0,0,0,1)
Goto Pain+2

Pain.BombM_Split:
"----" H 0 
Goto Pain+2

Death.BombM_Split:
"----" H 0 
Goto Death

Pain.SunG_Rain:
"----" H 0 A_GiveInventory("SunWeaknessPickup",1)
Goto Pain+2

Pain.SunG_Beam:
"----" H 0 A_GiveInventory("SunG_BeamProtect",1)
Goto Pain+2

Pain.SunG_Fire:
"----" H 0 A_GiveInventory("SunG_FireProtect",1)
Goto Pain+2

Pain.SunG_WaveBit:
Pain.SunG_Afterburn:
Pain.SunG_Spark:
Pain.SunG_Rat:

Pain.YD_ReturnCube:
Pain.YD_BounceCube:
Pain.YD_DevilRay:
Pain.YD_BumoRoach:

Pain.PlantM_Vine://for clown pegs
"----" H 0 
goto Pain+2

Pain.FuseM_Scrambeam:
"----" H 0 A_JumpIfInventory("FuseWeakness2",1,"Pain.FuseM_ScrambeamBreaker")
"----" H 0 A_GiveInventory("FuseM_BreakerCheck")
"----" H 0 A_GiveInventory("FusemanBeamProtect")
goto Pain+2

Pain.FusemanMeleeX:
"----" H 0 A_JumpIfInventory("FuseWeakness2",1,"Pain.FusemanMeleeBreaker")
"----" H 0 A_GiveInventory("FuseM_BreakerCheck")
"----" H 0 A_GiveInventory("FusemanBeamProtect")
goto Pain+2
Pain.FuseM_ScrambeamBreaker:
"----" H 0 ThrustThingZ(0,50,0,0)
"----" H 0 A_GiveInventory("Shocked",1)
"----" H 0 //A_SpawnItemEx("PainConcreteShoulderHit",1)
"----" H 0 A_GiveInventory("FuseM_BreakerCheck")
"----" H 0 A_GiveInventory("FusemanBeamProtect")
goto Pain+2

Pain.FuseM_Breaker:
"----" H 0 A_GiveInventory("FuseM_BreakerProtect")
"----" H 0 A_SpawnItemEx("PainKnightBonkHit")
"----" H 0 A_SpawnItemEx("FuseBreaker",0,0,0,0,0,0,0,1)
goto Pain+2

Pain.FuseM_Thunder:
"----" H 0 A_GiveInventory("FuseM_ThunderProtect")
goto Pain+2

Pain.ShadeM_Dunk:
"----" H 0 ThrustThingZ(0,60,1,0)
Goto Pain+2

Pain.Roll_Swing:
"----" H 0 A_GiveInventory("Roll_SwingProtect",1)
"----" H 0 A_GiveToTarget("RollHyperDashAmmo",55)
"----" H 0 A_GiveToTarget("RollHealAmmo",1)
Goto Pain+2

Death.Roll_Swing:
"----" H 0 A_GiveToTarget("RollHealAmmo",1)
"----" H 0 A_GiveToTarget("RollHyperDashAmmo",55)
"----" H 0 ThrustThing(random(0,255),15,1,0)
"----" H 0 ThrustThingZ(0,50,0,0)
Goto Death.FlingDamage

Pain.BlizzardM_HeavyWeather:
"----" H 0 A_ScaleVelocity(.75)
"----" H 0 A_GiveInventory("BlizzardHitItem",1)
goto Pain+1

Pain.BlizzardM_SnowBall:
"----" H 0 A_GiveInventory("IcemanSlowPickup",1)
"----" H 0 A_GiveInventory("BlizzardHitItem",1)
"----" H 0 A_GiveInventory("BlizzardM_BowlProtect",1)
goto Pain+1
Pain.BlizzardM_Shot:
"----" H 0 A_GiveInventory("BlizzardHitItem",1) //A_ScaleVelocity(.90)
goto Pain+2

Death.BlizzardM_SnowBall:
Death.BlizzardM_HeavyWeather:
Death.BlizzardM_Shot:
"----" H 0 A_GiveInventory("BlizzardHitItem",1)
"----" H 0 A_GiveInventory("IceDeathFlag",1)
goto Death

Death.BlizzardM_Bowl:
"----" H 0 A_GiveToTarget("CrackFlag",1)
"----" H 0 A_GiveInventory("BlizzardHitItem",1)
"----" H 0 A_SpawnItemEx("DeathBlizzardM_BowlHit")
"----" H 0 ThrustThingZ(0,106,0,0)
goto Death.FlingDamage

Pain.King_XShock:
"----" H 0 A_GiveInventory("King_XShockProtect",1)
"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
"----" H 0 A_GiveInventory("Shocked_18",1)
Goto Pain+1

Pain.GrenadeM_Bomb:
"----" H 0 A_ScaleVelocity(.90)
Pain.GrenadeM_Flash:
"----" H 0 A_SpawnItemEx("PainGrenadeM_BombHit")
goto Pain+2

Pain.YD_DevilHorn:
"----" H 0 A_JumpIfInventory("YD_DevilHornKnockProtect",1,3)
"----" H 0 A_GiveInventory("YD_DevilHornKnockProtect",1)
"----" H 0 ThrustThingZ(0,80,0,0)
"----" H 0 A_GiveInventory("YD_DevilHornProtect",1)
goto Pain+2

Death.YD_DevilHorn:
"----" H 0 ThrustThingZ(0,200,0,0)
Goto FlingDeath

Pain.SwordM_StatueSmash:
"----" H 0 A_JumpIfInventory("CastleCrushShock",1,2)
"----" H 0 A_GiveInventory("CastleCrushShock",1)
"----" H 0 A_GiveInventory("SwordM_StatueSmashPowerProtectToavoidThatWeirdBugThatIBeenTryingToFixFor3Patches",1)
"----" H 0 A_SpawnItemEx("KnightM_ShockFX",4,0,32)
"----" H 0 A_GiveInventory("CastleCrushProtect",1)  
Goto Pain+1 
Death.SwordM_StatueSmash:
"----" H 0 
goto Death.MetalPress

Pain.SparkM_Lob:
"----" HHH 0 A_GiveInventory("Shock_5",1)
"----" H 0 A_GiveInventory("SparkShockFXGiver",1)
"----" H 0 A_GiveInventory("SparkM_LobProtect",1)
Goto Pain+2

Pain.SparkSaw:
//"----" H 0 A_ScaleVelocity(0.9)
"----" H 0 A_GiveToTarget("Health",1)
"----" H 0 A_GiveInventory("ShockChainsawProtect",1)
Goto Pain+2

Pain.SparkShot1:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("SparkShockFXGiver",1)
"----" HHH 0 A_GiveInventory("Shock_5",1)
Goto Pain+2

Pain.SparkShot2:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("SparkShockFXGiver",1)
"----" HHHHH 0 A_GiveInventory("Shock_5",1)
Goto Pain+1

Pain.SparkShot3:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("SparkShockFXGiver",1)
"----" HHHHHHH 0 A_GiveInventory("Shock_5",1)
Goto Pain+1

Pain.SparkM_Shock2:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("SparkShockFXGiver",1)
"----" H 0 A_GiveInventory("Shock_5",1)
Goto Pain+1

Pain.SparkSuplex:
"----" H 0 A_GiveInventory("SparkReloadProtect")
Goto Pain+2

Pain.SparkShotAlt:
"----" H 0 //A_GiveInventory("PowerSparkSlow",1)
Goto Pain+1

Pain.Terra_Suppressor:
"----" H 0 A_GiveInventory("TerraSuppressorProtect",1)
Goto Pain+2

Pain.MagicM_Card2:
"----" H 0 A_GiveInventory("MagicM_Card2Protect",1)
Goto Pain

Pain.Pluto_Dash3:
"----" H 0 A_GiveInventory("Pluto_Dash3Protect",1)
Goto Pain+2

Pain.Pluto_Swipe:
"----" H 0 A_GiveInventory("Pluto_FSwipesProtect",1) 
"----" H 0 A_PlaySoundEx("weapon/slashclawhit","SoundSlot5")
Goto Pain+2

Pain.DM2_Spark:
"----" H 0 A_ScaleVelocity(.75)
Goto Pain+2

Pain.JunkM_Shot2:
"----" H 0 A_ScaleVelocity(.25)
Goto Pain+2

Pain.SheepM_Bolt:
"----" H 0 A_ScaleVelocity(.8)
Goto Pain+2

Pain.StoneM_Toss:
"----" H 0 A_ScaleVelocity(0.65)
Goto Pain+2

Pain.AstroM_Vision:
"----" H 0 A_ScaleVelocity(.9)
Goto Pain+2

Pain.BounceM_Slam:
"----" H 0 A_GiveInventory("BounceM_SlamProtect",1)
"----" H 0 ThrustThingZ(0,12,0,0)
"----" H 0 A_SpawnItemEx("PainKnightBonkHit")
Goto Pain+2

Pain.BounceReloadBalls:
"----" H 0 A_GiveInventory("BounceM_SlamBallsProtect",1) 
Goto Pain+2

Pain.BounceM_Bopper:
"----" H 0 //A_SpawnItemEx("PainBounceBopHit")
Goto Pain+2

Pain.BounceM_BopperX:
"----" H 0 A_SpawnItemEx("PainBounceBopXHit")
Goto Pain+2

Pain.BounceM_Pull:
"----" H 0 A_GiveInventory("BounceM_PullProtect",1)//BounceM_Drag protection?
"----" H 0 A_GiveInventory("PainStopC",1)
"----" H 0 ThrustThingZ(0,30,0,0)
"----" H 0 A_SpawnItemEx("PainBounceM_PullHit")
Goto Pain+2

Pain.BounceM_Pull2:
"----" H 0 A_GiveInventory("BounceM_PullProtect",1)//BounceM_Drag protection?
"----" H 0 A_GiveInventory("PainStopC",1)
"----" H 0 ThrustThingZ(0,15,0,0)
"----" H 0 A_SpawnItemEx("PainBounceM_Pull2Hit")
Goto Pain+2

Pain.ColdM_Down:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("ColdM_FieldProtect",1)
"----" H 0 ThrustThingZ(0,70,1,0)
"----" H 0 A_SpawnItemEx("GroundIce_Cold")
"----" H 0 A_GiveInventory("ColdM_FieldSlow_P",1)
"----" HH 0 A_SpawnItemEx("BossIceWallFX",random(-16,32),random(-16,16),random(0,56),0,0,0,0,1)
"----" H 0
Goto Pain+2

Pain.ColdM_Field:
"----" H 0 A_Stop
"----" H 0 A_GiveInventory("ColdM_FieldProtect",1)
"----" H 0 A_GiveInventory("ColdM_FieldSlow_P",1)
"----" HH 0 A_SpawnItemEx("BossIceWallFX",random(-16,32),random(-16,16),random(0,56),0,0,0,0,1)
"----" H 0 ThrustThingZ(0,70,1,0)
Goto Pain+2

Pain.TundraM_Leap:
"----" H 0 A_GiveInventory("TundraM_LeapProtect")
"----" H 0 A_JumpIfInventory("PowerTundra",1,"Pain.TundraM_Skete")
goto Pain+1

Pain.TundraM_Skete:
"----" H 0 A_GiveToTarget("TundraEncore_P")
goto Pain+1

Death.TundraM_Leap:
"----" H 0 A_JumpIfInventory("PowerTundra",1,"Death.TundraM_Leap2")
goto Death

Death.TundraM_Leap2:
"----" H 0 A_PlaySound("weapon/reboundcheer",6,1.0)
"----" H 0 A_GiveToTarget("TundraEncore_P")
goto Death

Pain.ElecM_BeamL:
"----" H 0 A_GiveInventory("ThunderManSideBeamLProtect")
goto Pain+2

Pain.ElecM_BeamR:
"----" H 0 A_GiveInventory("ThunderManSideBeamRProtect")
goto Pain+2

Pain.TundraM_Wind:
"----" H 0 A_GiveInventory("TundraM_WindProtect",1)
"----" H 0 A_GiveInventory("TundraStormableFlag",1)
"----" H 0 A_ScaleVelocity(0.95)
Goto Pain+2

Pain.TundraM_Glacier:
"----" H 0 A_ScaleVelocity(0.75)
"----" H 0 A_JumpIfInventory("PowerTundra",1,"Pain.TundraM_Slow")
"----" H 0 A_JumpIfInventory("TundraStormableFlag",1,"Pain.TundraM_Slow")
Goto Pain+2
Pain.TundraM_Tornado:
"----" H 0 A_SpawnItemEx("PainDuo_RamHit")
"----" H 0 A_GiveInventory("TundraM_TornadoProtect",1)
Pain.TundraM_Slow:
"----" H 0 A_GiveInventory("TundramanSlowPickup",1)
Goto Pain+2

Death.ColdM_Punch:
"----" H 0 ThrustThing(random(155,255),5,0,0)
"----" H 0 ThrustThingZ(0,30,0,0)
Death.ColdM_Down:
Death.ColdM_Field:
Death.TundraM_Wind:
Death.TundraM_Glacier:
Death.TundraM_Slow:
Death.TundraM_Tornado:
"----" H 0 A_GiveInventory("IceDeathFlag",1)
goto Death

Pain.BlazingTorch:
"----" H 0 A_GiveInventory("BlazingTorchProtect")
goto Pain+1
Pain.BounceBall:
"----" H 0 A_GiveInventory("BounceBallProtect")
goto Pain+2
Pain.TundraStorm:
"----" H 0 A_GiveInventory("TundraStormProtect")
goto Pain

Pain.FlameSwordB:
"----" H 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Pain.FlameSwordBT:
"----" H 0 A_PlaySound("weapon/flamehit","body")
"----" H 0 A_GiveInventory("FlameSwordBProtect",1)
"----" H 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Pain.FlameSwordBM:
"----" H 0 A_GiveInventory("FlameSpinMainProtect",1)
"----" H 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Death.TrioFlameSword:
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
goto Death

Pain.DarkM2_Level2:
"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
"----" H 0 A_GiveInventory("Shocked",1)
Goto Pain+1

Death.DustM_Crush:Death.DustM_CrushBit:
Death.JunkM_Shield:
"----" H 0 A_GiveInventory("JunkDeathDropFlag",1)
goto Death

Pain.TrioFlameSword:
"----" H 0 A_GiveInventory("TrioFlameSwordProtect",1)
"----" H 0 A_PlaySoundEx("weapon/flamehit","SoundSlot5")
"----" HH 0 A_SpawnItemEx("FlameSwordBit",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Pain.TrioIceWave:
"----" H 0 A_GiveInventory("TrioIceWaveProtect",1)
Goto Pain+2

Pain.ODuo_Meteor:
"----" H 0 A_SpawnItemEx("PainODuo_MeteorHit")
"----" H 0 A_GiveInventory("ODuo_MeteorProtect",1)
"----" H 0 A_SpawnItemEx("PainODuo_MeteorPushHit")
"----" H 0 ThrustThingZ(0,28,0,0)
Goto Pain+2

Pain.ConcreteM_Bash:
"----" H 0 A_GiveInventory("ConcreteM_BashProtect",1)
"----" H 0 A_SpawnItemEx("PainConcreteM_BashHit",1)
"----" H 0 A_SpawnItemEx("PainConcreteShoulderHit")
goto Pain

Pain.BrightM_Bulb:Pain.FlashBulb:
"----" H 0 
"----" H 0 A_JumpIfInventory("BrightBlind", 1,3)
"----" H 0 A_GiveInventory("BrightBlind",105)
"----" H 0 ACS_NamedExecuteAlways("CCBM_BrightNewBlind", 0)
Goto Pain+2
"----" H 0 A_GiveInventory("BrightBlind",35)
Goto Pain+2

Pain.MagnetM_MagFlySlam:
"----" H 0 ThrustThingZ(0,70,1,0)
"----" H 0 A_GiveInventory("MagnetM_MagFlySlamProtection",1)
Pain.MagnetM_MagFly:
"----" H 0 A_ChangeVelocity(momz/3,momy/3,momz-10,CVF_REPLACE)
"----" H 0 A_GiveInventory("MagnetM_MagFlyProtection",1)
Goto Pain+2

Pain.HardKnuckleClass:
"----" H 0 A_PlaySoundEx("weapon/hknucklehit","Body")
"----" H 0 A_SpawnItemEx("HardKnuckleHitFX",0,0,32,0,0,0,0,0)
Goto Pain+2

Death.HardKnuckleClass:
"----" H 0 A_PlaySoundEx("weapon/hknucklehit","Body")
"----" H 0 A_SpawnItemEx("HardKnuckleHitFX",0,0,32,0,0,0,0,0)
"----" H 0 A_Quake(5,9,0,128)
goto Death.Beam//Death

Pain.Punk_Ram:
"----" H 0 A_GiveInventory("Punk_RamProtect",1)
"----" H 0 A_SpawnItemEx("PainScrewCrusherMHit",1)
"----" H 0 A_SpawnItemEx("PainConcreteShoulderHit",1)
"----" H 0 A_PlaySoundEx("weapon/punkbash","Body")
goto Pain+2

Death.Punk_Ram:
"----" H 0 A_SpawnItemEx("PainScrewCrusherMHit",1)
"----" H 0 A_SpawnItemEx("PainConcreteShoulderHit",1)
"----" H 0 A_PlaySoundEx("weapon/punkbash","Body")
goto Death

Pain.KnightBonk:
"----" H 0 A_GiveInventory("KnightBonkProtect",1)
"----" H 0 A_SpawnItemEx("PainKnightBonkHit")
Goto Pain+2

Pain.KnightM_CastleCrush:
"----" H 0 A_JumpIfInventory("CastleCrushShock",1,2)
"----" H 0 A_GiveInventory("CastleCrushShock",1)
"----" H 0 A_SpawnItemEx("KnightM_ShockFX",4,0,32)
"----" H 0 A_GiveInventory("CastleCrushProtect",1)
Goto Pain+1

Pain.KnightReturn:
"----" H 0 A_GiveInventory("KnightReturnProtect")
Goto Pain+2

Death.KnightBonk:
"----" H 0 A_SpawnItemEx("PainKnightBonkHit")
Goto FlingDeath

Pain.TimeStopper: 
"----" H 0 A_GiveInventory("TimeStopActivatorC",1)//ClaseBaseFlags.txt
Goto Pain+2

Pain.ClassPainTimeStop: 
Pain.TimeStop0: 
"----" H 0 A_JumpIfInventory("TimeStopProtector",1,"Pain.CrashBomb")
"----" H 0 A_GiveInventory("TimeStopProtector")
"----" H 0 A_GiveInventory("TimeStoppedTF",1)
"----" H 0 A_SpawnItemEx("AntiTimeStopFreezeHelper0")
"----" H 0 A_Jump(256, "TimeStopped0")
Goto TimeStopped0
TimeStopped0:
//"----" AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Stop
"####" "]" 0 A_PlaySoundEx("weapon/timestopper","Body")
"####" "]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]" 1 A_Stop
//TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_SpawnItemEx("TimeStopGFXSmall", random(8, 64), 0, random(0, 64), 0, 0, 0, random(0, 359))
Goto Pain+2
TimeStopped0X:
"####" "####################################################" 1 A_Stop
//TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_SpawnItemEx("TimeStopGFXSmall", random(8, 64), 0, random(0, 64), 0, 0, 0, random(0, 359))
Goto Pain+2

Death.KnightBonk2:
"----" H 0 A_SpawnItemEx("PainKnightM_PushHit")
Goto FlingDeath

Pain.KnightCrushNoisy:
//"----" H 0 A_ScaleVelocity(0.9)
"----" H 0 A_GiveInventory("KnightReturnProtect",1)
"----" H 0 A_PlaySoundEx("weapon/knightcrushhit","SoundSlot5")
Goto Pain+2
Death.KnightCrushNoisy:
"----" H 0 A_PlaySoundEx("weapon/knightcrushhit","SoundSlot5")
Goto Death

Pain.DuoGrabSlam:
"----" H 0 A_GiveInventory("DuoGrabSlamProtect",1)
"----" H 0 A_ChangeVelocity(0,0,momz,CVF_REPLACE)
Goto Pain+1 
Pain.DuoWave:
"----" H 0 A_GiveInventory("DuoWaveProtect",1)
//"----" H 0 A_JumpIfInventory("DuoSlowImpaired",1,2)
//"----" H 0 A_SpawnItemEx("ImpairmentHelperDuoSlow")
//"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,4)
"----" H 0 A_ChangeVelocity(momz/4,momy/4,momz,CVF_REPLACE)
"----" H 0 ThrustThingZ(0,56,0,1)
"----" H 0 A_GiveInventory("DuoWaveThrustSpeed1",1)
"----" H 0 A_SpawnItemEx("DuoWaveThrustFX1")
"----" H 0 
Goto Pain+1
Pain.DuoWave2:
"----" H 0 A_GiveInventory("DuoWaveProtect",1)
//"----" H 0 A_JumpIfInventory("DuoSlowImpaired",1,2)
//"----" H 0 A_SpawnItemEx("ImpairmentHelperDuoSlow")
//"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,4)
"----" H 0 A_ChangeVelocity(momz/4,momy/4,momz,CVF_REPLACE)
"----" H 0 ThrustThingZ(0,62,0,1)
"----" H 0 A_GiveInventory("DuoWaveThrustSpeed2",1)
"----" H 0 A_SpawnItemEx("DuoWaveThrustFX2")
"----" H 0 
Goto Pain+1
Pain.DuoWave3:
"----" H 0 A_GiveInventory("DuoWaveProtect",1)
//"----" H 0 A_JumpIfInventory("DuoSlowImpaired",1,2)
//"----" H 0 A_SpawnItemEx("ImpairmentHelperDuoSlow")
//"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,4)
"----" H 0 A_ChangeVelocity(momz/4,momy/4,momz,CVF_REPLACE)
"----" H 0 ThrustThingZ(0,68,0,1)
"----" H 0 A_GiveInventory("DuoWaveThrustSpeed3",1)
"----" H 0 A_SpawnItemEx("DuoWaveThrustFX3")
"----" H 0 
Goto Pain+1
Pain.DuoWave4:
"----" H 0 A_GiveInventory("DuoWaveProtect",1)
//"----" H 0 A_JumpIfInventory("DuoSlowImpaired",1,2)
//"----" H 0 A_SpawnItemEx("ImpairmentHelperDuoSlow")
//"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,4)
"----" H 0 A_ChangeVelocity(momz/4,momy/4,momz,CVF_REPLACE)
"----" H 0 ThrustThingZ(0,74,0,1)
"----" H 0 A_GiveInventory("DuoWaveThrustSpeed4",1)
"----" H 0 A_SpawnItemEx("DuoWaveThrustFX4")
"----" H 0 
Goto Pain+1
Pain.DuoWave5:
"----" H 0 A_GiveInventory("DuoWaveProtect",1)
//"----" H 0 A_JumpIfInventory("DuoSlowImpaired",1,2)
//"----" H 0 A_SpawnItemEx("ImpairmentHelperDuoSlow")
//"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,4)
"----" H 0 A_ChangeVelocity(momz/4,momy/4,momz,CVF_REPLACE)
"----" H 0 ThrustThingZ(0,80,0,1)
"----" H 0 A_GiveInventory("DuoWaveThrustSpeed5",1)
"----" H 0 A_SpawnItemEx("DuoWaveThrustFX5")
"----" H 0 
Goto Pain+1
Pain.DuoJusticeFlash:
"----" H 0 A_ScaleVelocity(.5)
Goto Pain+2

Pain.ERTornadoHold:
"----" H 0 ThrustThingZ(0,300,0,0)
Goto Pain+2

/*
Pain.AcidGas:
"----" H 0 A_GiveInventory("AcidGasProtection",1)
goto Pain+2
*/
Pain.AcidmanBoss:
"----" H 0
goto Pain+1
Pain.AcidmanTower:
"----" H 0 A_GiveInventory("AcidmanTowerProtect_P", 1)
goto Pain+1

Pain.FlashBombB1:
"----" H 0 A_SpawnItemEx("PainGrenadeM_NadeHit")
goto Pain.FlashBomb
Pain.FlashBombB2:
"----" H 0 A_SpawnItemEx("PainGrenadeM_BombHit")
goto Pain.FlashBomb
Death.FlashBombB1:
"----" H 0 A_GiveToTarget("THATFELTGOODAMMO",2)
Goto Death
Death.FlashBombB2:
"----" H 0 A_GiveToTarget("THATFELTGOODAMMO",6)
Goto Death

Pain.LightRyuShoryu:
"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,2)
"----" H 0 ThrustThingZ(0,56,0,0)
"----" H 0
Goto Pain+2//Pain.LightRyu1
/*Pain.LightRyuShoryuNew:
"----" H 0 A_GiveToTarget("SuperComboGauge",1)
"----" H 0 A_GiveInventory("LightRyuShoryuProtect",1)
"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,2)
"----" H 0 ThrustThingZ(0,56,0,0)
"----" H 0
Goto Pain+2*/
Death.LightRyuShoryu:
Death.LightRyuShoryuNew:
"----" H 0 ThrustThingZ(0,90,0,0)
//"----" H 0 A_SpawnItemEx("DeathLightRyuShoryuHit",1)
Goto FlingDeath

Pain.LightRyuShinShoryu:
//"----" H 0 A_TakeInventory("LightRyuStopProtect",1)
"----" H 0 ThrustThingZ(0,200,0,0)
Goto Pain+2
Death.LightRyuShinShoryu:
"----" H 0 ThrustThingZ(0,200,0,0)
//"----" H 0 A_SpawnItemEx("DeathLightRyuShinShoryuHit",1)
Goto FlingDeath

Pain.MercSplooshTackle:
"----" H 0 A_GiveToTarget("MercuryClassAmmo",2)
Pain.MercSploosh:
"----" H 0 A_GiveInventory("MercBlobProtect",1)
Goto Pain+2

Pain.SolarVent:
"----" H 0 ThrustThingZ(0,12,0,0)
"----" H 0 A_SpawnItemEx("SolarVentHit")
"----" H 0 A_GiveInventory("TempPitProtect_P")
Goto Pain+2

Death.SolarVent:
"----" H 0 A_SpawnItemEx("PainScrewCrusherMHit",1)
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
goto Death

Pain.BlastBombBig:
//"----" H 0 A_GiveInventory("PainScaleVelocityFlashBombC",1)
"----" H 0 A_GiveInventory("ChainBlastActivator")
goto Pain+1

Pain.SparkChaserWep:
PLY1 H 0 A_GiveInventory("SparkChaserTagged", 1)
goto Pain+1

Pain.Rock_MegaBall:
"----" H 0 A_GiveInventory("MegaBallProtect",1)
Goto Pain+2
Pain.MegaCutBall:
"----" H 0 A_GiveInventory("CutBallProtect",1)
Goto Pain+2
Pain.MegaGutsBall:
"----" H 0 A_GiveInventory("GutsBallProtect",1)
Goto Pain+2
Pain.MegaBombBall:
"----" H 0 A_GiveInventory("BombBallProtect",1)
Goto Pain+2
Pain.MegaFireBall:
"----" H 0 A_GiveInventory("FireBallProtect",1)
Goto Pain+2
Pain.MegaElecBall:
"----" H 0 A_GiveInventory("ElecBallProtect",1)
Goto Pain+2
Pain.MegaOilBall:
"----" H 0 A_GiveInventory("OilBallProtect",1)
Goto Pain+2

Pain.JunkPunch2:
"----" H 0 A_SpawnItemEx("PainPharaohPunchHit",1)
goto Pain

Pain.TimeSlow:
Pain.MegaTimeBall:
"----" H 0 A_GiveInventory("Slowed",1)
"----" H 0 A_GiveInventory("TimeBallProtect",1)
Goto Pain+2

Pain.HornetHoney:
"----" H 0 A_JumpIfInventory("PowerIceHornet",1,2)
"----" H 0 A_GiveInventory("HornetmanSlowPickup",1) 
"----" H 0 
Goto Pain+2

Pain.MegaIceBall:
"----" H 0 A_ScaleVelocity(.65)
"----" H 0 A_GiveInventory("IceBallProtect",1)
Pain.IceSlashSlow:
Pain.IceSlashSlowL:
Pain.IceSlashBlock:
"----" H 0 A_GiveInventory("IcemanSlowPickup",1)
Goto Pain+2

Pain.SolarM_Head:
"----" H 0 A_GiveInventory("SolarM_HeadProtect",1)
Goto Pain+2

Pain.SolarM_Blaze:
"----" H 0 //A_GiveInventory("SolarM_WaveProtect",1)
Goto Pain+2
Pain.SolarM_Wave:
"----" H 0 A_GiveInventory("SolarM_WaveProtect",1)
Goto Pain+2

Death.SolarM_Head:
Death.SolarM_Blaze:
Death.SolarM_Wave:
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
goto Death

Pain.JunkM_Cube:
"----" H 0 A_GiveInventory("JunkM_CubeProtect",1)
Goto Pain+2

Pain.StoneSpiralP:
"----" H 0 A_GiveInventory("StoneSpiralProtect",1)
Goto Pain+2

Pain.TorchHit1:
"----" H 0 A_SpawnItemEx("PainTorchHit1")
Goto Pain+2

Pain.TorchHit1X:
"----" H 0 A_SpawnItemEx("PainSmallTorchHit1")
Goto Pain+2

Pain.TorchHit2:
"----" H 0 A_SpawnItemEx("PainTorchHit2")
Goto Pain+2

Pain.TorchHit25:
"----" H 0 A_SpawnItemEx("PainTorchHit25")
"----" H 0 A_SpawnItemEx("PainDuo_RamHit")
Goto Pain+2

Pain.PGTorchHit25:
"----" H 0 A_SpawnItemEx("PainTorchHit25")
"----" H 0 A_Stop
Goto Pain+2

Pain.PGTorchHit25BOOM:
"----" H 0 A_SpawnItemEx("PainTorchHit25")
"----" H 0 A_SpawnItemEx("PainTorchM_PushHit")
Goto Pain+2

Pain.TorchHit3:
"----" H 0 A_SpawnItemEx("PainTorchHit3")
"----" H 0 A_SpawnItemEx("PainTorch_DiveHit")
Goto Pain+2

Pain.TorchHit35:
"----" H 0 A_SpawnItemEx("PainTorchHit35")
Goto Pain+2

Pain.TorchWave:
"----" H 0 A_SpawnItemEx("PainTorchWaveHit")
"----" H 0 A_GiveToTarget("TorchjutsuAmmo",5)
Goto Pain+2

Death.TorchHit1:
Death.TorchHit1X:
Death.TorchHit2:
Death.TorchHit3:
Death.TorchHit35:
Death.TorchWave:
"----" H 1 A_GiveToTarget("TorchjutsuAmmo",100)
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
Goto Death

Death.PGTorchHit25:
Death.PGTorchHit25BOOM:
Death.TorchHit25:
"----" H 0 A_GiveToTarget("PGRagingKick_P")
"----" H 1 A_GiveToTarget("TorchjutsuAmmo",100)
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
Goto Death

Pain.TerraMelee:
"----" H 0
"----" H 0 A_SpawnItemEx("PainTerra_MeleeHit",1)
"----" H 0 ThrustThingZ(0,2,0,0)
"----" H 0 A_PlaySoundEx("weapon/terramelee", "SoundSlot7", 0)
Goto Pain.SparkShock

Death.TerraMelee:
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_PlaySoundEx("weapon/terrameleeko", "SoundSlot7", 0)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Pain.SparkChaserTerra:
"----" H 0 A_GiveInventory("SparkChaserTerraProtectC",1)
Goto Pain+2

Pain.BusterC:
"----" H 0 
"----" H 0
Goto Pain+1

Pain.FlameSwordCBM1:
"----" H 0 A_PlaySound("weapon/flamehit","Body")
"----" H 0 A_GiveInventory("FlameSwordCBM1Protect",1)
//"----" H 0 A_GiveInventory("FlameSwordCBM1XProtect",1)
"----" HH 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Pain.FlameSwordCBM2:
"----" H 0 A_PlaySound("weapon/flamehit","Body")
"----" H 0 A_GiveInventory("FlameSwordCBM2Protect",1)
//"----" H 0 A_GiveInventory("FlameSwordCBM2XProtect",1)
"----" HH 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Pain.FlameSwordCBM3:
"----" H 0 A_PlaySound("weapon/flamehit","Body")
"----" H 0 A_GiveInventory("FlameSwordCBM3Protect",1)
//"----" H 0 A_GiveInventory("FlameSwordCBM3XProtect",1)
"----" HH 0 A_SpawnItemEx("FlameSwordBitB",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,359))
Goto Pain+2

Death.FlameSwordCBM1:
Death.FlameSwordCBM2:
Death.FlameSwordCBM3:
"----" H 0 A_GiveInventory("HeatDeathFlag",1)
Goto Death

/*pain.DuoGrabExplosion5:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit5")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2

pain.DuoGrabExplosion4:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit4")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2

pain.DuoGrabExplosion3:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit3")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2

pain.DuoGrabExplosion2:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit2")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2

pain.DuoGrabExplosion1:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit1")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2*/

Pain.ChargeBusterC:
"----" H 0 //A_GiveInventory("PainScaleVelocityFlashBombC",1)
Goto Pain+1

//Pain.HyperBombRecoil:
//"----" H 0 A_SpawnItemEx("PainHyperBombRecoil",1)
//Goto Pain 
//lol

Pain.MaestroFire:
"----" H 0 A_GiveInventory("MaestroFireProtect",1)
Goto Pain+2

Pain.FireM_Spin:
"----" H 0 A_GiveInventory("FireM_SpinProtect",1)
Goto Pain+2

Pain.FireM_Wave2:
"----" H 0 A_GiveInventory("FireM_Wave2Protect",1)
Goto Pain+2

Pain.MaestroFireGuts:
"----" H 0 A_GiveInventory("MaestroFireProtect2",1)
"----" H 0 A_JumpIfInventory("FireGutsCheck",1,"NoGuts")
"----" H 0 A_GiveInventory("FireGutsCheck",1)
"----" H 0 //A_SpawnItemEx("PainMaestroAfterburn",0,0,0,0,0,0,0,1)
Goto Pain+2
NoGuts:
"----" H 0
Goto Pain+2

Pain.MaestroShock:
"----" H 0 A_Stop
"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
"----" H 0 A_GiveInventory("Shocked",1)
Goto Pain+1

Pain.MaestroShock2:
"----" H 0 A_Stop
"----" H 0 A_SpawnItemEx("ShockFX",4,0,32)
"----" H 0 A_GiveInventory("Shocked_18",1)
Goto Pain+1

Pain.MaestroWood:
"----" H 0 A_GiveInventory("MaestroWoodProtect",1)
"----" H 0 ThrustThingZ(0,100,0,0)
Goto Pain

Pain.MaestroAquaGuts:
"----" H 0 A_SpawnItemEx("PainMaestroAquaGuts",1)
Goto Pain

Pain.RaThor:
"----" H 0 A_GiveInventory("RaThorHitItem",1)
Goto Pain+2
Pain.RaThorSlam:
"----" H 0 A_SpawnItemEx("RaThorSlamFloorChecker",0,0,0,0,0,0,0,1)
Goto Pain.RaThor
Pain.RaThorWave:
"----" H 0 A_GiveInventory("RaThorWaveProtect",1)
Goto Pain.RaThor
Pain.RaThorSpirit:
"----" H 0 A_GiveInventory("RaThorSpiritProtect",1)
Goto Pain.RaThor

Pain.RaThorShotgun:
"----" H 0 A_GiveInventory("RaThorShotgunProtect",1)
Goto Pain.RaThor
Pain.RaThrowThrowX:
"----" H 0 A_Stop
Pain.RaThorThrow:
"----" H 0 A_GiveInventory("Shocked_18",1)
Goto Pain.RaThor
Pain.RaThorGlobe:
"----" H 0 //A_GiveInventory("ThorGlobeProtect",1) 
Goto Pain.RaThor
 
Death.RaThorThrowX:
Death.RaThorThrow://this one isnt new, replace the original one
"----" H 0 A_GiveInventory("RaThorHitItem",1)
goto Death

Death.RaThorShotgun:
Death.RaThorGlobe:
"----" H 0 A_GiveInventory("RaThorHitItem",1)
goto Death

Death.RaThorSlam:
"----" H 0 A_PlaySound("weapon/RaThorSlam",5,1.0)
Death.RaThor:
Death.RaThorSpirit:
Death.RaThorWave:
"----" H 0 A_GiveInventory("RaThorHitItem",1)
goto Death

Pain.JewelSatelliteC:
"----" H 0 //A_GiveInventory("JewelSatelliteProtect")
Goto Pain.JewelSatelliteB

Pain.AutoBoltX:
"----" H 0 A_GiveInventory("AutoBoltXProtect",1)
Goto Pain+2

Pain.AutoAmmoShotS:
Pain.AutoAmmoShotL:
"----" H 0 
Goto Pain+2

Pain.ArchOfWool:
"----" H 0 A_GiveInventory("ArchWoolProtect",1)
goto Pain+2
Pain.ArchOfWoolGround:
"----" H 0 A_GiveInventory("ArchWoolGroundProtect",1)
goto Pain+2

Pain.StrikeBall:
"----" H 0 A_SpawnItemEx("PainStrikeBallHit",1)
"----" H 0 A_GiveInventory("StrikeMeleeCProtect",1)
goto Pain+2

Death.StrikeBall:
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_PlaySound("weapon/reboundbunt",5,1.0)
"----" H 0 A_SpawnItemEx("PainStrikeBallHit",1)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Pain.StrikeBall2:
"----" H 0 A_PlaySound("weapon/reboundbunt",5,1.0)
"----" H 0 ThrustThingZ(0,30,0,0)
"----" H 0 A_SpawnItemEx("PainStrikeBallHit2",1)
goto Pain+2

/*Pain.MaxMetal:
"----" H 0 A_GiveInventory("MetalRipperProtection",1)
Goto Pain*/ //never again

Pain.PharaohPunch:
"----" H 0
"----" H 0 A_SpawnItemEx("PainPharaohPunchHit",1)
"----" H 0 ThrustThingZ(0,20,0,0)
"----" H 0 A_PlaySoundEx("weapon/pharaohpunchhit", "SoundSlot7", 0)
Goto Pain+2

Death.PharaohPunch:
"----" H 0
"----" H 0 A_SpawnItemEx("PainPharaohPunchHit",1)
"----" H 0 A_PlaySoundEx("weapon/pharaohpunchhit", "SoundSlot7", 0)
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Death.StrikeBall2:
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_PlaySound("weapon/reboundbunt",5,1.0)
"----" H 0 A_PlaySound("weapon/reboundcheer",6,1.0)
"----" H 0 A_SpawnItemEx("PainStrikeBallHit2",1)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Pain.PumpTheHandle:
"----" H 0 A_SpawnItemEx("PainConcreteShoulderHit",1)
goto Pain+2

Pain.SaturnWhiteRing1:
"----" H 0 A_GiveInventory("SaturnProtect1",1)
goto Pain+2

Pain.SaturnWhiteRing2:
"----" H 0 A_GiveInventory("SaturnProtect1",1)
goto Pain+2

Pain.SaturnShot:
//"----" H 0 A_GiveInventory("SaturnShotProtect",1)
"----" H 0 A_SpawnItemEx("PainConcreteShoulderHit",1)
goto Pain+2

Death.SaturnShot:
Death.SaturnWhiteRing1:
Death.SaturnWhiteRing2:
"----" H 0 ThrustThingZ(0,120,0,0)
"----" H 0 A_SpawnItemEx("DeathConcreteM_BashHit",1)
goto FlingDeath

Pain.DarkM_Tank:
"----" H 0 A_SpawnItemEx("PainDarkM_TankHit",1)
Goto Pain+2

//Pain.ThunderClawHit:
//"----" H 0 A_PlaySoundEx("weapon/thunderclawhit","SoundSlot5")
//Goto Pain.ThunderClaw
//Death.ThunderClawHit:
//"----" H 0 A_PlaySoundEx("weapon/thunderclawhit","SoundSlot5")
//Goto Death

//-------------- [BG] ---------------

Pain.FuseM_Livewire:
"----" H 0 A_GiveInventory("FuseM_LivewireProtect")
//"----" H 0 A_SpawnItemEx("FuseThunderBlast",0,0,0,0,0,0,0,1)
goto Pain+2

Pain.FuseM_Livewire2:
"----" H 0 A_GiveInventory("FuseM_Livewire2Prot")
goto Pain+2

Pain.FuseM_Chain:
"----" H 0 A_GiveInventory("FuseM_ChainProt")
goto Pain+2

pain.HeroProtoShot:
"----" H 0
goto Pain+2
pain.ProtoM_Shot2:
"----" H 0 A_GiveInventory("ProtoM_Shot2Protection")
goto Pain+2

/*Pain.DuoCleanserGrab:
"####" H 0 A_SpawnItemEx("PainDuoGrabHit")
"####" H 0 A_GiveInventory("DuoCleanserGrabberProt",1)
"####" H 0 A_GiveInventory("DuoCleanserGrabberSpd0",1)
//"####" H 0 A_GiveInventory("TimeStoppedTF",1)
"####" HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 1 A_Stop
Goto Pain+2

pain.DuoGrabExplosion:
"----" H 0 A_SpawnItemEx("PainDuoExplodeHit")
"----" H 0 A_GiveInventory("DuoCleanserGrabberSpd0")
//"----" H 0 ThrustThingZ(0,40,0,0)
goto Pain+2*/

Pain.ClassPainLess2Ice:
"----" H 0
Goto Pain+2

//Flings
pain.ProtomanHeroShieldBash:
"----" H 0 ThrustThingZ(0,12,0,0)
"----" H 0 A_SpawnItem("PainProtoShieldBashHit")
"----" H 0 A_GiveInventory("ProtomanHeroShieldBasherProtection")
goto Pain+2

Pain.KnightRush:
"----" H 0 A_SpawnItemEx("PainKnightM_PushHit")
Goto Pain.SparkShock

death.ProtomanHeroShieldBash:
"----" H 0 ThrustThingZ(0,60,0,0)
"----" H 0 A_SpawnItem("PainProtoShieldBashHit")
"----" H 0 A_GiveInventory("ProtomanHeroShieldBasherProtection")
Goto FlingDeath

pain.BassKickC:
"----" H 0 ThrustThingZ(0,18,0,0)
"----" H 0 A_SpawnItem("PainBassKickHit")
"----" H 0 A_GiveInventory("BassKickCProtect")
goto Pain+2
death.BassKickC:
"----" H 0 ThrustThingZ(0,180,0,0)
"----" H 0 A_SpawnItem("PainBassKickHit")
"----" H 0 A_GiveInventory("BassKickCProtect")
Goto FlingDeath

pain.BassKickEx:
"----" H 0 ThrustThingZ(0,22,0,0)
"----" H 0 A_SpawnItem("PainBassKickHitEx")
"----" H 0 A_GiveInventory("BassKickCProtect")
goto Pain+2

//==================
//All of the painstates below are copied from cbm
//------------------
//==================

//MM5















Pain.GravitySmackUpNoDebuff:  
"----" H 0 A_JumpIfInventory("GravitySmackUpProtect",1,3)
"----" H 0 ThrustThingZ(0,85,0,0) 
"----" H 0 A_ChangeVelocity(momx/2,momy/2,MomZ,CVF_REPLACE)
"----" H 0 
"----" H 0 
"----" H 0 
goto Pain+2 
  
Pain.GravitySmackUpNoSlam:  
"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,10)
"----" H 0 A_JumpIfInventory("GravitySmackUpProtect",1,9)
"----" H 0 ThrustThingZ(0,85,0,0) 
"----" H 0 A_ChangeVelocity(momx/2,momy/2,MomZ,CVF_REPLACE)
"----" H 0 ACS_NamedExecuteAlways("SlowFallDebuff",0,0,0,0) 
"----" H 0 A_GiveInventory("GravityWeirdDebuffEffects",1)
"----" H 0 A_GiveInventory("GravitySmackUpProtect",1)
"----" H 0 A_GiveInventory("GravitySmackUpSlamR",1)
"----" H 0 
"----" H 0 
"----" H 0 
"----" H 0 
"----" H 0  
"----" H 0  
goto Pain+2 
 
Pain.GravitySmackUp:  
"----" H 0 A_JumpIfInventory("FlightDisableFlag",1,10)
"----" H 0 A_JumpIfInventory("GravitySmackUpProtect",1,9)
"----" H 0 A_GiveInventory("Shocked_18",1) 
"----" H 0 ThrustThingZ(0,85,0,0)  
"----" H 0 A_ChangeVelocity(momx/2,momy/2,MomZ,CVF_REPLACE)
"----" H 0 ACS_NamedExecuteAlways("NoGravityDebuff",0,0,0,0)
"----" H 0 A_GiveInventory("GravityWeirdDebuffEffects",1)
"----" H 0 A_GiveInventory("GravitySmackUpProtect",1)
"----" H 0 A_GiveInventory("GravitySmackUpSlamR",1)
"----" H 0
"----" H 0
"----" H 0
"----" H 0
"----" H 0
"----" H 0
"----" H 0 
goto Pain+2  

Pain.GravitySmackDown: 
"----" H 0 A_GiveInventory("GravitySmackDownThingy",1)
"----" H 0 A_JumpIfInventory("GravitySmackUpSlamR",1,7)
"----" H 0 A_SpawnItemEx("PainGravitySmackDown_H")
"----" H 0 A_CheckFloor(2)
"----" H 0 ThrustThingZ(0,70,1,0)
"----" H 0
goto Pain+2
"----" H 0
"----" H 0
"----" H 0
"----" H 0 A_TakeInventory("GravitySmackUpProtect",1)
"----" H 0 A_TakeInventory("GravitySmackUpSlamR",1)
"----" H 0 A_SpawnItemEx("PainGravityM_SlamHit")
Goto Pain+2

















Death.PlugM_Prong:
//"----" H 0 A_JumpIfInventory("OnlyGivePlugOnce",1,"Death")
//"----" H 0 A_GiveInventory("OnlyGivePlugOnce",1)
"----" H 0 A_GiveToTarget("PlugInstaPotatoSound",2)
"----" H 0 A_GiveToTarget("PlugBallAmmoBoss",56)
"----" H 0 A_GiveToTarget("PlugOverdriveCharge",100)
"----" H 0 A_GiveInventory("ElectricDeathFlag",1)
Goto Death

}
}
