actor Rock_W0 : BaseMM8BDMWep_CBM
{
tag "$TAGC_0D"
dropitem "MegaBallWep"
Weapon.AmmoUse 0//111
Weapon.AmmoGive 0
//Weapon.SlotNumber 2
Inventory.Pickupmessage "Mega Multiball!"
Obituary "$OB_ROCKKICK"
weapon.ammotype1 "BallsOfSteelAmmo"
weapon.ammotype2 "RockmanSoccerAmmo"
inventory.icon "MEGABALI"
States
{
Spawn:
C_00 D 1
loop

Deselect:
H0RK P 0 //offset(1,60)
goto DeselectSwap
Select:
H0RK P 0
goto SelectSwap

Ready:
H0RK A 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK A 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK A 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK A 2 A_WeaponReady(4)
H0RK A 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK A 2 A_WeaponReady
H0RK A 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop

Fire:
H0RK A 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK A 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 A_WeaponReady(7)
H0RK A 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK A 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,34)A_WeaponReady(7)
H0RK A 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK A 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,36)A_WeaponReady(7)
H0RK A 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK A 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,40)A_WeaponReady(7)
H0RK A 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK A 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,44)A_WeaponReady(7)
H0RK A 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,45)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,46)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,47)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,48)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,48)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,47)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,46)A_WeaponReady(7)
H0RK A 0 A_Refire(1)
goto OldFire
H0RK A 0 A_GiveInventory("RockKickCharge_P")
H0RK A 1 offset(0,45)A_WeaponReady(7)
H0RK A 0 A_Refire("Fire5")
goto OldFire


OldFire:
H0RK J 0 A_GiveInventory("RockBallDropM_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK A 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK A 2 offset(0,86)A_WeaponReady(7)
H0RK A 2 offset(0,68)A_WeaponReady(7)
H0RK A 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_M_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 7 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall

Flash:
TNT1 A 0 A_JumpIfInventory("RockStaminaInAir_F",1,"Flash.LandStart")
TNT1 A 1
TNT1 A 0 A_GiveInventory("RockBallJumpStaminaTake_P")
loop
Flash.LandStart:
TNT1 A 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
loop
Flash.LandZ:
TNT1 A 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("RockStaminaInAir_F")
goto Flash
}
}

actor Rock_W1 : Rock_W0
{
tag "$TAGC_0D1"
//Weapon.SlotNumber 4
Inventory.Pickupmessage "Cut Multiball!"
inventory.icon "RCUTSI"
States
{
Ready:
H0RK B 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK B 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK B 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK B 2 A_WeaponReady(4)
H0RK B 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK B 2 A_WeaponReady
H0RK B 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop


Fire:
H0RK B 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK B 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 A_WeaponReady(7)
H0RK B 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK B 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,34)A_WeaponReady(7)
H0RK B 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK B 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,36)A_WeaponReady(7)
H0RK B 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK B 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,40)A_WeaponReady(7)
H0RK B 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK B 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,44)A_WeaponReady(7)
H0RK B 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,45)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,46)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,47)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,48)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,48)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,47)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,46)A_WeaponReady(7)
H0RK B 0 A_Refire(1)
goto OldFire
H0RK B 0 A_GiveInventory("RockKickCharge_P")
H0RK B 1 offset(0,45)A_WeaponReady(7)
H0RK B 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropC_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK B 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK B 2 offset(0,86)A_WeaponReady(7)
H0RK B 2 offset(0,68)A_WeaponReady(7)
H0RK B 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_C_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W2 : Rock_W0
{
tag "$TAGC_0D2"
//Weapon.SlotNumber 5
Inventory.Pickupmessage "Guts Multiball!"
inventory.icon "SARMSI"
States
{
Ready:
H0RK C 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK C 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK C 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK C 2 A_WeaponReady(4)
H0RK C 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK C 2 A_WeaponReady
H0RK C 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop


Fire:
H0RK C 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK C 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 A_WeaponReady(7)
H0RK C 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK C 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,34)A_WeaponReady(7)
H0RK C 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK C 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,36)A_WeaponReady(7)
H0RK C 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK C 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,40)A_WeaponReady(7)
H0RK C 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK C 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,44)A_WeaponReady(7)
H0RK C 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,45)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,46)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,47)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,48)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,48)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,47)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,46)A_WeaponReady(7)
H0RK C 0 A_Refire(1)
goto OldFire
H0RK C 0 A_GiveInventory("RockKickCharge_P")
H0RK C 1 offset(0,45)A_WeaponReady(7)
H0RK C 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropG_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK C 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK C 2 offset(0,86)A_WeaponReady(7)
H0RK C 2 offset(0,68)A_WeaponReady(7)
H0RK C 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_G_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W3 : Rock_W0
{
tag "$TAGC_0D3"
//Weapon.SlotNumber 3
Inventory.Pickupmessage "Ice Multiball!"
inventory.icon "ICESI"
States
{
Ready:
H0RK D 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK D 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK D 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK D 2 A_WeaponReady(4)
H0RK D 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK D 2 A_WeaponReady
H0RK D 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop


Fire:
H0RK D 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK D 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 A_WeaponReady(7)
H0RK D 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK D 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,34)A_WeaponReady(7)
H0RK D 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK D 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,36)A_WeaponReady(7)
H0RK D 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK D 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,40)A_WeaponReady(7)
H0RK D 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK D 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,44)A_WeaponReady(7)
H0RK D 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,45)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,46)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,47)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,48)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,48)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,47)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,46)A_WeaponReady(7)
H0RK D 0 A_Refire(1)
goto OldFire
H0RK D 0 A_GiveInventory("RockKickCharge_P")
H0RK D 1 offset(0,45)A_WeaponReady(7)
H0RK D 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropI_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK D 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK D 2 offset(0,86)A_WeaponReady(7)
H0RK D 2 offset(0,68)A_WeaponReady(7)
H0RK D 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_I_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W4 : Rock_W0
{
tag "$TAGC_0D4"
//Weapon.SlotNumber 5
Inventory.Pickupmessage "Bomb Multiball!"
inventory.icon "BOMBSI"
States
{
Ready:
H0RK E 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK E 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK E 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK E 2 A_WeaponReady(4)
H0RK E 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK E 2 A_WeaponReady
H0RK E 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop

Fire:
H0RK E 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK E 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 A_WeaponReady(7)
H0RK E 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK E 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,34)A_WeaponReady(7)
H0RK E 0 A_Refire("Fire2")
goto OldFire
Fire2:
H0RK E 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,36)A_WeaponReady(7)
H0RK E 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK E 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,40)A_WeaponReady(7)
H0RK E 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK E 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,44)A_WeaponReady(7)
H0RK E 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,45)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,46)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,47)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,48)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,48)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,47)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,46)A_WeaponReady(7)
H0RK E 0 A_Refire(1)
goto OldFire
H0RK E 0 A_GiveInventory("RockKickCharge_P")
H0RK E 1 offset(0,45)A_WeaponReady(7)
H0RK E 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropB_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK E 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK E 2 offset(0,86)A_WeaponReady(7)
H0RK E 2 offset(0,68)A_WeaponReady(7)
H0RK E 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_B_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W5 : Rock_W0
{
tag "$TAGC_0D5"
//Weapon.SlotNumber 2
Inventory.Pickupmessage "Fire Multiball!"
inventory.icon "FIRESI"
States
{
Ready:
H0RK F 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK F 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK F 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK F 2 A_WeaponReady(4)
H0RK F 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK F 2 A_WeaponReady
H0RK F 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop

Fire:
H0RK F 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK F 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 A_WeaponReady(7)
H0RK F 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK F 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,34)A_WeaponReady(7)
H0RK F 0 A_Refire("Fire2")
goto OldFire
Fire2:
H0RK F 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,36)A_WeaponReady(7)
H0RK F 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK F 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,40)A_WeaponReady(7)
H0RK F 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK F 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,44)A_WeaponReady(7)
H0RK F 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,45)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,46)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,47)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,48)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,48)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,47)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,46)A_WeaponReady(7)
H0RK F 0 A_Refire(1)
goto OldFire
H0RK F 0 A_GiveInventory("RockKickCharge_P")
H0RK F 1 offset(0,45)A_WeaponReady(7)
H0RK F 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropF_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK F 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK F 2 offset(0,86)A_WeaponReady(7)
H0RK F 2 offset(0,68)A_WeaponReady(7)
H0RK F 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_F_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W6 : Rock_W0
{
tag "$TAGC_0D6"
//Weapon.SlotNumber 2
Inventory.Pickupmessage "Elec Multiball!"
inventory.icon "THUNSI"
States
{
Ready:
H0RK G 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK G 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK G 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK G 2 A_WeaponReady(4)
H0RK G 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK G 2 A_WeaponReady
H0RK G 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop

Fire:
H0RK G 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK G 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 A_WeaponReady(7)
H0RK G 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK G 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,34)A_WeaponReady(7)
H0RK G 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK G 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,36)A_WeaponReady(7)
H0RK G 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK G 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,40)A_WeaponReady(7)
H0RK G 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK G 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,44)A_WeaponReady(7)
H0RK G 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,45)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,46)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,47)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,48)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,48)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,47)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,46)A_WeaponReady(7)
H0RK G 0 A_Refire(1)
goto OldFire
H0RK G 0 A_GiveInventory("RockKickCharge_P")
H0RK G 1 offset(0,45)A_WeaponReady(7)
H0RK G 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropE_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK G 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK G 2 offset(0,86)A_WeaponReady(7)
H0RK G 2 offset(0,68)A_WeaponReady(7)
H0RK G 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_E_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W7 : Rock_W0
{
tag "$TAGC_0D7"
//Weapon.SlotNumber 6
Inventory.Pickupmessage "Time Multiball!"
inventory.icon "TIMMI2"
States
{
Ready:
H0RK H 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK H 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK H 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK H 2 A_WeaponReady(4)
H0RK H 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK H 2 A_WeaponReady
H0RK H 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop


Fire:
H0RK H 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK H 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 A_WeaponReady(7)
H0RK H 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK H 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,34)A_WeaponReady(7)
H0RK H 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK H 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,36)A_WeaponReady(7)
H0RK H 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK H 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,40)A_WeaponReady(7)
H0RK H 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK H 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,44)A_WeaponReady(7)
H0RK H 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,45)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,46)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,47)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,48)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,48)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,47)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,46)A_WeaponReady(7)
H0RK H 0 A_Refire(1)
goto OldFire
H0RK H 0 A_GiveInventory("RockKickCharge_P")
H0RK H 1 offset(0,45)A_WeaponReady(7)
H0RK H 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropT_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK H 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK H 2 offset(0,86)A_WeaponReady(7)
H0RK H 2 offset(0,68)A_WeaponReady(7)
H0RK H 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_T_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor Rock_W8 : Rock_W0
{
tag "$TAGC_0D8"
//Weapon.SlotNumber 4
Inventory.Pickupmessage "Oil Multiball!"
inventory.icon "OILLI"
States
{
Ready:
H0RK I 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_ROCKC)
H0RK I 0 A_GunFlash("Flash",1)
goto ReadyBall
ReadyBall:
H0RK I 0 A_JumpIfInventory("BallsOfSteelAmmo",111,"ReadyBall2")
H0RK I 2 A_WeaponReady(4)
H0RK I 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop
ReadyBall2:
H0RK I 2 A_WeaponReady
H0RK I 0 A_GiveInventory("BallsOfSteelAmmo",10)
loop


Fire:
H0RK I 0 A_JumpIfInventory("IsBot",1,"BotFire")
H0RK I 0 A_JumpIfInventory("RockmanSoccerAmmo",7,"Fire1")
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 A_WeaponReady(7)
H0RK I 0 A_Refire("Fire")
goto OldFire
Fire1:
H0RK I 0 A_JumpIfInventory("RockmanSoccerAmmo",14,"Fire2")
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,34)A_WeaponReady(7)
H0RK I 0 A_Refire("Fire1")
goto OldFire
Fire2:
H0RK I 0 A_JumpIfInventory("RockmanSoccerAmmo",28,"Fire3")
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,36)A_WeaponReady(7)
H0RK I 0 A_Refire("Fire2")
goto OldFire
Fire3:
H0RK I 0 A_JumpIfInventory("RockmanSoccerAmmo",42,"Fire4")
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,40)A_WeaponReady(7)
H0RK I 0 A_Refire("Fire3")
goto OldFire
Fire4:
H0RK I 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Fire5")
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,44)A_WeaponReady(7)
H0RK I 0 A_Refire("Fire4")
goto OldFire
Fire5:
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,45)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,46)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,47)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,48)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,48)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,47)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,46)A_WeaponReady(7)
H0RK I 0 A_Refire(1)
goto OldFire
H0RK I 0 A_GiveInventory("RockKickCharge_P")
H0RK I 1 offset(0,45)A_WeaponReady(7)
H0RK I 0 A_Refire("Fire5")
goto OldFire

