actor BreakDashBoss : BaseMM8BDMWep_CBM
{
tag "$TAGC_VH"
Dropitem "BreakDashWepCDropped"
weapon.ammouse 0
weapon.ammogive 112
obituary "$OB_PLUTOCLOSE"
Inventory.Pickupmessage "Power up! IN ME POWER!"
weapon.ammotype "GetBentDegenerateAmmo"
weapon.ammotype2 "BreakingIntoADashAmmo"
States
{
Spawn:
C_0V H 1
loop

Ready:
PLUH A 0 ACS_ExecuteAlways(998,0,DYE_PLUTO)
PLUH A 0 A_GunFlash
Goto Ready1

Ready1:
PLUH A 0 A_JumpIfInventory("GetBentDegenerateAmmo",56,"Ready2")
Ready111:
PLUH A 4 A_WeaponReady(WRF_ALLOWRELOAD|WRF_NOSECONDARY)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
Goto Ready1
Ready2:
PLUH D 0 A_JumpIfInventory("BreakDashAirFlag",2,"Ready111")
PLUH A 4 A_WeaponReady(WRF_ALLOWRELOAD)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
loop

Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
PLUH A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
PLUH A 1 A_Raise
Loop

Fire:                                             //656//784  
PLUH B 0 A_JumpIfInventory("BreakingIntoADashAmmo",656,"FireFast")
PLUH B 1
PLUH B 2 offset(-10,22)
PLUH B 2 offset(-15,18)
PLUH B 2 offset(-20,12)
PLUH C 0 A_Refire(1)
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain_CI")
PLUH C 1 
PLUH C 1
PLUH C 1
PLUH C 0 A_Refire("Fire2")
goto FireEnd
Fire2: 
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain_CI")
PLUH C 1 
PLUH C 1 
PLUH C 1 
PLUH C 0 A_Refire("Fire3")
goto FireEnd
Fire3: 
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain_CI")
PLUH C 1 
PLUH C 1 
PLUH C 1 
goto FireEnd
FireEnd:
PLUH B 2 
PLUH B 2 
PLUH B 2
Goto Ready1


FireFast: 
PLUH B 1
PLUH B 1 offset(-10,22)A_JumpIfInventory("PowerRage_ST",1,1)
PLUH B 1 offset(-13,19)
PLUH B 1 offset(-16,16)A_JumpIfInventory("PowerRage_ST",1,1)
PLUH B 1 offset(-20,12)
PLUH C 0 A_Refire(1)
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain2_CI")
PLUH C 1 
PLUH C 1
PLUH C 0 A_Refire("Fire2Fast")
goto FireFastEnd
Fire2Fast: 
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain2_CI")
PLUH C 1 
PLUH C 1 
PLUH C 0 A_Refire("Fire3Fast")
goto FireFastEnd
Fire3Fast: 
PLUH C 0 A_PlaySoundEx("weapon/GameBoyFire2","Weapon")
PLUH C 1 A_GiveInventory("PlutoMain2_CI")
PLUH C 1
PLUH C 1
goto FireFastEnd
FireFastEnd:
PLUH B 1 offset(-20,12)A_JumpIfInventory("PowerRage_ST",1,1)
PLUH B 1 offset(-16,16)
PLUH B 1 offset(-13,19)A_JumpIfInventory("PowerRage_ST",1,1)
PLUH B 1 offset(-10,22)
Goto Ready1

/*Altfire:
PLUH D 0 A_JumpIfInventory("BreakDashAirFlag",2,"AltfireMeow")
PLUH D 0 A_JumpIfInventory("GetBentDegenerateAmmo",56,"DasherStart")
goto AltfireMeow

AltfireMeow:
TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,2)
PLUH A 1 offset(0,20)A_GiveInventory("MeowMeowMix")
PLUH A 1 offset(0,30)
PLUH A 1 offset(0,40)
PLUH A 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH AAAA 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH AAAA 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH AAAA 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH AAAA 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH AAAA 1 offset(0,50)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH A 1 offset(0,40)
PLUH A 1 offset(0,30)
PLUH AA 1 offset(0,20)
PLUH A 0 A_GiveInventory("GetBentDegenerateAmmo",2)
Goto Ready1*/

//DasherStart:
Altfire:
PLUH D 0 //A_JumpIfInventory("BreakDashAirFlag",2,"Reload")
//TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,4)
PLUH B 0 A_GiveInventory("VivifyDelay8",1)
PLUH B 0 A_Refire(1)
PLUH B 1
PLUH B 2 offset(10,42)A_GunFlash("Flash")
PLUH B 2 offset(20,52)
PLUH B 2 offset(30,62)
PLUH B 0 //A_TakeInventory("CanWallJump",999)

PLUH B 0 A_GiveInventory("PlutoDashStarter_P",1)
PLUH B 0 A_ChangeFlag("NOGRAVITY",1)
PLUH B 0 A_TakeInventory("UnSolid",1)
PLUH B 0 A_ChangeFlag("SOLID",0)
PLUH B 0 A_ChangeFlag("THRUSPECIES",1)
BRHD D 0 A_GiveInventory("LadderDisable",1)
PLUH B 0 A_GiveInventory("BreakDashAirFlag",1)
PLUH B 0 SetPlayerProperty(0,1,0)
PLUH B 0 A_SetArg(4,momz)
PLUH B 0 A_SetArg(3,momy)
PLUH B 0 A_SetArg(2,momx)
PLUH B 0 //A_GiveInventory("BreakDashPower")
PLUH B 0 //A_GiveInventory("GuardUpFlag")
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,66)A_GiveInventory("PlutoBreakDashing_P",1)
PLUH B 1 Offset(30,58)A_GiveInventory("PlutoBreakDashing_P",1)

PLUH B 0 A_GiveInventory("VivifyDelay4",1)
PLUH B 0 A_TakeInventory("VivifyDelay8",999)
PLUH B 0 //A_TakeInventory("BreakDashPower")
PLUH B 0 //A_TakeInventory("GuardUpFlag")
PLUH B 0 //A_GiveInventory("CanWallJump")
PLUH B 0 A_ChangeFlag("NOGRAVITY",0)
PLUH B 0 A_ChangeFlag("THRUSPECIES",0)
PLUH B 0 A_SpawnItemEx("ResolidifyPlayer_H")
BRHD E 0 A_GiveInventory("LadderEnable",1)
PLUH B 0 SetPlayerProperty(0,0,0)
PLUH B 2 offset(30,62)
PLUH B 0 A_GunFlash("Flash.LandStart")
PLUH B 2 offset(20,52)
PLUH B 2 offset(10,42)
goto Ready1

Flash:
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
//TNT1 A 0 A_ScaleVelocity(1.125)
TNT1 A 1 A_GiveInventory("PlutoDashFlash_P",1)
loop

Flash.LandStart:
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 1 A_GiveInventory("PlutoDashFlash_P",1)
goto Flash.Land
Flash.Land:
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandZ")
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 1 A_GiveInventory("PlutoDashFlash_P",1)
loop
Flash.LandZ:
TNT1 A 1 A_GiveInventory("PlutoDashFlash_P",1)
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandEnd")
goto Flash.Land+2
Flash.LandEnd:
TNT1 A 0 A_TakeInventory("BreakDashAirFlag",999)
goto Flash

Reload:
TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,1)
PLUH D 1 offset(32,32)A_PlaySoundEx("weapon/slashclaw","Weapon")
PLUH D 1 offset(17,44)
PLUH D 1 offset(2,57)A_GiveInventory("PlutoAlt2_CI")
PLUH D 1 offset(-11,57)
PLUH D 1 offset(-17,72)A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH D 1 offset(-23,88)
PLUH E 1 offset(62,22)
PLUH E 1 offset(52,34)
PLUH E 1 offset(41,46)
PLUH E 1 offset(35,60)
PLUH E 1 offset(29,74)
PLUH E 0 A_JumpIf(ACS_NamedExecuteWithResult("Get_Button_R") == 0, "ReloadClawEnd")
PLUH E 0 A_Jump(256,"ReloadClaw2")
TNT1 A 55 
goto ReloadClaw2

