actor Mudkip : BasisForHales
{
player.soundclass "BOSS016"
+NOTARGET
player.forwardmove 0.75, 0.75
player.sidemove 0.74, 0.74
player.morphweapon "MudkipBossWeapon"
damagefactor "Mudkip", 0.0
damagefactor "MudkipWooshWoosh", 0.0
damagefactor "Torchic", 0.0
damagefactor "Treecko", 0.0

// weakness against ripping attacks (because smaller hitbox = the project stays less time in the body)
damagefactor "LaserBuster", 1.33
damagefactor "RollingCutter", 1.33
damagefactor "IceSlasher", 1.33
damagefactor "ThunderBeam", 1.33
damagefactor "AtomicFire3", 0.871
damagefactor "MetalBlade", 1.33
damagefactor "ShadowBlade", 1.33
damagefactor "RingBoomerang", 1.33
damagefactor "WindStorm", 0.93
damagefactor "YamatoSpear", 1.33
damagefactor "MirrorBuster2", 1.33
damagefactor "KnightCrush", 1.33
damagefactor "Beat", 1.33
damagefactor "Tango", 1.33
damagefactor "IceWall", 1.33
damagefactor "IceCircleThrow", 1.0
damagefactor "SpreadDrill", 0.532
damagefactor "SpreadDrill2", 0.8866667
damagefactor "SpreadDrill3", 0.8866667

Player.AttackZOffset 4
player.viewheight 25 //"default is 41" they say
Radius 24 // 16
Height 48 // 56
States
{
Spawn:
MKIP A 0
MKIP B 1
MKIP A 1
Goto Spawn+2
See:
MKIP BCDE 5
Goto Spawn
Missile:
MKIP F 5
MKIP G 4
goto Spawn

Pain.TimeStopper:
Pain.RNCZaWarudo:
TNT1 A 0 SetPlayerProperty(0,1,4) TNT1 A 0 A_GiveInventory("DioFlashTimeHUD", 1) TNT1 A 0 A_SpawnItem("ZaWarudoHaleFix")
MKIP AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Stop
MKIP A 1 SetPlayerProperty(0,0,4)
Goto Spawn

BossPain:
//MKIP H 0 A_PlaySound("misc/devilpain")
MKIP H 0 A_PlaySound("Mudkip/PokemonPain")
MKIP HHHHHHHHH 2 A_SpawnItem("PainFX",-3,0)
MKIP H 0 SetPlayerProperty(0,0,1)
Goto Spawn
Death:
MKIP H 0 ACS_ExecuteAlways(720,0,13)
MKIP H 0 SetPlayerProperty(0,0,4)  
MKIP H 0 A_NoBlocking
MKIP H 0 A_Stop
MKIP H 1 A_GiveToTarget("KilledMe",1)
MKIP H 18
MKIP H 0 ACS_ExecuteAlways(400,0,437)
MKIP H 0 SetPlayerProperty(0,0,4)
MKIP H 0 A_PlayerScream
MKIP H 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
PLAY Z 1 A_CheckPlayerDone
wait
}
}

actor WhirlPoolJumpItem : StarmanJumpItem
{
inventory.icon "SXISI9"
states
{
Jump:
TNT1 A 0 A_JumpIfInventory("DisableWhirlPool", 1, 9)
TNT1 A 0 A_TakeInventory("BossJumpCharge",125)
TNT1 A 0 A_Recoil(-5)
TNT1 A 0 A_SpawnItemEx("WhirlPoolAssist2", 0, 0, 0, 0, 0, 0)
TNT1 A 0 A_GiveInventory("MudkipImmunity", 1)
TNT1 A 1 ThrustThingZ(0,70,0,0)
TNT1 A 0 A_PlaySoundEx("Mudkip/Pokemon","Item")
TNT1 A 0 A_PlaySoundEx("Mudkip/Whirlpool","Body")
TNT1 A 1 A_TakeInventory("JumpCancler",1)
TNT1 A 0
fail
}
}

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

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

actor MudkipRageCount : Inventory
{
inventory.amount 1
inventory.maxamount 2
}