OldFire:
H0RK J 0 A_GiveInventory("RockBallDropO_P",1)
goto FireAni
FireAni:
H0RK J 1 offset(0,33)A_JumpIfInventory("PlayerPropertyRage",1,1)
H0RK J 1 offset(0,33)A_WeaponReady(7)
H0RK J 2 offset(0,51)A_WeaponReady(7)
H0RK J 2 offset(0,69)A_WeaponReady(7)
H0RK J 2 offset(0,87)A_WeaponReady(7)
H0RK I 0 A_TakeInventory("RockmanSoccerAmmo",200)
H0RK I 2 offset(0,86)A_WeaponReady(7)
H0RK I 2 offset(0,68)A_WeaponReady(7)
H0RK I 2 offset(0,50)A_WeaponReady(7)
Goto ReadyBall

Altfire:
H0RK K 0 A_GiveInventory("RockKickFlag",1)
H0RK K 1 offset(12,38)A_GiveInventory("Rock_O_Pickup_X",1)
H0RK L 3 offset(8,36)A_GiveInventory("BallsOfSteelAmmo",42)
H0RK M 8 offset(8,22)A_GiveInventory("RockBallKick_P",1)
H0RK N 5 offset(8,8)A_TakeInventory("RockmanSoccerAmmo",200)
H0RK K 4 offset(12,38)
H0RK K 0 offset(12,38)A_TakeInventory("RockKickFlag",1)
Goto ReadyBall

NoAmmo:
H0RK J 1
Goto ReadyBall

BotFire:
H0RK J 1 A_GiveInventory("Rock_Bot_Pickup_X",1)
Goto ReadyBall
}
}

actor BallsOfSteelAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 777
+INVENTORY.IGNORESKILL
}

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

actor RockBallJumpStamina : Inventory
{
inventory.amount 1
inventory.maxamount 500
}
actor RockStaminaInAir_F :OnceC{}

actor RockKickCharge_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("BallsOfSteelAmmo",2+CallACS("core_checkrune",RUNE_RAGE)*2)
TNT1 A 0 A_GiveInventory("RockmanSoccerAmmo",1+CallACS("core_checkrune",RUNE_RAGE))
stop
}
}

actor RockBallJumpStaminaTake_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("RockBallJumpStamina",1,1)
stop
TNT1 A 0 A_TakeInventory("RockBallJumpStamina",2+CallACS("core_checkrune",RUNE_RAGE)*2)
stop
}
}

actor RockKickFlag :OnceC{}

actor RockKickDelay : PowerUp
{
powerup.duration 8
}
actor RockJumpDelay : RockKickDelay{}

actor RockMultiDelay : PowerUp
{
powerup.duration 2
}
actor RockKickBoostChance : PowerUp
{
powerup.duration 14
}


actor RockBallKick_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("RockmanSoccerAmmo",1,"No")
TNT1 A 0 A_FireCustomMissile("RockKickC",0,0,8,0)
stop
No:
TNT1 A 0
stop
}
}

actor RockBallJump_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEx("Rock_MMFX",16,0,-22,0,0,0,0,1)
TNT1 A 0 A_JumpIfInventory("RockBallJumpStamina",500,"P_JumpNo")
TNT1 A 0 A_GiveInventory("RockBallJumpStamina",50)
TNT1 A 0 ThrustThingZ(0,44,0,0)
goto P_Take
P_JumpNo:
TNT1 A 0 ThrustThingZ(0,0,0,0)
goto P_Take
P_Take:
TNT1 A 0 A_GiveInventory("RockStaminaInAir_F",1)
TNT1 A 0 A_TakeInventory("RockmanSoccerAmmo",200)
stop
}
}
actor RockBallJump_P2 : RockBallJump_P
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("RockBallJumpStamina",500,"P_JumpNo")
TNT1 A 0 A_GiveInventory("RockBallJumpStamina",25)
TNT1 A 0 ThrustThingZ(0,60,0,0)
goto P_Take
}
}