ReloadClaw2:
TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,1)
PLUH F 1 offset(-32,32)A_PlaySoundEx("weapon/slashclaw","Weapon")
PLUH F 1 offset(-17,45)
PLUH F 1 offset(-2,57)A_GiveInventory("PlutoAlt_CI")
PLUH F 1 offset(11,72)
PLUH F 1 offset(23,88)A_GiveInventory("GetBentDegenerateAmmo",2)
PLUH F 1 offset(23,88)
PLUH G 1 offset(-62,22)
PLUH G 1 offset(-52,34)
PLUH G 1 offset(-41,46)
PLUH G 1 offset(-35,60)
PLUH G 1 offset(-29,74)
PLUH G 0 A_JumpIf(ACS_NamedExecuteWithResult("Get_Button_R") == 0, "ReloadClawEnd2")
PLUH E 0 A_Jump(256,"Reload")
TNT1 A 55 
goto Reload

ReloadClawEnd:
PLUH E 1 offset(25,92)
TNT1 A 2
PLUH A 2 offset(-15,86)
PLUH A 2 offset(-8,68)
PLUH A 2 offset(-3,50)
Goto Ready1

ReloadClawEnd2:
PLUH G 1 offset(-25,92)
TNT1 A 2
PLUH A 2 offset(-15,86)
PLUH A 2 offset(-8,68)
PLUH A 2 offset(-3,50)
Goto Ready1
}
}