actor RockBallWeapons : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_GiveInventory("Rock_W0",1)
TNT1 A 0 A_GiveInventory("Rock_W1",1)
TNT1 A 0 A_GiveInventory("Rock_W2",1)
TNT1 A 0 A_GiveInventory("Rock_W3",1)
TNT1 A 0 A_GiveInventory("Rock_W4",1)
TNT1 A 0 A_GiveInventory("Rock_W5",1)
TNT1 A 0 A_GiveInventory("Rock_W6",1)
TNT1 A 0 A_GiveInventory("Rock_W7",1)
TNT1 A 0 A_GiveInventory("Rock_W8",1)
stop
}
}

actor LMSRockBallPickup : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_core_checkservercvar",7)==1,"No")
TNT1 A 0 A_JumpIf(CallACS("core_checkmode",0)==2,"Yes")
stop
No:
TNT1 A 0
stop
//cbm_FetchRockLMSBall
Yes:
TNT1 A 0 A_Jump(256,"Yes1","Yes2","Yes3","Yes4","Yes5","Yes6","Yes7","Yes8")
goto Yes0
Yes0:
TNT1 A 0 A_GiveInventory("Rock_W0",1)
stop
Yes1:
TNT1 A 0 A_GiveInventory("Rock_W1",1)
stop
Yes2:
TNT1 A 0 A_GiveInventory("Rock_W2",1)
stop
Yes3:
TNT1 A 0 A_GiveInventory("Rock_W3",1)
stop
Yes4:
TNT1 A 0 A_GiveInventory("Rock_W4",1)
stop
Yes5:
TNT1 A 0 A_GiveInventory("Rock_W5",1)
stop
Yes6:
TNT1 A 0 A_GiveInventory("Rock_W6",1)
stop
Yes7:
TNT1 A 0 A_GiveInventory("Rock_W7",1)
stop
Yes8:
TNT1 A 0 A_GiveInventory("Rock_W8",1)
stop
}
}


///////////////////////////////////////////////////////////////////
//  ___   _   _    _    ___    ___  ___   ___ _____ ___ ___ _    //
// | _ ) /_\ | |  | |  / __|  / _ \| __| / __|_   _| __| __| |   //
// | _ \/ _ \| |__| |__\__ \ | (_) | _|  \__ \ | | | _|| _|| |__ //
// |___/_/ \_\____|____|___/  \___/|_|   |___/ |_| |___|___|____|//
//                                                               //
///////////////////////////////////////////////////////////////////

//Projectiles

actor RockKickC : ProjSpawnFuncActor
{
var int user_TranslateBlackColors;
PROJECTILE
damagetype "Rock_Kick"
Obituary "$OB_ROCKKICK"
+DONTREFLECT
RenderStyle "translucent"
Alpha 0.70
ReactionTime 1
damage (0)
Radius 12
Height 20
speed 40
scale 2.0
States
{
Spawn:
H0RK Q 0
H0RK Q 0 A_SpawnItemEx("PropBlowerEffect")
H0RK QRS 2
TNT1 A 1 A_CountDown
wait
Death:
TNT1 A 0 A_SpawnItemEx("PropBlowerEffect")
TNT1 A 2 A_Explode(180,56,0,0,24)
stop
}
}

actor Rock_MMFX : BasicGraphicEffect
{
+FORCEXYBILLBOARD
+BRIGHT
States
{
SpawnFrame:
NMFX ABCD 2
stop
}
}

actor Rock_VMFX : BasicGraphicEffect
{
+FORCEXYBILLBOARD
+BRIGHT
States
{
SpawnFrame://VMFX
NMFX ABCD 2
stop
}
}

actor Rock_SuperKickCheckFX : BasicGraphicEffect//BasicExplosion
{
+FORCEXYBILLBOARD
+BRIGHT
Speed 20
Scale 2.5
States
{
SpawnFrame:
TNT1 A 0 A_JumpIfInTargetInventory("RockmanSoccerAmmo",56,"KickFX")
stop
KickFX:
H9RK UVWX 2
stop
}
}
actor Rock_SuperKickCheckFX2 : Rock_SuperKickCheckFX
{
States
{
SpawnFrame:
goto KickFX
}
}

actor Rock_B_M_Start : ProjSpawnFuncActor
{
+MISSILE
damagetype "Rock_MegaBall"
Obituary "$OB_ROCKBALL"
+DONTREFLECT
+STEPMISSILE
maxstepheight 48
damage (120)
radius 16
height 12
speed 0
scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_M",0,0,0,momx*100,momy*100,-1,0,8)
stop
Death:
TNT1 A 2 A_SpawnItemEx("Rock_VMFX",0,0,10,0,0,0,0,1+32)
stop
}
}
actor Rock_B_C_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_C",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_G_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_G",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_I_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_I",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_B_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_B",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_F_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_F",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_E_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_E",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_T_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_T",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}
actor Rock_B_O_Start : Rock_B_M_Start
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("Rock_B_O",0,0,0,momx*100,momy*100,-1,0,8)
stop
}
}

actor Rock_B_M : ProjSpawnFuncActor
{
PROJECTILE
damagetype "Rock_MegaBall"
Obituary "$OB_ROCKBALL"
-NOGRAVITY
+SKYEXPLODE
+NOBLOOD
+DONTSPLASH
+FORCEXYBILLBOARD
+DONTREFLECT
+HITTRACER
+NOEXPLODEFLOOR
+BOUNCEONFLOORS
+BOUNCEONWALLS
+BOUNCEONCEILINGS
+USEBOUNCESTATE
+FORCEALLYCOLLISION
BounceFactor 0.5
WallBounceFactor 0.65//0.01
mass 99999
ReactionTime 9
damage (120)
radius 16
height 12
speed 0
scale 2.5
Args 0
States
{
Spawn:
H9RK A 0
Start:
"####" "#" 0 ThrustThingZ(0,1,0,1)//Sync
"####" "#" 0 ThrustThing(angle*256/360,0)
Spawn0:
"####" "#" 0 A_Jump(256,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)
//H6RK HGFEDCB 2 A_JumpIf(z-floorz < 8, "Spawn2")
SpawnFall:
"####" ABCDEFGHIJKLMNOP 1 A_GiveInventory("Rock_DroppedBallStates_P")
"####" A 0 A_CountDown
loop

SpawnFallen://Done so online is at least a different sprite other than A
//"----" B 1
"####" "################" 1 A_GiveInventory("Rock_DroppedBallStates_P")
"####" "#" 0 A_CountDown
loop

Bounce.Floor:
"####" "#" 0 A_JumpIf(sqrt(momx*momx+momy*momy+momz*momz)<=1,"Spawn3Start")
"####" "#" 0 A_GiveInventory("RockKickFlag",1)
goto SpawnFallen//Spawn0

Spawn3Start:
"####" "#" 0 A_ChangeFlag("USEBOUNCESTATE",0)
"####" "#" 0 A_ChangeFlag("BOUNCEONFLOORS",0)
"####" "#" 0 A_ChangeVelocity(0,0,0,2)
"####" "#" 0 ThrustThing(angle*256/360,0)//Sync
"####" "#" 0 ThrustThingZ(0,0,0,1)
//"####" "#" 0 A_SetArg(3,377)
"####" "##" 1 A_GiveInventory("Rock_DroppedBallStates_P")
"####" "#" 0 A_ChangeFlag("BOUNCEONFLOORS",1)
"####" "#" 0
goto Spawn2
Spawn2:
"####" "###########################################################################" 1 A_GiveInventory("Rock_DroppedBallStates_P")
"####" "#" 0 A_CountDownArg(3)
loop

AllyKick:
TNT1 A 0 A_JumpIfInventory("RockKickDelay",1,2,8)
TNT1 A 0 A_GiveInventory("Rock_DroppedBallCheck_P")
TNT1 A 0
Goto Death+1
Death:
TNT1 A 0 A_JumpIf(CallACS("cbm_istracerally")==1,"AllyKick")
DeathKicked:
TNT1 A 1 A_SpawnItemEx("Rock_BallDeathFX",0,0,10,0,0,0,0,1+32)
stop
}
}

actor Rock_BallDeathFX : BasicGraphicEffect
{
var int user_TranslateBlackColors;
+FORCEXYBILLBOARD
+BRIGHT
Speed 20
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("RockKickFlag",1,"KickFX")
NMFX ABCD 2
stop
KickFX:
TNT1 A 0 A_SetScale(ScaleX*(random(0,1)*2-1),ScaleY)
H9RK UVWX 2
stop
}
}