actor GetBentDegenerateAmmo : Ammo
{
Inventory.amount 1
Inventory.Maxamount 112
+INVENTORY.IGNORESKILL
}

actor BreakingIntoADashAmmo : Ammo
{
Inventory.amount 1 
Inventory.Maxamount 750//896 
+INVENTORY.IGNORESKILL
}

actor PlutoPowerTrail : PowerSpeed
{
Speed 1.0
Powerup.Duration 5
}

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

actor MeowMeowMix : CustomInventory
{
states
{
Pickup:
TNT1 A 0 ACS_NamedExecuteAlways("MEOWMEOWMEOWMEOWMEOWMEOWMEOW",0)
stop
}
} 

actor PlutoMeowItem : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
inventory.icon "PlMwIcon"
Tag "$TAGC_VH2"
inventory.pickupmessage "Get your grown Garfield ass outta there!"
scale 2.0
+INVBAR
states
{
Spawn:
NEPH Z 1
loop
Use:
TNT1 A 0 A_JumpIfInventory("MeowCopeDelay",1,"Cope")
TNT1 A 0 A_JumpIfInventory("CutterFlag",69,"MemeCope")
TNT1 A 0 A_GiveInventory("CutterFlag",1)
TNT1 A 0 A_GiveInventory("MeowCopeDelay")
TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,2)
TNT1 A 0 A_PlaySoundEx("pluto/meowcope","voice")
fail
Cope:
TNT1 A 0
fail
MemeCope:
TNT1 A 0 A_TakeInventory("CutterFlag",999)
TNT1 A 0 A_GiveInventory("MeowCopeDelay")
TNT1 A 0 ACS_NamedExecute("BULL_SetState",0,2)
TNT1 A 0 A_PlaySoundEX("pluto/copeinducer","auto")//pluto/meowcope
fail
}
}

actor MeowCopeDelay : Powerup
{
Powerup.Duration 5
}

actor PlutoDashStarter_P : CustomInventory
{
States
{                                                  
Pickup:                                           //656//784
TNT1 A 0 A_JumpIfInventory("BreakingIntoADashAmmo",656,"PickupBoost")
TNT1 A 0 A_ChangeVelocity(33*cos(pitch),0,33*-sin(pitch),3)
stop
PickupBoost:
TNT1 A 0 A_ChangeVelocity(44*cos(pitch),0,44*-sin(pitch),3)
stop
}
}

ACTOR PlutoDashCancelFlag : Inventory
{
 Inventory.MaxAmount 1
 -INVBAR
}

ACTOR PlutoIsDashing : Inventory
{
 Inventory.MaxAmount 1
 -INVBAR
}

actor PlutoBreakDashing_P : CustomInventory
{
States
{
Pickup: 
TNT1 A 0 A_TakeInventory("GetBentDegenerateAmmo",3)  
TNT1 A 0 A_FireCustomMissile("PlutoBreakDashDamager",0,0,0,0)
TNT1 A 0 A_GiveInventory("VivifyDelay8",1)
TNT1 A 0 A_JumpIfInventory("VivifyDelay3",1,"No")
TNT1 A 0 A_GiveInventory("VivifyDelay3",1)
TNT1 A 0 A_ChangeVelocity(args[2],args[3],args[4],2)
TNT1 A 0 A_PlaySound("weapon/plutobreakdash",4)
stop
No:
TNT1 A 0
stop
}
}


actor PlutoDashFlash_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 ACS_NamedExecuteAlways("cbm_HealthDamageRage",0,27)

TNT1 A 0 A_JumpIfInventory("PlutoBoostCheckDelay",1,3)
TNT1 A 0 A_GiveInventory("PlutoBoostCheckDelay",1)
TNT1 A 0 A_GiveInventory("PlutoDashAmmoAdjust_P",1)
TNT1 A 0                                          //656//784
TNT1 A 0 A_JumpIfInventory("BreakingIntoADashAmmo",656,"BonusSpeed")
stop

BonusSpeed:
TNT1 A 0 A_JumpIfInventory("PlutoPowerTrail",1,2)
TNT1 A 0 A_PlaySound("weapon/plutoultraspeed",7,0.85)
TNT1 A 0 A_GiveInventory("PlutoPowerTrail",1)
stop
}
}

actor PlutoBoostCheckDelay : Powerup
{
Powerup.Duration 2
}
 
actor PlutoFloorCheckDelay : Powerup
{
Powerup.Duration 8
}    

actor PlutoFloorCheckDelayGiver : CustomInventory
{
States
{
Pickup: 
TNT1 A 0 
TNT1 A 0 A_JumpIf(Z-FloorZ>0,"Air")
Stop
Air:
TNT1 A 0 A_GiveInventory("PlutoFloorCheckDelay",1)  
Stop
}
} 
  
ACTOR PlutoScalingAmmoTakeTakerCooldown : Powerup
{
 Powerup.Duration 3 
} 
 
actor PlutoScalingAmmoTakeTaker : CustomInventory
{
States
{
Pickup: 
TNT1 A 0 
TNT1 A 0 A_JumpIfInventory("BreakingIntoADashAmmo",50,"Work")  
TNT1 A 0 A_TakeInventory("PlutoScalingAmmoTake",99)  
Stop
Work:
TNT1 A 0 A_JumpIfInventory("PlutoScalingAmmoTakeTakerCooldown",1,"Pickup0")
TNT1 A 0 A_GiveInventory("PlutoScalingAmmoTakeTakerCooldown",1)
TNT1 A 0 A_JumpIfInventory("PlutoScalingAmmoTake",35,"Pickup3")
TNT1 A 0 A_JumpIfInventory("PlutoScalingAmmoTake",15,"Pickup2")
TNT1 A 0 A_TakeInventory("PlutoScalingAmmoTake",2)//1
Stop
Pickup2: 
TNT1 A 0 A_TakeInventory("PlutoScalingAmmoTake",3)//2
Stop
Pickup3: 
TNT1 A 0 A_TakeInventory("PlutoScalingAmmoTake",5)//5
Stop 
Pickup0:
TNT1 A 0 //Nada :D   
Stop
}
} 
  
ACTOR PlutoScalingAmmoTake : inventory
{
 Inventory.MaxAmount 50
 -INVBAR
}

actor PlutoDashAmmoAdjust_P : CustomInventory
{
States
{
Pickup:  
TNT1 A 0 A_TakeInventory("BreakingIntoADashAmmo",1)   
TNT1 A 0 A_JumpIfInventory("VivifyDelay8",1,"P_DashCheck") 
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRealMovementInput")==1,"P_SpeedCheck")
goto P_Take6

P_SpeedCheck:  
TNT1 A 0 A_JumpIfInventory("PowerWallJumpSpeed",1,"P_WallJumpCheck") 
TNT1 A 0 A_JumpIfInventory("PlutoFloorCheckDelay",1,"P_WallJumpCheck")
TNT1 A 0 A_JumpIf(sqrt(MOMX*MOMX+MOMY*MOMY)>=11,"P_Give") 
goto P_Taking
  
P_WallJumpCheck:    
TNT1 A 0 A_GiveInventory("PlutoFloorCheckDelayGiver",1)  
TNT1 A 0 A_JumpIf(sqrt(MOMX*MOMX+MOMY*MOMY)>=8,"P_Give") 
goto P_Taking

P_DashCheck:   
TNT1 A 0 A_JumpIf(sqrt(MOMX*MOMX+MOMY*MOMY+MOMZ*MOMZ)>=11,"P_Give") 
P_Taking:
TNT1 A 0 A_GiveInventory("PlutoScalingAmmoTake",7)//5
TNT1 A 0 A_JumpIfInventory("PlutoScalingAmmoTake",35,"P_Take2")
TNT1 A 0 A_JumpIfInventory("PlutoScalingAmmoTake",10,"P_Take1")
TNT1 A 0 A_TakeInventory("BreakingIntoADashAmmo",15)
stop 
P_Take1:     
TNT1 A 0 A_TakeInventory("BreakingIntoADashAmmo",35)
stop 
P_Take2:    
TNT1 A 0 A_TakeInventory("BreakingIntoADashAmmo",55)
stop   
P_Take6:   
TNT1 A 0 A_TakeInventory("BreakingIntoADashAmmo",80)
stop 
  
P_Give:       
TNT1 A 0 A_GiveInventory("PlutoScalingAmmoTakeTaker",1)
TNT1 A 0 A_JumpIfInventory("VivifyDelay8",1,"P_GiveD") 
TNT1 A 0 A_JumpIfInventory("PowerRage_ST",1,"P_Give_R")                  
TNT1 A 0 A_GiveInventory("BreakingIntoADashAmmo",sqrt(MOMX*MOMX+MOMY*MOMY)*0.4) 
stop
P_Give_R:                                                                
TNT1 A 0 A_GiveInventory("BreakingIntoADashAmmo",sqrt(MOMX*MOMX+MOMY*MOMY)*0.8)
stop 
P_GiveD: 
TNT1 A 0 A_JumpIfInventory("PowerRage_ST",1,"P_GiveD_R")                 
TNT1 A 0 A_GiveInventory("BreakingIntoADashAmmo",sqrt(MOMX*MOMX+MOMY*MOMY)*0.55)
stop
P_GiveD_R:                                                               
TNT1 A 0 A_GiveInventory("BreakingIntoADashAmmo",sqrt(MOMX*MOMX+MOMY*MOMY)*1.05)
stop 
}
}
  