actor Rock_DroppedBallStates_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfCloser(34,"KickChance")
stop
KickChance:
TNT1 A 0 A_JumpIfInTargetInventory("RockJumpDelay",1,"No")
TNT1 A 0 A_JumpIfInTargetInventory("RockKickDelay",1,"No")
TNT1 A 0 A_JumpIfInventory("RockKickFlag",1,"Pickup1")
TNT1 A 0 A_ChangeFlag("USEBOUNCESTATE",0)
goto Pickup2
No:
TNT1 A 0
stop

Pickup1:
TNT1 A 0 A_CountDownArg(4)
TNT1 A 0 A_JumpIf(Args[0]==0,"Ball0")
TNT1 A 0 A_JumpIf(Args[0]==1,"Ball1")
TNT1 A 0 A_JumpIf(Args[0]==2,"Ball2")
TNT1 A 0 A_JumpIf(Args[0]==3,"Ball3")
TNT1 A 0 A_JumpIf(Args[0]==4,"Ball4")
TNT1 A 0 A_JumpIf(Args[0]==5,"Ball5")
TNT1 A 0 A_JumpIf(Args[0]==6,"Ball6")
TNT1 A 0 A_JumpIf(Args[0]==7,"Ball7")
TNT1 A 0 A_JumpIf(Args[0]==8,"Ball8")
stop
Ball0:TNT1 A 0 A_GiveInventory("Rock_M_Pickup",1,2+Args[2])stop
Ball1:TNT1 A 0 A_GiveInventory("Rock_C_Pickup",1,2+Args[2])stop
Ball2:TNT1 A 0 A_GiveInventory("Rock_G_Pickup",1,2+Args[2])stop
Ball3:TNT1 A 0 A_GiveInventory("Rock_I_Pickup",1,2+Args[2])stop
Ball4:TNT1 A 0 A_GiveInventory("Rock_B_Pickup",1,2+Args[2])stop
Ball5:TNT1 A 0 A_GiveInventory("Rock_F_Pickup",1,2+Args[2])stop
Ball6:TNT1 A 0 A_GiveInventory("Rock_E_Pickup",1,2+Args[2])stop
Ball7:TNT1 A 0 A_GiveInventory("Rock_T_Pickup",1,2+Args[2])stop
Ball8:TNT1 A 0 A_GiveInventory("Rock_O_Pickup",1,2+Args[2])stop

Pickup2:
TNT1 A 0 A_CountDownArg(4)
TNT1 A 0 A_JumpIf(Args[0]==0,"Ball0A")
TNT1 A 0 A_JumpIf(Args[0]==1,"Ball1A")
TNT1 A 0 A_JumpIf(Args[0]==2,"Ball2A")
TNT1 A 0 A_JumpIf(Args[0]==3,"Ball3A")
TNT1 A 0 A_JumpIf(Args[0]==4,"Ball4A")
TNT1 A 0 A_JumpIf(Args[0]==5,"Ball5A")
TNT1 A 0 A_JumpIf(Args[0]==6,"Ball6A")
TNT1 A 0 A_JumpIf(Args[0]==7,"Ball7A")
TNT1 A 0 A_JumpIf(Args[0]==8,"Ball8A")
stop
Ball0A:TNT1 A 0 A_GiveInventory("Rock_M_PickupA",1,2+Args[2])stop
Ball1A:TNT1 A 0 A_GiveInventory("Rock_C_PickupA",1,2+Args[2])stop
Ball2A:TNT1 A 0 A_GiveInventory("Rock_G_PickupA",1,2+Args[2])stop
Ball3A:TNT1 A 0 A_GiveInventory("Rock_I_PickupA",1,2+Args[2])stop
Ball4A:TNT1 A 0 A_GiveInventory("Rock_B_PickupA",1,2+Args[2])stop
Ball5A:TNT1 A 0 A_GiveInventory("Rock_F_PickupA",1,2+Args[2])stop
Ball6A:TNT1 A 0 A_GiveInventory("Rock_E_PickupA",1,2+Args[2])stop
Ball7A:TNT1 A 0 A_GiveInventory("Rock_T_PickupA",1,2+Args[2])stop
Ball8A:TNT1 A 0 A_GiveInventory("Rock_O_PickupA",1,2+Args[2])stop
}
}

actor Rock_DroppedBallCheck_P : Rock_DroppedBallStates_P
{
States
{
Pickup:
TNT1 A 0 A_SetArg(2,6)//Makes A_GiveInventory above give to Tracer rather than Target
TNT1 A 0 A_JumpIfInventory("RockKickFlag",1,1)
goto Pickup1+1
TNT1 A 0
goto Pickup2+1
}
}


actor Rock_B_C : Rock_B_M
{
Args 1
States
{
Spawn:
H1RK A 0
goto Start
}
}

actor Rock_B_G : Rock_B_M
{
Args 2
States
{
Spawn:
H2RK A 0
goto Start
}
}

actor Rock_B_I : Rock_B_M
{
Args 3
States
{
Spawn:
H3RK A 0
goto Start
}
}

actor Rock_B_B : Rock_B_M
{
Args 4
States
{
Spawn:
H4RK A 0
goto Start
}
}

actor Rock_B_F : Rock_B_M
{
Args 5
States
{
Spawn:
H5RK A 0
goto Start
}
}

actor Rock_B_E : Rock_B_M
{
Args 6
States
{
Spawn:
H6RK A 0
goto Start
}
}

actor Rock_B_T : Rock_B_M
{
Args 7
States
{
Spawn:
H7RK A 0
goto Start
}
}

actor Rock_B_O : Rock_B_M
{
Args 8
States
{
Spawn:
H8RK A 0
goto Start
}
}

actor Rock_BK_M : ProjSpawnFuncActor
{
Bouncesound "weapon/megaball"
PROJECTILE
damagetype "Rock_MegaBall"
Obituary "$OB_MEGABALL"
-NOGRAVITY
+SKYEXPLODE
+FORCEXYBILLBOARD
+BOUNCEONFLOORS
+BOUNCEONWALLS
+BOUNCEONCEILINGS
+CANBOUNCEWATER
+ALLOWBOUNCEONACTORS
bouncecount 11
bouncefactor 0.9
wallbouncefactor 0.9
Gravity 0.50
damage(210)
radius 16
height 16
speed 40
scale 2.5
States
{
Spawn:
H9RK A 2
H9RK A 0 A_ChangeVelocity(0,0,5)
//H9RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_MFX",0,0,0,0,0,0,0,1)
H9RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_MFX_H",0,0,0,momx*0.0001,momy*0.0001,momz*0.0001,0,1+8)
Goto Spawn+2
Death:
DeathFX:
TNT1 A 0 A_SpawnItemEx("Rock_VMFX",0,0,10,0,0,0,0,1+32)
TNT1 A 4
stop
}
}
actor Rock_BK2_M : Rock_BK_M
{
//+NOGRAVITY
bouncefactor 1.0
wallbouncefactor 1.0
damage(230)
speed 50
}


actor Rock_BK_C : Rock_BK_M
{
damagetype "MegaCutBall"
Obituary "$OB_MEGACUTBALL"
+NOGRAVITY
bouncecount 7
bouncefactor 1.0
wallbouncefactor 1.0
Gravity 1.0
damage(250)
speed 35
States
{
Spawn:
H1RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_CFX",0,0,0,0,0,0,0,1)
loop
}
}
actor Rock_BK2_C : Rock_BK_C{bouncecount 8 damage(270) speed 40}


actor Rock_BK_G_Bit : ProjSpawnFuncActor
{
PROJECTILE
damagetype "MegaGutsBall"
Obituary "$OB_MEGAGUTSBALL"
+NOEXPLODEFLOOR
Damage (140)
radius 12
height 12
Speed 25
scale 2.0
States
{
Spawn:
TNT1 AA 0
H2RK R 10
Stop
Death:
TNT1 A 1
stop
}
}

actor Rock_BK_G_BitFX : BasicGraphicEffectM
{
-NOGRAVITY
+HEXENBOUNCE
+THRUACTORS
ReactionTime 5
States
{
Spawn:
H2RK R 2
TNT1 A 2 A_CountDown
loop
}
}