actor BreakDashPower : BasePowerPro
{
damagefactor "Normal", 0.85
}

actor PlutoFireBall
{
translation "192:192=56:56", "198:198=60:60"
PROJECTILE
Obituary "$OB_PLUTOSHOT"
Damagetype "Pluto_Shot"
ReactionTime 1
damage (8)
Radius 10
Height 10
speed 40
scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 A 0 ACS_NamedExecuteAlways("BULL_Tidifier", 0)
SpawnLOOP:
PLUH HIHIHIH 3
PLUH I 1 A_CountDown
wait
Death:
PLUH IHI 1 A_Fadeout
stop
}
}
actor PlutoFireBall2 : PlutoFireBall
{
speed 60
States
{
Spawn:
TNT1 A 0
TNT1 A 0 ACS_NamedExecuteAlways("BULL_Tidifier", 0)
SpawnLOOP:
PLUH HIHIHIH 2
PLUH I 1 A_CountDown
wait
Death:
PLUH IHIHI 1 A_Fadeout
stop
}
}

actor PlutoFireBallB : PlutoFireBall{Translation"192:192=205:205","198:198=74:74"}
actor PlutoFireBallR : PlutoFireBall{Translation"192:192=171:171","198:198=41:41"}
actor PlutoFireBallO : PlutoFireBall{Translation"192:192=104:104","198:198=128:128"}
actor PlutoFireBallP : PlutoFireBall{Translation"192:192=229:229","198:198=232:232"}

actor PlutoFireBall2B : PlutoFireBall2{Translation"192:192=205:205","198:198=74:74"}
actor PlutoFireBall2R : PlutoFireBall2{Translation"192:192=171:171","198:198=41:41"}
actor PlutoFireBall2O : PlutoFireBall2{Translation"192:192=104:104","198:198=128:128"}
actor PlutoFireBall2P : PlutoFireBall2{Translation"192:192=229:229","198:198=232:232"}

 
actor PlutoFurySwipes
{
translation "202:202=210:210", "199:199=210:210"
PROJECTILE
damagetype "Pluto_Swipe"
Obituary "$OB_PLUTOSWIPE"
+THRUACTORS
+DONTBLAST
ReactionTime 1
damage (0)
Radius 20
Height 16
speed 34
scale 2.5
States
{
Spawn:
//Y_7F ABCDE
PLUH K 0 
PLUH K 1 A_SpawnItemEx("PlutoFSwipe20_D")
PLUH L 1 A_SpawnItemEx("PlutoFSwipe18_D")
PLUH M 1 A_SpawnItemEx("PlutoFSwipe16_D")
PLUH N 1 A_SpawnItemEx("PlutoFSwipe14_D")
PLUH O 1 A_SpawnItemEx("PlutoFSwipe12_D")
stop
}
}
  
actor PlutoFurySwipes2 : PlutoFurySwipes
{
States
{
Spawn:
PLUH P 0 
PLUH P 1 A_SpawnItemEx("PlutoFSwipe20_D")
PLUH Q 1 A_SpawnItemEx("PlutoFSwipe18_D")
PLUH R 1 A_SpawnItemEx("PlutoFSwipe16_D")  
PLUH S 1 A_SpawnItemEx("PlutoFSwipe14_D")
PLUH T 1 A_SpawnItemEx("PlutoFSwipe12_D")
stop
}
}