actor Rock_BK_G : Rock_BK_M
{
BounceSound ""
damagetype "MegaGutsBall"
Obituary "$OB_MEGAGUTSBALL"
damage(260)
bouncecount 1
Gravity 1.25
speed 35
States
{
Spawn:
H2RK A 2
H2RK A 0 A_ChangeVelocity(0,0,5)
H2RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_GFX",0,0,0,0,0,0,0,1)
Goto Spawn+2
XDeath:
Crash:
TNT1 AAAA 0 A_SpawnItemEx("Rock_BK_G_BitFX",0,0,0,random(-10,10),random(-10,10),random(5,10),random(0,359),1)
TNT1 A 4 A_PlaySoundEx("weapon/superarmhit","Weapon")
stop
Death:
TNT1 A 0 A_SetGravity(0.0)
TNT1 A 0 A_PlaySoundEx("weapon/superarmhit","Weapon")
/*
TNT1 A 0 A_JumpIf(z-floorz<=4,"DeathFloorC")
TNT1 A 0 A_JumpIf(ceilingz-z<=16,"DeathFloorC")
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,10,45,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,10,-45,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,10,225,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,10,-225,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,-10,45,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,-10,-45,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,-10,225,33)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",0,0,0,20,0,-10,-225,33)
goto DeathEnd
DeathFloorC:
*/
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,60,1)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,-60,1)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,120,1)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,-120,1)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,180,1)
TNT1 A 0 A_SpawnItemEx("Rock_BK_G_Bit",10,0,0,25,0,0,0,1)
goto DeathFX
}
}
actor Rock_BK2_G : Rock_BK_G{damage(300) speed 45}


actor Rock_BK_I : Rock_BK_M
{
damagetype "MegaIceBall"
Obituary "$OB_MEGAICEBALL"
bouncecount 8
bouncefactor 0.85
wallbouncefactor 0.90
Gravity 0.65
damage(170)
speed 31
States
{
Spawn:
H3RK A 2
H3RK A 0 A_ChangeVelocity(0,0,5)
H3RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_IFX",0,Random(-18,18),random(12,-2),0,0,0,0,1)
Goto Spawn+2
Death:
TNT1 A 0 A_SpawnItemEX("IcePitFreeze")
goto DeathFX
}
}
actor Rock_BK2_I : Rock_BK_I{damage(180) speed 39}


actor Rock_BK_B : Rock_BK_M
{
BounceSound ""
damagetype "MegaBombBall"
Obituary "$OB_MEGABOMBBALL"
bouncecount 1
bouncefactor 1.0
wallbouncefactor 1.0
Gravity 1.25
damage(20)
speed 35
Args 200,128,12
States
{
Spawn:
H4RK A 2
H4RK A 0 A_ChangeVelocity(0,0,7)
H4RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_BFX",0,0,0,0,0,0,0,1)
Goto Spawn+2
Death:
TNT1 A 0 A_PlaySoundEx("weapon/hyperbomb","Weapon")
TNT1 A 0 A_Explode(Args[0],Args[1],0,0,Args[2])
TNT1 A 1 A_SpawnItemEx("BasicBoom1FX_4_215",0,0,16,0,0,0,0,33)
stop
}
}
actor Rock_BK2_B : Rock_BK_B{bouncecount 2 damage(40) speed 45 Args 210,128,56}


actor Rock_BK_F : Rock_BK_M
{
damagetype "MegaFireBall"
Obituary "$OB_MEGAFIREBALL"
+HITTRACER
+USEBOUNCESTATE
+BRIGHT
bouncecount 5
bouncefactor 0.99
wallbouncefactor 0.85
damage(150)
speed 55
States
{
Spawn:
H5RK A 2
H5RK A 0 A_ChangeVelocity(0,0,5)
H5RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_FFX",0,0,0,0,0,0,0,1)
Goto Spawn+2
Bounce:
"####" "#" 1 A_SpawnItemEx("Rock_CBM_OilPitIgnite",0,0,8)
goto Spawn+2

Crash:
XDeath:
TNT1 A 0 A_JumpIf(CallACS("cbm_istracerplayer")==1,"DeathBurnCheck")
goto Death
DeathBurnCheck:
TNT1 A 0 A_JumpIf(!CallACS("cbm_TeamCompare",AAPTR_TARGET,AAPTR_TRACER),"DeathBurnChance")
//If Target team != Tracer team
goto Death
DeathBurnChance:
TNT1 A 0 A_JumpIfInventory("PowerOilBallCoat",1,"DeathBurning",8)
goto Death
DeathBurning:
TNT1 A 0 A_SpawnItemEx("PainMegaFireBallHit",0,0,0,0,0,0,0,1+SXF_TRANSFERPOINTERS)//1024
goto Death
}
}
actor Rock_BK2_F : Rock_BK_F{bouncecount 6 speed 70}

actor PainMegaFireBallHit : Basic_PainTID_H
{
States
{
Spawn://No need for original Spawn since Target/Tracer is already set up
TNT1 A 0
//Check:
TNT1 A 0 A_JumpIf(CallACS("cbm_PoisonControl_acs",3,PSN_SET_TO,7)>0,"DoT")
stop
DoT://15
TNT1 AAAAAAAAAAAAAAA 1 A_JumpIf(!CallACS("cbm_PointerExists",8),"Death")

TNT1 A 0 A_Warp(AAPTR_TRACER,0,0,28,0,WARPF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEX("RockFireBallBurn")
TNT1 A 0 A_JumpIf(CallACS("cbm_PoisonControl_acs",3,PSN_ADJUST,-1)<=0,"Death")
loop

}
}

actor RockFireBallBurn : BasicImplosion
{
damagetype "MegaFireBallBurn"
Obituary "$OB_MEGAFIREBALLX"
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAAAAAA 0 A_SpawnItemEx("RockFireBallBurnFX",random(4,18),0,random(16,40)-28,frandom(1,4),0,frandom(0,2),random(0,359),1,8)
TNT1 A 1 A_Explode(30,15,0,0,15)
stop
}
}

actor RockFireBallBurnFX : BasicGraphicEffect
{
Translation "248:248=229:229", "42:42=227:227"
+BRIGHT
alpha 0.875
Scale 1.0
states
{
Spawn:
TNT1 A 0
TNT1 A 0 A_Jump(256,1,3,5,7)
MAGX R 1 ThrustThingZ(0,random(1,3),0,1)
MAGX R 1 A_FadeOut(0.05)
MAGX S 1 ThrustThingZ(0,random(1,3),0,1)
MAGX S 1 A_FadeOut(0.05)
MAGX T 1 ThrustThingZ(0,random(1,3),0,1)
MAGX T 1 A_FadeOut(0.05)
MAGX U 1 ThrustThingZ(0,random(1,3),0,1)
MAGX U 1 A_FadeOut(0.05)
goto Spawn+2
}
}


actor Rock_BK_E : Rock_BK_M
{
damagetype "MegaElecBall"
Obituary "$OB_MEGAELECBALL"
+RIPPER
+BRIGHT
bouncecount 7
bouncefactor 0.975
wallbouncefactor 0.975
Gravity 0.85
damage(90)
speed 35
States
{
Spawn:
H6RK A 2
H6RK A 0 A_ChangeVelocity(0,0,5)
H6RK ABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_EFX",0,0,0,0,0,0,0,1)
Goto Spawn+2
Death:
TNT1 A 0 A_SpawnItemEX("ElectrifyEffect")
goto DeathFX
}
}
actor Rock_BK2_E : Rock_BK_E{damage(100) speed 40}


actor Rock_BK_T : Rock_BK_M
{
damagetype "MegaTimeBall"
Obituary "$OB_MEGATIMEBALL"
bouncecount 3
bouncefactor 0.80
wallbouncefactor 0.80
Gravity 0.0083333
damage(160)
Speed 10
States
{
Spawn:
H7RK A 2
H7RK A 0 A_ChangeVelocity(0,0,0.5)//0.75
H7RK ABCDEFGHIJKLMNOP 3 A_SpawnItemEx("Rock_BK_TFX",0,Random(-18,18),random(4,16),0,0,0,0,1)
Goto Spawn+2
}
}
actor Rock_BK2_T : Rock_BK_T{bouncecount 5 damage(170) speed 12}


actor Rock_BK_O_Bit : ProjSpawnFuncActor
{
PROJECTILE
damagetype "MegaOilBall"
Obituary "$OB_MEGAOILBALL"
-NOGRAVITY
Damage (150)
Radius 8
Height 5
speed 28
Scale 2.0
States
{
Spawn:
H8RK Q 0
H8RK Q 0 A_ChangeVelocity(0,0,0.25)
H8RK Q 5
wait
Crash:
XDeath:
H8RK Q 1
stop
Death:
H8RK Q 0 
H8RK Q 0 A_JumpIf(z-floorz<=0,"Death2")
H8RK Q 1 A_GiveInventory("CutterFlag",1)
H8RK Q 0 A_JumpIfInventory("CutterFlag",175,"Xdeath")
loop
Death2:
H8RK Q 1 A_SpawnItemEx("Rock_BK_O_Bit2",0,0,0,0,0,0,0,1)
stop
}
}

actor Rock_BK_O_Bit2 : ProjSpawnFuncActor
{
damagetype "MegaOilBall"
Obituary "$OB_MEGAOILBALL1"
+MISSILE
+NODAMAGETHRUST
+NONSHOOTABLE
+DONTDRAIN
+NOBLOOD
+DONTSPLASH
+BOUNCEONCEILINGS
+NOEXPLODEFLOOR
+NOTARGETSWITCH
//+DONTTHRUST
painchance 256
damagefactor "Ignition", 1.0
mass 99999
Health 10000
reactiontime 175
Damage (100)
Radius 8
Height 10
scale 2.5
states
{
Spawn:
H8RK S 0
H8RK S 1 A_SetArg(2,ReactionTime)
H8RK S 0 A_ChangeFlag("SHOOTABLE",1)
Goto Spawn2
pain.Ignition:
H8RK R 0 A_ChangeFlag("NOPAIN",true)
H8RK R 1 A_SpawnItemEx("Rock_BK_O_Bit3",0,0,0,0,0,0,0,1)
H8RK R 0 A_Jump(256,"Death")
stop
Spawn2:
H8RK R 1 A_Stop
Goto SlideWait
SlideWait:
H8RK R 1 A_CountDownArg(2)
H8RK R 0 A_JumpIf(abs(z*100000-floorz*100000)>50,"NewShot")
loop
NewShot:
//H8RK R 0 A_CheckFlag("BLASTED","NewShotX")
H8RK R 0 A_SpawnItemEx("Rock_BK_O_Bit",0,0,0,momx,momy,momz,0,9)
Goto Death
Death:
TNT1 A 0
stop
}
}

actor Rock_BK_O_Bit3 : ProjSpawnFuncActor
{
PROJECTILE
damagetype "MegaOilBall"
Obituary "$OB_MEGAOILBALL2"
-NOGRAVITY
+NODAMAGETHRUST
+NOBLOOD
+DOOMBOUNCE
+DONTSPLASH
+FLOORHUGGER
+DONTBLAST
+BRIGHT
mass 99999
reactiontime 100
Damage (200)
Radius 8
Height 48
scale 2.5
States
{
Spawn:
H8RK T 0
H8RK T 1 A_ChangeFlag("DOOMBOUNCE",0)
H8RK T 0 A_SpawnItemEx("Rock_CBM_OilPitIgnite",0,0,8)
H8RK TU 3 A_CountDown
goto Spawn+3
Death: 
TNT1 A 1
stop
}
}

actor Rock_CBM_OilPitIgnite : OilPitIgnite{Args 140}

actor Rock_BK_O : Rock_BK_M
{
damagetype "MegaOilBall"
Obituary "$OB_MEGAOILBALL"
+USEBOUNCESTATE
+HITTRACER
bouncecount 5
bouncefactor 0.75
wallbouncefactor 0.75
Gravity 1.0
ReactionTime 4
damage(100)
speed 35
States
{
Spawn:
H8RK A 2
H8RK A 0 A_ChangeVelocity(0,0,5)
H8RK ABCDEFGHIJKLMNOPABCDEFGH 1 A_SpawnItemEx("Rock_BK_OFX",frandom(-16,16),frandom(-16,16),frandom(2,24),0,0,frandom(-1,-3),0,1)
H8RK I 0 A_SpawnItemEx("Rock_BK_O_Bit",0,0,0,0,0,0,0,1)
H8RK I 0 A_CountDown
H8RK IJKLMNOPABCDEFGHIJKLMNOP 1 A_SpawnItemEx("Rock_BK_OFX",frandom(-16,16),frandom(-16,16),frandom(2,24),0,0,frandom(-1,-3),0,1)
H8RK A 0 A_SpawnItemEx("Rock_BK_O_Bit",0,0,0,0,0,0,0,1)
H8RK A 0 A_CountDown
Goto Spawn+2
Bounce:
"####" "#" 1 A_SpawnItemEx("Rock_BK_O_Bit",0,0,0,0,0,0,0,1)
"####" "#" 0 A_CountDown
goto Spawn+2

Death:
TNT1 A 0 A_SpawnItemEx("Rock_BK_O_Bit",0,0,0,0,0,0,0,1)
TNT1 A 0
goto Super::Death

Crash:
XDeath:
TNT1 A 0 A_JumpIf(CallACS("cbm_istracerplayer")==1,"DeathOilCheck")
goto Death+1
DeathOilCheck:
TNT1 A 0 A_JumpIf(!CallACS("cbm_TeamCompare",AAPTR_TARGET,AAPTR_TRACER),"DeathOilSpawn")
//If Target team != Tracer team
goto Death+1
DeathOilSpawn:
TNT1 A 0 A_GiveInventory("OilBallCoat_P",1,8)
goto Death+1
}
}
actor Rock_BK2_O : Rock_BK_O{bouncecount 6 damage(120) speed 40}

actor PowerOilBallCoat : PowerUp
{
Powerup.Duration 175
+INVENTORY.ALWAYSPICKUP
}

actor OilBallCoat_H : BasicHelper
{
States
{
Spawn:
TNT1 A 2 A_GiveToTarget("OilBallCoat_P1",1)
TNT1 A 1 A_JumpIfInTargetInventory("PowerOilBallCoat",1,1)
stop
TNT1 A 2 A_GiveToTarget("OilBallCoat_P1",1)
TNT1 A 1 A_JumpIfInTargetInventory("PowerOilBallCoat",1,1)
stop
TNT1 A 2 A_GiveToTarget("OilBallCoat_P1",1)
TNT1 A 1 A_JumpIfInTargetInventory("PowerOilBallCoat",1,1)
stop
TNT1 A 2 A_GiveToTarget("OilBallCoat_P2",1)
TNT1 A 1 A_JumpIfInTargetInventory("PowerOilBallCoat",1,"Spawn")
stop
}
}

actor OilBallCoat_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("PowerOilBallCoat",1,2)
TNT1 A 0 A_SpawnItemEx("OilBallCoat_H",0,0,24)//,0,0,0,0,1)
TNT1 A 0 A_GiveInventory("PowerOilBallCoat",1)
stop
}
}

actor OilBallCoat_P1 : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEX("OilBallCoat_Drip",random(-24,24),random(-24,24),random(8,32))
stop
}
}

actor OilBallCoat_P2 : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEX("OilBallCoat_Drip2",random(-24,24),random(-24,24),random(8,32))
stop
}
}

actor OilBallCoat_Drip : BasicGraphicEffectM
{
Translation "195:195=226:226", "204:204=167:167"
-NOGRAVITY
+THRUACTORS
ReactionTime 4
Radius 4
Height 4
Speed 10
Scale 1.0
States
{
Spawn:
H8RK V 4 A_CountDown
loop
Death:
H8RK W 0 A_SetGravity(0.0)
H8RK WX 5
stop
}
}

actor OilBallCoat_Drip2 : OilBallCoat_Drip
{
States
{
Death:
H8RK W 0 A_PlaySound("wep_L/OilShot",2,0.25)
goto Super::Death
}
}


actor Rock_BK_BaseFX : BasicGraphicEffect
{
RenderStyle "Translucent"
Alpha 0.70
}