actor PlutoFurySwipesB : PlutoFurySwipes{Translation"202:202=205:205","199:199=74:74"}
actor PlutoFurySwipesR : PlutoFurySwipes{Translation"202:202=171:171","199:199=41:41"}
actor PlutoFurySwipesO : PlutoFurySwipes{Translation"202:202=104:104","199:199=128:128"}
actor PlutoFurySwipesP : PlutoFurySwipes{Translation"202:202=229:229","199:199=232:232"}

actor PlutoFurySwipes2B : PlutoFurySwipes2{Translation"202:202=205:205","199:199=74:74"}
actor PlutoFurySwipes2R : PlutoFurySwipes2{Translation"202:202=171:171","199:199=41:41"}
actor PlutoFurySwipes2O : PlutoFurySwipes2{Translation"202:202=104:104","199:199=128:128"}
actor PlutoFurySwipes2P : PlutoFurySwipes2{Translation"202:202=229:229","199:199=232:232"}
 
actor Pluto_FSwipesProtect : PowerProtection
{
Powerup.Duration 6
DamageFactor "Pluto_Swipe", 0.0
}

actor PlutoFSwipe20_D
{
PROJECTILE
damagetype "Pluto_Swipe"
Obituary "$OB_PLUTOSWIPE"
+RIPPER
+DONTBLAST
+DONTSPLASH
Renderstyle None
damage (12) 
radius 35
height 35
States
{
Spawn:
TNT1 AA 0
TNT1 A 1//0
stop
}
}

actor PlutoFSwipe18_D : PlutoFSwipe20_D {damage (12)}
actor PlutoFSwipe16_D : PlutoFSwipe20_D {damage (9)}
actor PlutoFSwipe14_D : PlutoFSwipe20_D {damage (6)}
actor PlutoFSwipe12_D : PlutoFSwipe20_D {damage (3)}

/*
actor Pluto_Dash1Protect : PowerProtection
{
Powerup.Duration 20
DamageFactor "Pluto_Dash1", 0.25
}

actor PlutoBreakDashDamager : BasicExplosion
{
obituary "$OB_PLUTODASH"
Damagetype "Pluto_Dash1"
States
{
Spawn:
TNT1 A 0
TNT1 A 2 A_Explode(10,75,0,0,75)
stop
}
}*/


actor Pluto_Dash1Protect : PowerProtection
{
Powerup.Duration 20 
DamageFactor "Pluto_Dash1", 0.00
}
 
actor Pluto_Dash3Protect : PowerProtection
{
Powerup.Duration 20 
DamageFactor "Pluto_Dash3", 0.14
}

actor PlutoBreakDashDamager : BasicExplosion
{
obituary "$OB_PLUTODASH"
Damagetype "Pluto_Dash1"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_Explode(8,38,0,0,38) 
TNT1 A 0 A_SetDamageType("Pluto_Dash3")
TNT1 A 2 A_Explode(10,75,0,0,75)
stop
}
}
   
actor PlutoMain_CI : TeamColor_CI
{
States
{
FireX:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall",random(-1,1),1,8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("PlutoFireBallB",random(-1,1),1,8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("PlutoFireBallR",random(-1,1),1,8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("PlutoFireBallO",random(-1,1),1,8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("PlutoFireBallP",random(-1,1),1,8,0)
goto Done
}
}


actor PlutoMain2_CI : TeamColor_CI
{
States
{
FireX:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall2",random(-1,1),1,8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall2B",random(-1,1),1,8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall2R",random(-1,1),1,8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall2O",random(-1,1),1,8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("PlutoFireBall2P",random(-1,1),1,8,0)
goto Done
}
}

actor PlutoAlt_CI : TeamColor_CI
{
States
{
FireX: 
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireB:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipesB",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireR:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipesR",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireO:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipesO",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireP:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipesP",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
}
}

actor PlutoAlt2_CI : TeamColor_CI
{
States
{
FireX: 
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes2",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireB:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes2B",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireR:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes2R",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireO:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes2O",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
FireP:
TNT1 A 0 A_SpawnItemEx("PlutoFurySwipes2P",cos(pitch)*10,8,32-(sin(pitch)*10),sqrt(momx*momx+momy*momy)+(cos(pitch)*35),0,momz+(-sin(pitch)*35),0,SXF_TRANSFERTRANSLATION) 
goto Done
}
}