actor Rock_BK_MFX_H : Rock_BK_BaseFX
{
Speed 60
States
{
SpawnFrame:
TNT1 A 0 A_SpawnItemEx("Rock_BK_MFX",-1.00*momx,-1.00*momy,-1.00*momz+0.250,0,0,0,0,1+SXF_ABSOLUTEPOSITION)//2
TNT1 A 0 A_SpawnItemEx("Rock_BK_MFX",-5000.00*momx,-5000.00*momy,-5000.00*momz+0.250,0,0,0,0,1+2)
stop
}
}
actor Rock_BK_MFX : Rock_BK_BaseFX
{
+BRIGHT
+FORCEXYBILLBOARD
Speed 60
States
{
SpawnFrame:
TNT1 A 1
H9RK QRST 3//2 A_FadeOut
stop
}
}
actor Rock_BK_CFX : Rock_BK_BaseFX
{
Scale 2.5
States
{
SpawnFrame:
TNT1 A 1
TNT1 A 0 A_Jump(256,1,2,3,4)
SpawnL:
H1RK QRST 2 A_FadeOut
loop
}
}
actor Rock_BK_GFX : Rock_BK_BaseFX
{
Scale 1.0
States
{
SpawnFrame:
TNT1 A 1
H2RK QQQQ 2 A_FadeOut
stop
}
}
actor Rock_BK_IFX : Rock_BK_BaseFX
{
Alpha 0.85
Scale 2.25
States
{
SpawnFrame:
TNT1 A 1
SpawnL:
H3RK Q 1 A_FadeTo(0.2,0.05,1)//FTF_REMOVE
H3RK Q 0 A_SetScale(ScaleX-0.10)
H3RK Q 1 A_FadeTo(0.2,0.05,1)
H3RK Q 0 A_SetScale(ScaleX-0.10)
H3RK R 1 A_FadeTo(0.2,0.05,1)
H3RK R 0 A_SetScale(ScaleX-0.10)
H3RK R 1 A_FadeTo(0.2,0.05,1)
H3RK R 0 A_SetScale(ScaleX-0.10)
loop
}
}
actor Rock_BK_BFX : Rock_BK_BaseFX
{
Scale 2.0
States
{
SpawnFrame:
TNT1 A 1//COLOR 249
H4RK QQQQ 2 A_FadeOut
stop
}
}
actor Rock_BK_FFX : Rock_BK_BaseFX
{
+BRIGHT
Alpha 0.85
Scale 1.75
States
{
SpawnFrame:
TNT1 A 1
H5RK QRS 3 A_FadeOut
stop
}
}
actor Rock_BK_EFX : Rock_BK_BaseFX
{
+BRIGHT
Scale 1.5
States
{
SpawnFrame:
TNT1 A 1
TNT1 A 0 A_Jump(256,1,5,9,13)
H6RK QRST 2 A_FadeOut
stop 
H6RK RSTQ 2 A_FadeOut
stop
H6RK STQR 2 A_FadeOut
stop
H6RK TQRS 2 A_FadeOut
stop
}
}
actor Rock_BK_TFX : Rock_BK_BaseFX
{
+BRIGHT
Scale 1.5
States
{
SpawnFrame:
TNT1 A 1
TNT1 A 0 A_Jump(256,1,5,9,13)
H7RK QRST 2 A_FadeOut
stop
H7RK RSTQ 2 A_FadeOut
stop
H7RK STQR 2 A_FadeOut
stop
H7RK TQRS 2 A_FadeOut
stop
}
}


actor Rock_BK_OFX : BasicGraphicEffectM//Rock_BK_BaseFX
{
-NOGRAVITY
+THRUACTORS
RenderStyle "Translucent"
Alpha 0.85
ReactionTime 1
Radius 4
Height 4
Speed 10
Scale 0.75
States
{
SpawnFrame:
H8RK V 70
H8RK V 4 A_CountDown
loop
Death:
H8RK W 0 A_SetGravity(0.0)
H8RK WX 5
stop
}
}


actor Rock_M_Pickup : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_PlaySoundEx("weapon/RockBall","SoundSlot7")
TNT1 A 0 A_JumpIfInventory("RockKickFlag",1,"Kicker_S")
TNT1 A 0 A_JumpIf(z-floorz==0,"Kicker")
TNT1 A 0 A_GiveInventory("RockJumpDelay",1)
TNT1 A 0 A_GiveInventory("RockBallJump_P2",1)
TNT1 A 0 A_TakeInventory("JumpCancler",1)
stop
Pickup2:
TNT1 A 0 A_PlaySoundEx("weapon/RockBall","SoundSlot7")
TNT1 A 0 A_JumpIfInventory("RockKickFlag",1,"Kicker_S")
Kicker:
TNT1 A 0 A_GiveInventory("RockKickDelay",1)
TNT1 A 0 A_Jump(256,"Kick")
stop
Kick:
TNT1 A 0 A_FireCustomMissile("Rock_BK_M",0,0,0,-16)
stop
Kicker_S:
TNT1 A 0 A_JumpIfInventory("RockMultiDelay",1,"Kick_S2")
TNT1 A 0 A_GiveInventory("RockMultiDelay",1)
TNT1 A 0 A_Jump(256,"Kick_S")
stop
Kick_S:
TNT1 A 0 A_FireCustomMissile("Rock_BK2_M",0,0,0,-16)
stop
Kick_S2:
TNT1 A 0 A_FireCustomMissile("Rock_BK2_M",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))
stop
}
}

actor Rock_M_PickupA : Rock_M_Pickup
{
States
{
Pickup:
goto Pickup2
}
}

actor Rock_C_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_C",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_C",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_C",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_C_PickupA : Rock_C_Pickup{States{Pickup:goto Pickup2}}

actor Rock_G_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_G",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_G",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_G",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_G_PickupA : Rock_G_Pickup{States{Pickup:goto Pickup2}}

actor Rock_I_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_I",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_I",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_I",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_I_PickupA : Rock_I_Pickup{States{Pickup:goto Pickup2}}

actor Rock_B_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_B",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_B",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_B",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_B_PickupA : Rock_B_Pickup{States{Pickup:goto Pickup2}}

actor Rock_F_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_F",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_F",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_F",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_F_PickupA : Rock_F_Pickup{States{Pickup:goto Pickup2}}

actor Rock_E_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_E",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_E",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_E",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_E_PickupA : Rock_E_Pickup{States{Pickup:goto Pickup2}}

actor Rock_T_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_T",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_T",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_T",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_T_PickupA : Rock_T_Pickup{States{Pickup:goto Pickup2}}

actor Rock_O_Pickup : Rock_M_Pickup{States{
Kick:TNT1 A 0 A_FireCustomMissile("Rock_BK_O",0,0,0,-16)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_O",0,0,0,-16)stop
Kick_S2:TNT1 A 0 A_FireCustomMissile("Rock_BK2_O",(random(0,1)*2-1)*random(1,7),0,0,-16,0,random(-5,5))stop}}
actor Rock_O_PickupA : Rock_O_Pickup{States{Pickup:goto Pickup2}}


actor Rock_Bot_Taunt_F : Powerup
{
Powerup.Duration 37
}

actor Rock_Bot_Pickup_X : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_Bot_Taunt_F",1,"BallJump")
TNT1 A 0 A_GiveInventory("Rock_Bot_Taunt_F",1)
TNT1 A 0 A_PlaySoundEx("Rock/BotTaunt","Voice")
goto BallJump
BallJump:
TNT1 A 0 A_Jump(232,"Kicking")
TNT1 A 0 A_GiveInventory("RockBallJump_P2")
goto Kicking
Kicking:
TNT1 A 0 A_PlaySoundEx("weapon/RockBall","SoundSlot7")
TNT1 A 0 A_SpawnItemEx("Rock_SuperKickCheckFX2",cos(-pitch)*16,0,36+(sin(-pitch)*28),0,0,0,0,1+32)
TNT1 A 0 A_Jump(256,1,2,3,4,5,6,7,8,9)
TNT1 A 0 A_FireCustomMissile("Rock_BK2_M",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_C",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_G",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_I",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_B",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_F",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_E",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_T",0,0,0,0)
stop
TNT1 A 0 A_FireCustomMissile("Rock_BK2_O",0,0,0,0)
stop
}
}

actor Rock_M_Pickup_X : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEx("Rock_SuperKickCheckFX",cos(-pitch)*16,0,36+(sin(-pitch)*28),0,0,0,0,1+32)
TNT1 A 0 A_JumpIfInventory("RockmanSoccerAmmo",1,"KickCheck")
TNT1 A 0 A_PlaySoundEx("weapon/chargekick","Weapon")
TNT1 A 0 A_JumpIfInventory("RockKickBoostChance",1,"Slide")
stop
Slide:
TNT1 A 0 A_JumpIf(z-floorz==0,"SlideG")
TNT1 A 0 A_Recoil(-8.5f)
TNT1 A 0 //ThrustThingZ(0,1,0,1)
stop
SlideG:
TNT1 A 0 A_Recoil(-10)
TNT1 A 0 //ThrustThingZ(0,4,0,1)
stop

KickCheck:
TNT1 A 0 A_TakeInventory("BallsOfSteelAmmo",111,1)
TNT1 A 0 A_PlaySoundEx("weapon/RockBall","SoundSlot7")
TNT1 A 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"Kick_S")
TNT1 A 0 A_JumpIfInventory("RockmanSoccerAmmo",1,"Kick")
stop

Kick:
TNT1 A 0 A_FireCustomMissile("Rock_BK_M",0,0,0,0)
stop
Kick_S:
TNT1 A 0 A_FireCustomMissile("Rock_BK2_M",0,0,0,0)
stop
}
}

actor Rock_C_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_C",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_C",0,0,0,0)stop}}
actor Rock_G_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_G",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_G",0,0,0,0)stop}}
actor Rock_I_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_I",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_I",0,0,0,0)stop}}
actor Rock_B_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_B",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_B",0,0,0,0)stop}}
actor Rock_F_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_F",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_F",0,0,0,0)stop}}
actor Rock_E_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_E",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_E",0,0,0,0)stop}}
actor Rock_T_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_T",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_T",0,0,0,0)stop}}
actor Rock_O_Pickup_X : Rock_M_Pickup_X{States{
Kick:  TNT1 A 0 A_FireCustomMissile("Rock_BK_O",0,0,0,0)stop
Kick_S:TNT1 A 0 A_FireCustomMissile("Rock_BK2_O",0,0,0,0)stop}}




actor RockBallDropM_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
TNT1 A 0 A_JumpIf(pitch>=45 && pitch<=90,"FireDown")
TNT1 A 0 A_Jump(256,"FireB")
goto FireB
FireDown:
TNT1 A 0 A_JumpIf(z-floorz==0,"FireB")
TNT1 A 0 A_PlaySoundEx("weapon/RockBall","SoundSlot7")
TNT1 A 0 A_JumpIfInventory("RockmanSoccerAmmo",56,"FireDownX")
TNT1 A 0 A_GiveInventory("RockBallJump_P",1)
stop
FireDownX:
TNT1 A 0 A_GiveInventory("RockBallJump_P2",1)
stop

FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_M_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_M_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_M_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
End:
TNT1 A 0 A_GiveInventory("RockKickBoostChance",1)
TNT1 A 0 A_TakeInventory("RockmanSoccerAmmo",200)
TNT1 A 0 A_TakeInventory("BallsOfSteelAmmo",111,1)
stop
}
}




actor RockBallDropC_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_C_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_C_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_C_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropG_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_G_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_G_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_G_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropI_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_I_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_I_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_I_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropB_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_B_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_B_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_B_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropF_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_F_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_F_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_F_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropE_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_E_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_E_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_E_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropT_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_T_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_T_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_T_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}

actor RockBallDropO_P : RockBallDropM_P
{
States
{
FireB:
TNT1 A 0 A_SpawnItemEx("Rock_B_O_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,0,8)
//TNT1 A 0 A_JumpIfInventory("PlayerPropertySpread",1,"FireB_S")
goto End
FireB_S:
TNT1 A 0 A_SpawnItemEx("Rock_B_O_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,15,8)
TNT1 A 0 A_SpawnItemEx("Rock_B_O_Start",cos(-pitch)*64,0,32+(sin(-pitch)*64),momx*0.01,momy*0.01,0,-15,8)
goto End
}
}



/*
//Leftovers of a different try at FakeWep
actor RockBallMessage_P0 : CustomInventory
{
inventory.pickupmessage "$PU_ROCKBALL0"
inventory.pickupsound "weapon/weaponup"
Args 0
States
{
Spawn:
TNT1 A 0
TNT1 A 1
TNT1 A 0 A_Log("FAILED TO PICKUP BALL > arg0 and angle")
TNT1 A 0 A_LogInt(Args[0])
TNT1 A 0 A_LogInt(Angle)
TNT1 A 0 A_LogInt(Angle*256/360)
TNT1 A 0 ACS_NamedExecuteWithResult("cbm_pickup_msg_rock_failsafe",Angle*256/360+1000,Args[0])
stop
Pickup:
TNT1 A 0 A_RailWait
stop
}
}
actor RockBallMessage_P1 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL1" Args 1}
actor RockBallMessage_P2 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL2" Args 2}
actor RockBallMessage_P3 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL3" Args 3}
actor RockBallMessage_P4 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL4" Args 4}
actor RockBallMessage_P5 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL5" Args 5}
actor RockBallMessage_P6 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL6" Args 6}
actor RockBallMessage_P7 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL7" Args 7}
actor RockBallMessage_P8 : RockBallMessage_P0{inventory.pickupmessage "$PU_ROCKBALL8" Args 8}
*/


actor Basic_Rock_W_P : CustomInventory
{
+SERVERSIDEONLY
RenderStyle None
inventory.restrictedto "RockClass"
inventory.pickupsound "weapon/weaponup"
inventory.amount 1
inventory.maxamount 1
inventory.respawntics 1
var int user_picked_up;
//TeleFogSourceType "none"
//TeleFogDestType  "none"
states
{
Spawn:
TNT1 A 0
TNT1 A 0 A_ChangeFlag("DROPPED",0)
TNT1 A 0 A_JumpIf(user_picked_up == 0,2)
TNT1 A 0 ACS_NamedExecuteWithResult("cbm_removeDroppedWep")
TNT1 A 0 A_SetUserVar(user_picked_up,1)
SpawnLoop:
TNT1 A 0 A_CheckFlag("SPECIAL",1,AAPTR_TARGET)
goto Death
TNT1 A 0 A_CheckFlag("NOBLOCKMAP","Death",AAPTR_TARGET)
TNT1 A 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_NOCHECKPOSITION)//8
loop
No:
TNT1 A 0
fail
Death:
TNT1 A 0 //A_Log("I'm dead!")
stop
HideDoomish:
TNT1 A 1400
TNT1 A 0 A_Warp(2,0,0,0,0,8)
//TNT1 A 0 A_ChangeFlag("INVISIBLE",0)
TNT1 A 1 A_ChangeFlag("SPECIAL",1)
goto Spawn
}
}

actor Rock_W1_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W1_P")
stop
}
}

actor Rock_W1_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL1"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W1",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W1",1)
stop
}
}

actor Rock_W2_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W2_P")
stop
}
}

actor Rock_W2_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL2"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W2",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W2",1)
stop
}
}

actor Rock_W3_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W3_P")
stop
}
}

actor Rock_W3_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL3"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W3",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W3",1)
stop
}
}

actor Rock_W4_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W4_P")
stop
}
}

actor Rock_W4_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL4"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W4",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W4",1)
stop
}
}

actor Rock_W5_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W5_P")
stop
}
}

actor Rock_W5_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL5"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W5",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W5",1)
stop
}
}

actor Rock_W6_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W6_P")
stop
}
}

actor Rock_W6_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL6"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W6",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W6",1)
stop
}
}

actor Rock_W7_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W7_P")
stop
}
}

actor Rock_W7_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL7"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W7",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W7",1)
stop
}
}

actor Rock_W8_Spawner_P : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_SpawnItemEX("Rock_W8_P")
stop
}
}

actor Rock_W8_P : Basic_Rock_W_P
{
inventory.pickupmessage "$PU_ROCKBALL8"
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("Rock_W8",1,"No")
TNT1 A 0 A_GiveInventory("Rock_W8",1)
stop
}
}

actor Rock_W0_NormalBar : NormalBar {Args 225,247}//197,239
actor Rock_W1_NormalBar : NormalBar {Args 4,94}
actor Rock_W2_NormalBar : NormalBar {Args 4,220}
actor Rock_W3_NormalBar : NormalBar {Args 4,75}
actor Rock_W4_NormalBar : NormalBar {Args 4,110}
actor Rock_W5_NormalBar : NormalBar {Args 229,227}
actor Rock_W6_NormalBar : NormalBar {Args 215,94}
actor Rock_W7_NormalBar : NormalBar {Args 34,239}
actor Rock_W8_NormalBar : NormalBar {Args 68,47}
actor Rock_W0_ScriptBar : ScriptBar {}
actor Rock_W1_ScriptBar : ScriptBar {}
actor Rock_W2_ScriptBar : ScriptBar {}
actor Rock_W3_ScriptBar : ScriptBar {}
actor Rock_W4_ScriptBar : ScriptBar {}
actor Rock_W5_ScriptBar : ScriptBar {}
actor Rock_W6_ScriptBar : ScriptBar {}
actor Rock_W7_ScriptBar : ScriptBar {}
actor Rock_W8_ScriptBar : ScriptBar {}