//These are WepC versions of the core Weapons, AltFire's are given to the core weapons to allow sliding.

//There are other edits to certain weapons

//The following weapons have SPREADRUNE related changes to work correctly.
//ThunderBeam, RainFlush, IceWall, TornadoBlow, BlackHoleBomb, Sakugarne

//The following weapons have SPREADRUNE related changes to weaken them.
//MagnetMissile, DiveMissile, HomingSniper, HornetChaser


// LEGACY
actor TimeStopperGiverC : TimeStopperGiver replaces TimeStopperGiver
{
states
{
Pickup:
DUST B 0 A_JumpIfInventory("CanCopyWeapons",1,1)
fail
DUST B 0 A_JumpIfInventory("TimeStopperWepC",1,"Failure")
DUST B 0 A_GiveInventory("TimeStopperWepC",1)
stop
}
}

actor FlashStopperGiverC : FlashStopperGiver replaces FlashStopperGiver
{
states
{
Pickup:
DUST B 0 A_JumpIfInventory("CanCopyWeapons",1,1)
fail
DUST B 0 A_JumpIfInventory("FlashStopperWepC",1,"Failure")
DUST B 0 A_GiveInventory("FlashStopperWepC",1)
stop
}
}

actor SkullBarrierGiverC : SkullBarrierGiver replaces SkullBarrierGiver
{
states
{
Pickup:
DUST B 0 A_JumpIfInventory("CanCopyWeapons",1,1)
fail
DUST B 0 A_JumpIfInventory("SkullBarrierWepC",1,"Failure")
DUST B 0 A_GiveInventory("SkullBarrierWepC",1)
stop
}
}

actor SakugarneGiverC : SakugarneGiver replaces SakugarneGiver
{
states
{
Pickup:
DUST B 0 A_JumpIfInventory("CanCopyWeapons",1,1)
fail
DUST B 0 A_JumpIfInventory("SakugarneWepC",1,"Failure")
DUST B 0 A_GiveInventory("SakugarneWepC",1)
stop
}
}
// LEGACY

//BUSTER//BUSTER//BUSTER//
//BUSTER//BUSTER//BUSTER//

actor MegaBusterC : MegaBuster
{
dropitem "CopyClassUpgradeDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor BassBusterC : BassBuster
{
dropitem "JetUpgradeGiverDropped"
States
{
TakeBusters:
BASB B 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Fire:
BASB B 0 A_PlaySoundEx("weapon/mbuster","Weapon")
BASB B 0 A_GiveInventory("BassBusterRage",1)
BASB B 0 A_JumpIfInventory("BassBusterRage",9*4,"Fire4")
BASB B 0 A_JumpIfInventory("BassBusterRage",9*3,"Fire3")
BASB B 0 A_JumpIfInventory("BassBusterRage",9*2,"Fire2")
BASB B 0 A_JumpIfInventory("BassBusterRage",9*1,"Fire1")
Fire0:
BASB B 0 A_FireCustomMissile("BassShot",frandom(-3,3),0,8,0,0,frandom(0,0))
Goto Anim
Fire1:
BASB B 0 A_FireCustomMissile("BassShot",frandom(-4,4),0,8,0,0,frandom(-1,1))
goto Anim
Fire2:
BASB B 0 A_FireCustomMissile("BassShot",frandom(-5,5),0,8,0,0,frandom(-2,2))
goto Anim
Fire3:
BASB B 0 A_FireCustomMissile("BassShot",frandom(-6,6),0,8,0,0,frandom(-3,3))
goto Anim
Fire4:
BASB B 0 A_FireCustomMissile("BassShot",frandom(-7,7),0,8,0,0,frandom(-4,4))
goto Anim
Anim:
BASB C 2
BASB D 1
BASB B 1
BASB B 0 A_Refire
goto Cooldown

ReadyC:Goto Ready2+1
}
}

actor ProtoBusterC : ProtoBuster
{
dropitem "PowerUpgradeGiverDropped"
States
{
TakeBusters:
PROC J 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Hold:
PROC J 0 A_TakeInventory("StopShield",1)
PROC D 0 A_JumpIfInventory("WeaponCharge",36,"Charge2")
PROC D 0 A_JumpIfInventory("WeaponCharge",13,"Charge1")
PROC D 0 A_JumpIfInventory("WeaponCharge",10,"Charge")
PROC D 1 A_GiveInventory("WeaponCharge_RC",1)//
PROC D 0 A_Refire
Goto Ready2+1
Charge:
PROC D 0 A_PlaySoundEx("weapon/pchargelong","Weapon")
Goto Charge1
Charge1:
PROC J 0 A_JumpIfInventory("WeaponCharge",36,"Charge2")
PROC D 1 ACS_ExecuteAlways(998,0,63,5)//
PROC H 0 A_Refire("Charge1.a")
Goto Fire2
Charge1.a:
PROC H 1 ACS_ExecuteAlways(998,0,36,1)//
PROC H 0 A_Refire("Charge1.b")
Goto Fire2
Charge1.b:
PROC H 1 //ACS_ExecuteAlways(991,0,36)
PROC H 0 A_Refire("Charge1.c")
Goto Fire2
Charge1.c:
PROC H 1 //ACS_ExecuteAlways(991,0,36)
PROC HH 0 A_GiveInventory("WeaponCharge_RC",1)//
PROC H 0 A_Refire("Charge1")
Goto Fire2
Charge2:
PROC I 1 ACS_ExecuteAlways(998,0,64,6)
PROC H 0 A_Refire("Charge2.a")
Goto Fire3
Charge2.a:
PROC H 1 ACS_ExecuteAlways(998,0,36,7)
PROC J 0 A_JumpIfInventory("IsBot",1,"BotFire")
PROC H 0 A_Refire("Charge2")
Goto Fire3

AltfireC:
PROC L 0 A_GiveInventory("StopShield",1)
goto AltFireS

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
//ReadyC:Goto Ready2+1
ReadyC:
PROC LK 1 A_WeaponReady
PROC J 0 A_TakeInventory("StopShield",1)
PROC J 0 A_GunFlash
PROC J 1 A_WeaponReady
Goto Ready2+6
}
}

actor SuperAdaptorWepC : SuperAdaptorWep
{
dropitem "AdaptorUpgrade2GiverDropped"
States
{
TakeBusters:
SAPT A 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Hold:
SAPT D 0 A_JumpIfInventory("WeaponCharge",35,"Charge2")
SAPT D 0 A_JumpIfInventory("WeaponCharge",21,"Charge1")//
SAPT D 0 A_JumpIfInventory("WeaponCharge",18,"Charge")
SAPT A 1 A_GiveInventory("WeaponCharge_RC",1)//
SAPT D 0 A_Refire
Goto Fire
Charge:
SAPT D 0 A_PlaySoundEx("weapon/adaptercharge","Weapon")
SAPT AD 1
SAPT AD 1
SAPT AD 1
Goto Charge1
Charge1:
SAPT A 0 A_JumpIfInventory("WeaponCharge",35,"Charge2Start")
SAPT A 0 ACS_ExecuteAlways(998,0,77,1)//
SAPT A 1 A_GiveInventory("WeaponCharge_RC",1)//
SAPT A 0 A_Refire("Charge1.a")
Goto Fire
Charge1.a:
SAPT D 1 ACS_ExecuteAlways(998,0,78,5)//
SAPT A 0 A_Refire("Charge1")
Goto Fire
Charge2Start:
SAPT G 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
goto Charge2
Charge2:
SAPT G 1 ACS_ExecuteAlways(998,0,79,6)//
SAPT A 0 A_Refire("Charge2.a")
Goto Fire2
Charge2.a:
SAPT H 1 ACS_ExecuteAlways(998,0,80,7)//
SAPT A 0 A_Refire("Charge2.b")
Goto Fire2
Charge2.b:
SAPT K 1 ACS_ExecuteAlways(998,0,77,1)//
SAPT A 0 A_Refire("Charge2.c")
Goto Fire2
Charge2.c:
SAPT K 0 A_JumpIfInventory("IsBot",1,"BotFire")
SAPT A 0 A_Refire("Charge2")
Goto Fire2

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready3
}
}

actor LaserBusterC : LaserBuster
{
dropitem "LaserBusterUpgrade2GiverDropped"
states
{
TakeBusters:
BUST B 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Hold:
BUST B 0 A_JumpIfInventory("WeaponCharge",35,"Charge2")//
BUST B 0 A_JumpIfInventory("WeaponCharge",21,"Charge1")//
BUST B 0 A_JumpIfInventory("WeaponCharge",18,"Charge")
BUST B 1 A_GiveInventory("WeaponCharge_RC",1)//
BUST B 0 A_Refire
Goto Ready2+2
Charge:
BUST B 0 A_PlaySoundEx("weapon/coilstart","Weapon")
Goto Charge1
Charge1:
BUST B 0 A_JumpIfInventory("WeaponCharge",35,"Charge2Start")
LBST H 1 ACS_ExecuteAlways(998,0,106,5)//
CHBU H 0 A_Refire("Charge1.a")
Goto Fire2
Charge1.a:
BUST B 1 ACS_ExecuteAlways(998,0,0,1)//
BUST B 0 A_GiveInventory("WeaponCharge_RC",1)//
CHBU H 0 A_Refire("Charge1")
Goto Fire2
Charge2Start:
BUST B 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Goto Charge2
Charge2:
LBST I 1 ACS_ExecuteAlways(998,0,107,7)//
CHBU H 0 A_Refire("Charge2.a")
Goto Fire3
Charge2.a:
BUST B 1 ACS_ExecuteAlways(998,0,0,6)//
BUST B 0 A_JumpIfInventory("IsBot",1,"BotFire")
CHBU H 0 A_Refire("Charge2")
Goto Fire3
BotFire:
BUST B 0 A_Jump(16,"Fire3")
CHBU H 0 A_Refire("Charge2")//
Goto Fire3

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready2+2
}
}

actor ArrowBusterC : ArrowBuster
{
dropitem "ArrowBusterUpgrade2GiverDropped"
states
{
TakeBusters:
BUST B 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Hold:
BUST B 0 A_JumpIfInventory("WeaponCharge",35,"Charge2")//
BUST B 0 A_JumpIfInventory("WeaponCharge",21,"Charge1")//
BUST B 0 A_JumpIfInventory("WeaponCharge",18,"Charge")
BUST B 1 A_GiveInventory("WeaponCharge_RC",1)//
BUST B 0 A_Refire
Goto Ready2+2
Charge:
BUST B 0 A_PlaySoundEx("weapon/coilstart","Weapon")
Goto Charge1
Charge1:
BUST B 0 A_JumpIfInventory("WeaponCharge",35,"Charge2Start")
CHBU H 1 ACS_ExecuteAlways(998,0,92,5)//
CHBU H 0 A_Refire("Charge1.a")
Goto Fire2
Charge1.a:
BUST B 1 ACS_ExecuteAlways(998,0,0,1)//
BUST B 0 A_GiveInventory("WeaponCharge_RC",1)//
CHBU H 0 A_Refire("Charge1")
Goto Fire2
Charge2Start:
BUST B 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Goto Charge2
Charge2:
BUST B 1 ACS_ExecuteAlways(998,0,93,6)//
CHBU H 0 A_Refire("Charge2.a")
Goto Fire3
Charge2.a:
CHBU I 1 ACS_ExecuteAlways(998,0,94,7)//
CHBU H 0 A_Refire("Charge2.b")
Goto Fire3
Charge2.b:
CHBU J 1 ACS_ExecuteAlways(998,0,0,5)//
BUST B 0 A_JumpIfInventory("IsBot",1,"BotFire")
BUST B 0 A_Refire("Charge2")
Goto Fire3
BotFire:
BUST B 0 A_Jump(16,"Fire3")
CHBU H 0 A_Refire("Charge2")//
Goto Fire3

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready2+2
}
}

actor DuoFistC : DuoFist
{
dropitem "DuoFistUpgrade2GiverDropped"
States
{
TakeBusters:
DUOF C 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Hold:
DUOF B 0 A_JumpIfInventory("WeaponCharge",18,"Charge")
DUOF B 1 A_GiveInventory("WeaponCharge_RC",1)//
DUOF B 0 A_Refire
Goto Ready2+2
Charge:
DUOF B 0 A_PlaySoundEx("weapon/coilstart","Weapon")
Goto Charge1
Charge1:
DUOF B 0 A_JumpIfInventory("WeaponCharge",35,"Charge2Start")
DUOF H 1 ACS_ExecuteAlways(998,0,102,5)//
DUOF H 0 A_Refire("Charge1.a")
Goto Fire2
Charge1.a:
DUOF B 1 ACS_ExecuteAlways(998,0,101,1)//
DUOF B 0 A_GiveInventory("WeaponCharge_RC",1)//
DUOF H 0 A_Refire("Charge1")
Goto Fire2
Charge2Start:
DUOF K 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Goto Charge2
Charge2:
DUOF K 1 ACS_ExecuteAlways(998,0,103,6)
DUOF H 0 A_Refire("Charge2.a")
Goto Fire3
Charge2.a:
DUOF I 1 ACS_ExecuteAlways(998,0,104,7)
DUOF H 0 A_Refire("Charge2.b")
Goto Fire3
Charge2.b:
DUOF J 1 ACS_ExecuteAlways(998,0,101,1)//
DUOF J 0 A_JumpIfInventory("IsBot",1,"BotFire")
DUOF H 0 A_Refire("Charge2")
Goto Fire3
BotFire:
DUOF H 0 A_Jump(16,"Fire3")
DUOF H 0 A_Refire("Charge2")//
Goto Fire3

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready2+2
}
}

actor TrebleBoostC : TrebleBoost
{
dropitem "TrebleBoostUpgrade2GiverDropped"
States
{
TakeBusters:
TREB B 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

ReadyC:Goto Ready2
}
}

actor MegaArmC : MegaArm
{
dropitem "MegaArmUpgrade2GiverDropped"
States
{
TakeBusters:
BUST B 0 A_GiveInventory("TakeBuster_P",1)
Goto Ready2

Charge1:
MARM H 2 ACS_ExecuteAlways(998,0,221,5)
MARM H 0 A_GiveInventory("WeaponCharge",1)
MARM H 0 A_JumpIfInventory("WeaponCharge",37,"Charge2Start")
MARM H 0 A_Refire("Charge1.a")
Goto MiniFire
Charge1.a:
BUST B 2 ACS_ExecuteAlways(998,0,0,1)
MARM H 0 A_GiveInventory("WeaponCharge",1)
MARM H 0 A_JumpIfInventory("WeaponCharge",37,"Charge2Start")
BUST B 0 A_Refire("Charge1.b")
Goto MiniFire
Charge1.b:
MARM I 2 ACS_ExecuteAlways(998,0,222,6)
MARM H 0 A_GiveInventory("WeaponCharge",1)
MARM H 0 A_JumpIfInventory("WeaponCharge",37,"Charge2Start")
MARM I 0 A_Refire("Charge1.c")
Goto MiniFire
Charge1.c:
MARM J 2 ACS_ExecuteAlways(998,0,223,7)
MARM H 0 A_GiveInventory("WeaponCharge",1)
MARM H 0 A_JumpIfInventory("WeaponCharge",37,"Charge2Start")
MARM J 0 A_Refire("Charge1.d")
Goto MiniFire
Charge1.d:
MARM H 2 ACS_ExecuteAlways(998,0,221,5)
MARM H 0 A_GiveInventory("WeaponCharge",1)
MARM H 0 A_JumpIfInventory("WeaponCharge",37,"Charge2Start")
MARM H 0 A_Refire("Charge1")
Goto MiniFire
Charge2Start:
MARM H 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Goto Charge2
Charge2:
MARM K 1 ACS_ExecuteAlways(998,0,224,5)
MARM K 0 A_Refire("Charge2.a")
Goto ChargeFire
Charge2.a:
MARM L 1 ACS_ExecuteAlways(998,0,225,6)
MARM L 0 A_Refire("Charge2.b")
Goto ChargeFire
Charge2.b:
MARM M 1 ACS_ExecuteAlways(998,0,226,7)
MARM M 0 A_Refire("Charge2.c")
Goto ChargeFire
Charge2.c:
HSPR C 1 ACS_ExecuteAlways(998,0,0,1)
HSPR C 0 A_JumpIfInventory("IsBot",1,"BotFire")
HSPR C 0 A_Refire("Charge2")
Goto ChargeFire

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready2+2
}
}


//MM1//MM1//MM1//MM1//MM1//MM1
//MM1//MM1//MM1//MM1//MM1//MM1
actor RollingCutterWepC : RollingCutterWep //replaces RollingCutterWep
{
dropitem "RollingCutterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor SuperArmWepC : SuperArmWep //replaces SuperArmWep
{
dropitem "SuperArmWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
AltfireC:
TNT1 A 0 A_JumpIfInventory("SuperArmTemp",1,"Throw")
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor IceSlasherWepC : IceSlasherWep //replaces IceSlasherWep
{
dropitem "IceSlasherWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor HyperBombWepC : HyperBombWep //replaces HyperBombWep
{
dropitem "HyperBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FireStormWepC : FireStormWep //replaces FireStormWep
{
dropitem "FireStormWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ThunderBeamWepC : ThunderBeamWep //replaces ThunderBeamWep
{
dropitem "ThunderBeamWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
THUN H 0 A_JumpIfNoAmmo("NoAmmo")
THUN H 0 A_PlaySoundEx("weapon/thunderbeam","Weapon")
THUN H 0 A_GiveInventory("CBM_FireThunderBeam",1)
goto Super::Fire+3

ReadyC:Goto Ready+1
}
}

actor TimeSlowWepC : TimeSlowWep //replaces TimeSlowWep
{
dropitem "TimeSlowWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire2:
TSLO A 0 A_JumpIfNoAmmo("NoAmmo")
TSLO A 0 A_JumpIfInventory("TimeSlowCooldownC",1,"NoAmmo")//TimeSlowCooldown
TSLO A 0 A_ScaleVelocity(0.5)
SLOT JKLMN 2
TNT1 A 0 A_PlaySoundEx("weapon/slow","Weapon")
TNT1 A 0 ACS_Execute(976,0)
TNT1 A 0 A_FireCustomMissile("TimeSlow",0,1,8,0)
TNT1 A 2
TSLO BC 1
TSLO A 1 A_GiveInventory("TimeSlowCooldown_RC",1)//TimeSlowCooldown
goto Ready+1

ReadyC:Goto Ready+1
}
}

actor TimeSlowCooldownC : PowerUp
{
+INVENTORY.ADDITIVETIME
powerup.duration 15
}

actor TimeSlowCooldown_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRage"),2)
TNT1 AA 0 A_GiveInventory("TimeSlowCooldownC",1)
stop
}
}

actor OilSliderWepC : OilSliderWep //replaces OilSliderWep
{
dropitem "OilSliderWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Slide:
OILL A 0 SetPlayerProperty(0,1,0)
OILL A 0 A_TakeInventory("OilSliderFlag",1)
OILL A 0 A_JumpIfInventory("HasFeetInWater",1,"UnderWater")
OILL A 0 A_JumpIfInventory("IsUnderBubbleWater",1,"UnderWater")
Goto SlideContinue

AltfireC:
OILL A 0 A_JumpIfInventory("OilCheck",1,"SlideBegin")
OILL A 0 A_JumpIfInventory("OilBoat",1,"OilPogo")
goto AltFireS
ReadyC:Goto Ready+2
}
}

//MM2//MM2//MM2//MM2//MM2//MM2
//MM2//MM2//MM2//MM2//MM2//MM2
actor MetalBladeWepC : MetalBladeWep //replaces MetalBladeWep
{
dropitem "MetalBladeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor AirShooterWepC : AirShooterWep //replaces AirShooterWep
{
dropitem "AirShooterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor BubbleLeadWepC : BubbleLeadWep //replaces BubbleLeadWep
{
dropitem "BubbleLeadWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor QuickBoomerangWepC : QuickBoomerangWep //replaces QuickBoomerangWep
{
dropitem "QuickBoomerangWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor CrashBombWepC : CrashBombWep //replaces CrashBombWep
{
dropitem "CrashBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor TimeStopperWepC : TimeStopperWep //replaces TimeStopperWep
{
dropitem "TimeStopperWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor AtomicFireWepC : AtomicFireWep //replaces AtomicFireWep
{
dropitem "AtomicFireWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Hold2Start:
HEAT G 0 A_GunFlash("Sound.Heat",GFF_NOEXTCHANGE)//A_PlaySoundEx("weapon/heat1","SoundSlot5",1)
Hold2:
HEAT G 0 A_JumpIfInventory("WeaponCharge",35,"Hold3Start")
HEAT H 1 ACS_ExecuteAlways(998,0,60,5)
HEAT G 0 A_Refire("Hold2.a")
Goto Fire1
Hold2.a:
HEAT G 0 ACS_ExecuteAlways(998,0,3,1)
HEAT G 1 A_GiveInventory("WeaponCharge_RC",1)
HEAT G 0 A_Refire("Hold2")
Goto Fire1
Hold3Start:
Hold3:
HEAT G 0 A_JumpIfInventory("WeaponCharge",65,"Hold4Start")
HEAT I 1 ACS_ExecuteAlways(998,0,61,6)
HEAT G 0 A_Refire("Hold3.a")
Goto Fire2
Hold3.a:
HEAT G 1 ACS_ExecuteAlways(998,0,3,1)
HEAT G 0 A_GiveInventory("WeaponCharge_RC",1)
HEAT G 0 A_Refire("Hold3")
Goto Fire2
BotFire:
HEAT G 0 A_Jump(16,"Fire3")
HEAT G 0 A_Refire("Hold4")
Goto Fire3
Hold4Start:
Hold4:
HEAT J 1 ACS_ExecuteAlways(998,0,62,7)
HEAT G 0 A_Refire("Hold4.a")
Goto Fire3
Hold4.a:
HEAT G 1 ACS_ExecuteAlways(998,0,3,1)
HEAT G 0 A_JumpIfInventory("IsBot",1,"BotFire")
HEAT G 0 A_Refire("Hold4")
Goto Fire3

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor LeafShieldWepC : LeafShieldWep //replaces LeafShieldWep
{
dropitem "LeafShieldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

AltfireC:
LEAF A 0 A_TakeInventory("ShieldCheck",1)
LEAF A 0 A_TakeInventory("LeafShieldCharge",99)
goto AltFireS
ReadyC:Goto Ready+1
}
}

//MM3//MM3//MM3//MM3//MM3//MM3
//MM3//MM3//MM3//MM3//MM3//MM3
actor NeedleCannonWepC : NeedleCannonWep //replaces NeedleCannonWep
{
dropitem "NeedleCannonWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor MagnetMissileWepC : MagnetMissileWep //replaces MagnetMissileWep
{
dropitem "MagnetMissileWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"FireSpread")
goto "Super::Fire"
FireSpread:
MAGG C 0 A_JumpIfNoAmmo("NoAmmo")
MAGG C 0 A_PlaySoundEx("weapon/magnetmissile","Weapon")
MAGG C 0 A_FireCustomMissile("MagnetMissileSpread",0,1,8,0)
goto "Super::Fire+3"

ReadyC:Goto Ready+1
}
}

actor GeminiLaserWepC : GeminiLaserWep //replaces GeminiLaserWep
{
dropitem "GeminiLaserWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor HardKnuckleWepC : HardKnuckleWep //replaces HardKnuckleWep
{
dropitem "HardKnuckleWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor TopSpinWepC : TopSpinWep //replaces TopSpinWep
{
dropitem "TopSpinWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor SearchSnakeWepC : SearchSnakeWep //replaces SearchSnakeWep
{
dropitem "SearchSnakeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor SparkShockWepC : SparkShockWep //replaces SparkShockWep
{
dropitem "SparkShockWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
SPAS C 0 A_JumpIfNoAmmo("NoAmmo")
SPAS C 2 
SPAS C 0 A_PlaySoundEx("weapon/sparkshock","Weapon")
SPAS C 0 A_FireCustomMissile("SparkShock",0,1,8,0)
SPAS DE 4
SPAS D 8 A_WeaponReady(WRF_NOFIRE)//Rage
SPAS C 6 A_WeaponReady(WRF_NOFIRE)//Rage
SPAS D 0 A_Refire
Goto Ready2

ReadyC:Goto Ready2
}
}

actor ShadowBladeWepC : ShadowBladeWep //replaces ShadowBladeWep
{
dropitem "ShadowBladeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MM4//MM4//MM4//MM4//MM4//MM4
//MM4//MM4//MM4//MM4//MM4//MM4
actor FlashStopperWepC : FlashStopperWep //replaces FlashStopperWep
{
dropitem "FlashStopperWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
FSTO A 0 A_JumpIfInventory("FlashStopperWaitC",1,"FireWait")
FSTO A 0 A_JumpIfNoAmmo("NoAmmo")
FSTO EF 1
FSTO A 0 A_PlaySoundEX("weapon/flashstopperstart","Weapon")
FSTO A 0 A_FireCustomMissile("FlashStopperStarter",0,1,8,0)
FSTO A 0 A_FireCustomMissile("FlashStopper",0,0,0,0)
FSTO A 0 A_GiveInventory("FlashStopperWait_RC",1)
goto Super::Fire+8

ReadyC:Goto Ready+1
}
}

actor FlashStopperWaitC : PowerUp
{
+INVENTORY.ADDITIVETIME
powerup.duration 21
}

actor FlashStopperWait_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRage",0),2)
TNT1 AA 0 A_GiveInventory("FlashStopperWaitC",1)
stop
}
}


actor RainFlushWepC : RainFlushWep //replaces RainFlushWep
{
dropitem "RainFlushWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TOAH A 0 A_JumpIfNoAmmo("NoAmmo")
TOAH A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
TOAH A 0 A_TakeInventory("RainFlushAmmo",7,TIF_NOTAKEINFINITE)
TOAH A 0 A_GiveInventory("CBM_FireRainFlush")
goto Super::Fire+4

ReadyC:Goto Ready+1
}
}

actor DrillBombWepC : DrillBombWep //replaces DrillBombWep
{
dropitem "DrillBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor PharaohShotWepC : PharaohShotWep //replaces PharaohShotWep
{
dropitem "PharaohShotWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
PHAN A 0 A_JumpIfNoAmmo("NoAmmo")
PHAN A 2 A_GiveInventory("PharaohCharge",1)
PHAN A 0 A_Refire("Hold1")
Goto Throw1
Hold1:
PHAN BCDE 2
PHAN E 0 A_SpawnItemEx("PharaohFX")
PHAN A 0 A_Refire("Hold2")
Goto Throw1
Hold2:
TNT1 A 0 A_JumpIfInventory("PharaohCharge",78,"Hold3a")
TNT1 A 1 A_GiveInventory("PharaohCharge_RC",1)
TNT1 A 0 A_Refire("Hold2")
TNT1 A 0 A_JumpIfInventory("PharaohCharge",78,"Throw3")
TNT1 A 0 A_JumpIfInventory("PharaohCharge",33,"Throw2")
Goto Throw1

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor PharaohCharge_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("PharaohCharge",2+CallACS("cbm_CheckForRage",0)*2)
stop
}
}

actor RingBoomerangWepC : RingBoomerangWep //replaces RingBoomerangWep
{
dropitem "RingBoomerangWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DustCrusherWepC : DustCrusherWep //replaces DustCrusherWep
{
dropitem "DustCrusherWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DiveMissileWepC : DiveMissileWep //replaces DiveMissileWep
{
dropitem "DiveMissileWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"FireSpread")
goto "Super::Fire"
FireSpread:
AIRS D 0 A_JumpIfNoAmmo("NoAmmo")
AIRS D 0 A_PlaySoundEx("weapon/mbuster","Weapon")
AIRS D 0 A_FireCustomMissile("DiveMissileSpread",0,1,8,0)
goto "Super::Fire+3"

Waiting:
AIRS D 2 A_TakeInventory("DiveCounter",2)
AIRS D 0 A_JumpIfInventory("DiveCounter",1,"Waiting")
AIRS D 4
AIRS D 0 A_Refire
Goto Ready+1

ReadyC:Goto Ready+1
}
}

actor SkullBarrierWepC : SkullBarrierWep //replaces SkullBarrierWep
{
dropitem "SkullBarrierWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MM5//MM5//MM5//MM5//MM5//MM5
//MM5//MM5//MM5//MM5//MM5//MM5
actor GravityHoldWepC : GravityHoldWep //replaces GravityHoldWep
{
dropitem "GravityHoldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WaterWaveWepC : WaterWaveWep //replaces WaterWaveWep
{
dropitem "WaterWaveWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor PowerStoneWepC : PowerStoneWep //replaces PowerStoneWep
{
dropitem "PowerStoneWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor GyroAttackWepC : GyroAttackWep //replaces GyroAttackWep
{
dropitem "GyroAttackWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor StarCrashWepC : StarCrashWep //replaces StarCrashWep
{
dropitem "StarCrashWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

AltfireC:
STAA A 0 A_TakeInventory("ShieldCheck",1)
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor ChargeKickWepC : ChargeKickWep //replaces ChargeKickWep
{
dropitem "ChargeKickWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
CKIC C 0 A_JumpIfNoAmmo("NoAmmo")

CKIC C 0 A_GiveInventory("SlideVivifyFlag",1)
CKIC C 0 A_Refire(1)

CKIC C 0 A_PlaySoundEx("weapon/chargekick","Weapon")
CKIC C 0 SetPlayerProperty(0,1,0)
CKIC C 2 A_ChangeVelocity(25,0,momz,3)
CKIC B 2 A_FireCustomMissile("ChargeKick",0,1,0,0)
CKIC A 8 SetPlayerProperty(0,0,0)
CKIC B 5
CKIC C 5

CKIC C 0 A_TakeInventory("SlideVivifyFlag",9)

CKIC C 0 A_Refire
Goto Ready+1

ReadyC:Goto Ready+1
}
}

actor NapalmBombWepC : NapalmBombWep //replaces NapalmBombWep
{
dropitem "NapalmBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor CrystalEyeWepC : CrystalEyeWep //replaces CrystalEyeWep
{
dropitem "CrystalEyeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MM6//MM6//MM6//MM6//MM6//MM6
//MM6//MM6//MM6//MM6//MM6//MM6
actor BlizzardAttackWepC : BlizzardAttackWep //replaces BlizzardAttackWep
{
dropitem "BlizzardAttackWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor CentaurFlashWepC : CentaurFlashWep //replaces CentaurFlashWep
{
dropitem "CentaurFlashWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FlameBlastWepC : FlameBlastWep //replaces FlameBlastWep
{
dropitem "FlameBlastWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor KnightCrushWepC : KnightCrushWep //replaces KnightCrushWep
{
dropitem "KnightCrushWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor PlantBarrierWepC : PlantBarrierWep //replaces PlantBarrierWep
{
dropitem "PlantBarrierWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
PLAA A 0 A_JumpIfInventory("ShieldCheck",1,"ShieldThrow")
PLAA A 0 A_JumpIfNoAmmo("NoAmmo")
PLAA A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
PLAA A 1 A_GiveInventory("ShieldCheck",1)
goto ShieldActive
ShieldActive:
PLAA B 0 A_SpawnItemEx("PlantBarrierWarper")
PLAA BCDEFGH 2
PLAA A 0 A_GiveInventory("PlantWeakener",1)
Goto ShieldLoop
ShieldLoop:
PLAA A 2 A_WeaponReady//Rage
PLAA A 0 A_GiveInventory("CBM_PlantBarrierHealer",1)
PLAA A 0 A_JumpIfNoAmmo("ShieldThrow")
PLAA A 0 A_JumpIfInventory("ShieldCheck",1,"ShieldLoop")
Goto ShieldThrow

AltfireC:
PLAA A 0 A_TakeInventory("PlantWeakener",1)
PLAA A 0 A_TakeInventory("ShieldCheck",999)
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor CBM_PlantBarrierHealer : CustomInventory
{
States
{
Pickup:
//TNT1 A 0 A_JumpIf(health >= 100,"Failed")
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(CBM_FetchMyHealth,2)==0,"Failed")
TNT1 A 0 A_JumpIfInventory("PlantBarrierAmmoCooldown",1,"Heal")
TNT1 A 0 A_GiveInventory("PlantBarrierAmmoCooldown",1)
TNT1 A 0 A_TakeInventory("PlantBarrierAmmo",1,TIF_NOTAKEINFINITE)
goto Heal
Heal:
TNT1 A 0 A_GiveInventory("CBM_HealThing10_P")
stop
Failed:
TNT1 A 0
stop
}
}


actor SilverTomahawkWepC : SilverTomahawkWep //replaces SilverTomahawkWep
{
dropitem "SilverTomahawkWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WindStormWepC : WindStormWep //replaces WindStormWep
{
dropitem "WindStormWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor YamatoSpearWepC : YamatoSpearWep //replaces YamatoSpearWep
{
dropitem "YamatoSpearWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MM7//MM7//MM7//MM7//MM7//MM7
//MM7//MM7//MM7//MM7//MM7//MM7
actor FreezeCrackerWepC : FreezeCrackerWep //replaces FreezeCrackerWep
{
dropitem "FreezeCrackerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor JunkShieldWepC : JunkShieldWep //replaces JunkShieldWep
{
dropitem "JunkShieldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

ChargeBegin:
TNT1 A 0 A_SpawnItemEx("JunkSpawnFX",0,0,0,0,0,0,0)
TNT1 A 0 A_GiveInventory("ShieldCheck",1)
TNT1 A 0 A_GiveInventory("WeaponCharge",1)
TNT1 A 0 A_TakeInventory("CBM_JunkChargeWait")
TNT1 A 0 A_GunFlash
goto ChargeWait
ChargeWait:
TNT1 A 0 A_JumpIfInventory("CBM_JunkChargeWait",13,"ShieldCharge")
TNT1 A 1 A_GiveInventory("CBM_JunkChargeWait_RC")
TNT1 A 0 A_Refire("ChargeWait")
goto ChargeAttack
ShieldCharge:
TNT1 A 0 A_SpawnItemEx("JunkSpawnFX",0,0,0,0,0,0,0)
TNT1 A 0 A_PlaySoundEx("weapon/coilbounce1","body")
TNT1 A 0 A_GiveInventory("JunkShieldCharge",1)
TNT1 A 0 A_TakeInventory("CBM_JunkChargeWait")
TNT1 A 0 A_JumpIfInventory("IsBot",1,"BotFireMid")
TNT1 A 0 A_JumpIfInventory("JunkShieldCharge",5,"ChargeWaitFull")
goto ChargeWait

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor CBM_JunkChargeWait : Inventory
{
inventory.amount 1
inventory.maxamount 13
}

actor CBM_JunkChargeWait_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("CBM_JunkChargeWait",1+CallACS("cbm_CheckForRage",0))
stop
}
}


actor DangerWrapWepC : DangerWrapWep //replaces DangerWrapWep
{
dropitem "DangerWrapWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ThunderBoltWepC : ThunderBoltWep //replaces ThunderBoltWep
{
dropitem "ThunderboltWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WildCoilWepC : WildCoilWep //replaces WildCoilWep
{
dropitem "WildCoilWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

HoldStart:
WCOI A 0 A_PlaySoundEx("weapon/coilstart","Weapon")
Goto Hold2
Hold2:
WCOI A 0 A_JumpIfInventory("WeaponCharge",30,"Hold3")//23
WCOI A 0 A_JumpIfInventory("WeaponCharge",22,"HoldStart2")
WCOI G 1 ACS_ExecuteAlways(998,0,74,5)
WCOI G 0 A_Refire("Hold2.a")
Goto Fire1
Hold2.a:
WCOI A 1 ACS_ExecuteAlways(998,0,58,1)
WCOI A 0 A_GiveInventory("WeaponCharge_RC",1)
WCOI G 0 A_Refire("Hold2")
Goto Fire1
HoldStart2:
SAPT A 0 ACS_ExecuteAlways(974,0)
NCRU L 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
WCOI A 0 A_GiveInventory("WeaponCharge",10)//1
Goto Hold3
Hold3:
WCOI H 1 ACS_ExecuteAlways(998,0,75,6)
WCOI H 0 A_Refire("Hold3.a")
Goto Fire2
Hold3.a:
WCOI I 1 ACS_ExecuteAlways(998,0,76,7)
WCOI H 0 A_Refire("Hold3.b")
Goto Fire2
Hold3.b:
WCOI A 1 ACS_ExecuteAlways(998,0,58,1)
WCOI A 0 A_JumpIfInventory("IsBot",1,"BotFire")
WCOI H 0 A_Refire("Hold3")
Goto Fire2

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+2
}
}

actor SlashClawWepC : SlashClawWep //replaces SlashClawWep
{
dropitem "SlashClawWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor NoiseCrushWepC : NoiseCrushWep //replaces NoiseCrushWep
{
dropitem "NoiseCrushWepCDropped"
+WEAPON.ALT_AMMO_OPTIONAL
Weapon.AmmoUse2 2
weapon.ammotype2 "NoiseCrushAmmo"
States
{
Spawn:
TNT1 A 0
stop

ChargeStart:
NCRU L 0 A_GiveInventory("WeaponCharge",1)
NCRU L 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Charged:
NCRU L 0 ACS_ExecuteAlways(998,0,72,6)
NCRU M 1 A_WeaponReady
NCRU L 0 ACS_ExecuteAlways(998,0,73,7)
NCRU N 1 A_WeaponReady
NCRU I 0 ACS_ExecuteAlways(998,0,55,1)
NCRU I 1 A_WeaponReady
loop

AltfireC:
NCRU I 0 A_JumpIfInventory("WeaponCharge",1,"Fire2")
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor ScorchWheelWepC : ScorchWheelWep //replaces ScorchWheelWep
{
dropitem "ScorchWheelWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}


//MM8//MM8//MM8//MM8//MM8//MM8
//MM8//MM8//MM8//MM8//MM8//MM8
actor MegaBallWepC : MegaBallWep //replaces MegaBallWep
{
dropitem "MegaBallWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor TornadoHoldWepC : TornadoHoldWep //replaces TornadoHoldWep
{
dropitem "TornadoHoldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor AstroCrushWepC : AstroCrushWep //replaces AstroCrushWep
{
dropitem "AstroCrushWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Fire:
AHUD A 0 A_JumpIfNoAmmo("NoAmmo")
AHUD B 0
AHUD B 0 A_JumpIfInventory("FlightDisableFlag",1,3)
AHUD B 0 A_Stop
AHUD B 0 SetPlayerProperty(0,1,3)

TNT1 A 0 A_GiveInventory("SelfTotallyFrozen",1)

AHUD BCDEF 3
TNT1 A 0 A_FireCustomMissile("AstroCrushSpawner",0,1,0,0)
TNT1 A 30 
AHUD B 0 SetPlayerProperty(0,0,3)

TNT1 A 0 A_GiveInventory("SelfTotallyUnfrozen",1)

AHUD GH 3
AHUD A 14
AHUD A 0 A_Refire
Goto Ready+1
ReadyC:Goto Ready+1
}
}

actor FlameSwordWepC : FlameSwordWep //replaces FlameSwordWep
{
dropitem "FlameSwordWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ThunderClawWepC : ThunderClawWep //replaces ThunderClawWep
{
dropitem "ThunderClawWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TCLD D 0 A_JumpIfNoAmmo("NoAmmo")
TCLD D 0 A_PlaySoundEx("weapon/thunderclaw","Weapon")
TCLD D 0 A_GiveInventory("CBM_FireThunderClaw",1)
goto Super::Fire+3

ReadyC:Goto Ready+1
}
}

actor HomingSniperWepC : HomingSniperWep //replaces HomingSniperWep
{
dropitem "HomingSniperWepCDropped"
States
{
Spawn:
TNT1 A 0
stop


Fire:
Hold:
HSNI C 0 A_JumpIfNoAmmo("NoAmmo")
HSNI C 0 A_JumpIfInventory("WeaponCharge",18,"Hold1")
HSNI C 0 A_GiveInventory("WeaponCharge_RC",1)
HSNI C 1 A_GiveInventory("WeaponCharge_RC",1)
HSNI C 0 A_Refire
Goto Fire1
Hold1:
HSNI C 0 //A_JumpIfInventory("WeaponCharge",19,"Charge1")
HSNI C 0 A_PlaySoundEx("weapon/chargeup","Weapon")
HSNI C 2 A_GiveInventory("WeaponCharge",1)
Charge1:
HSNI C 0 A_JumpIfInventory("WeaponCharge",35,"Charge2Start")
HSNI F 1 ACS_ExecuteAlways(998,0,89,5)
HSNI C 0 A_Refire("Charge1.a")
Goto Fire2
Charge1.a:
HSNI C 0 ACS_ExecuteAlways(998,0,88,1)
HSNI C 1 A_GiveInventory("WeaponCharge_RC",1)
HSNI C 0 A_Refire("Charge1")
Goto Fire2
Charge2Start:
HSNI I 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
Goto Charge2
Charge2:
HSNI I 1 ACS_ExecuteAlways(998,0,90,6)
HSNI C 0 A_Refire("Charge2.a")
Goto Fire3
Charge2.a:
HSNI J 1 ACS_ExecuteAlways(998,0,91,7)
HSNI C 0 A_Refire("Charge2.b")
Goto Fire3
Charge2.b:
HSNI C 1 ACS_ExecuteAlways(998,0,88,1)
HSNI C 0 A_GiveInventory("WeaponCharge",1)
HSNI C 0 A_JumpIfInventory("IsBot",1,"BotFire")
HSNI C 0 A_Refire("Charge2")
Goto Fire3

Fire2:
HSNI C 0 A_TakeInventory("WeaponCharge",500)
HSNI C 0 A_PlaySoundEx("weapon/coilexplode","Weapon")
HSNI C 0 A_JumpIfInventory("HomingSniperAmmo",4,"Fire2r")
Goto Fire1
Fire3:
HSNI C 0 A_TakeInventory("WeaponCharge",500)
HSNI C 0 A_PlaySoundEx("weapon/coilexplode","Weapon")
HSNI C 0 A_JumpIfInventory("HomingSniperAmmo",10,"Fire3r")
HSNI C 0 A_JumpIfInventory("HomingSniperAmmo",4,"Fire2r")
Goto Fire1

Fire1:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"Fire1Spread")
goto "Super::Fire1"
Fire1Spread:
HSNI C 0 A_TakeInventory("WeaponCharge",500)
HSNI C 0 A_PlaySoundEx("weapon/coilexplode","Weapon")
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",0,1,8,0)
goto "Super::Fire1+3"
Fire2r:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"Fire2rSpread")
goto "Super::Fire2r"
Fire2rSpread:
HSNI C 0 A_TakeInventory("HomingSniperAmmo",4)
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",0,0,8,0)
HSNI C 2
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",random(-5,5),0,8,0,0,random(-4,4))
goto "Super::Fire2r+4"
Fire3r:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"Fire3rSpread")
goto "Super::Fire3r"
Fire3rSpread:
HSNI C 0 A_TakeInventory("HomingSniperAmmo",10)
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",0,0,8,0)
HSNI C 2
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",random(-7,7),0,8,0,0,random(-4,4))
HSNI D 2
HSNI D 0 A_FireCustomMissile("HomingSniperSpread",random(-7,7),0,8,0,0,random(-4,4))
HSNI D 2
HSNI D 0 A_FireCustomMissile("HomingSniperSpread",random(-7,7),0,8,0,0,random(-4,4))
HSNI D 2
HSNI C 0 A_FireCustomMissile("HomingSniperSpread",random(-7,7),0,8,0,0,random(-4,4))
goto "Super::Fire3r+10"

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor IceWaveWepC : IceWaveWep //replaces IceWaveWep
{
dropitem "IceWaveWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FlashBombWepC : FlashBombWep //replaces FlashBombWep
{
dropitem "FlashBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WaterBalloonWepC : WaterBalloonWep //replaces WaterBalloonWep
{
dropitem "WaterBalloonWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MMB//MMB//MMB//MMB//MMB//MMB
//MMB//MMB//MMB//MMB//MMB//MMB
actor TenguBladeWepC : TenguBladeWep //replaces TenguBladeWep
{
dropitem "TenguBladeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
Hold:
TENA A 0 A_JumpIfNoAmmo("NoAmmo")
TENA A 0 A_JumpIfInventory("WeaponCharge",25,"Charge2")
TENA A 0 A_JumpIfInventory("WeaponCharge",15,"Charge")
TENA A 1 A_GiveInventory("WeaponCharge_RC",1)
TENA A 0 A_Refire
Goto Fire1
Charge:
TENA B 0 A_JumpIfInventory("WeaponCharge",25,"Charge2")
TENA B 1 A_GiveInventory("WeaponCharge_RC",1)
TENA B 0 A_Refire
Goto Fire1

DashStart:
TENA E 0 A_GiveInventory("CutterFlag",10)
TENA E 0 A_TakeInventory("TenguBladeAmmo",2)
TENA E 0 A_Recoil(-50)
TENA E 0 A_PlaySoundEx("weapon/tengudash","Weapon")

TNT1 A 0 A_GiveInventory("SelfTotallyFrozen",1)//

TENA E 0 A_ChangeFlag("THRUSPECIES",1)
Goto DashAttack
DashExtend:
TENA E 0 A_GiveInventory("CutterFlag",2)
TENA E 0 A_Stop
TENA E 0 A_SpawnItemEx("TenguDash")
TENA E 0 A_Recoil(-40)
TENA E 0 ThrustThingZ(0,35,0,0)
Goto DashAttack
DashAttack:
TENA E 0 A_Recoil(-1)
TENA E 1 A_SpawnItemEx("TenguDash",48,0,32,momx,momy,momz,0,8) //A_FireCustomMissile("TenguMelee",0,0,11,-8)
TENA E 0 A_TakeInventory("CutterFlag",1)
TENA E 0 A_JumpIfInventory("CutterFlag",1,"DashAttack")
DashFinish:
TENA E 1 A_JumpIf(ACS_ExecuteWithResult(261,64)==1,"DashExtend")

TNT1 A 0 A_GiveInventory("SelfTotallyUnfrozen",1)//

TENA E 0 A_ChangeFlag("THRUSPECIES",0)
TENA E 0 A_ScaleVelocity(0.25)
TENA FG 2
TNT1 A 8 A_TakeInventory("WeaponCharge",999)
TENA CBA 2
TENA A 0 A_Refire
Goto Ready+1

AltfireCore://Altfire:
Fire1:
TENA A 0 A_JumpIfNoAmmo("NoAmmo")
TENA A 0 A_PlaySoundEx("weapon/tengushot","Weapon")
TENA B 1 A_GiveInventory("CBM_FireTenguSlash1",1)
TENA C 1
TENA D 2 
TENA E 2 A_GiveInventory("CBM_FireTenguSlash2",1)
goto Super::Fire1+6

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor CopyVisionWepC : CopyVisionWep //replaces CopyVisionWep
{
dropitem "CopyVisionWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor LightningBoltWepC : LightningBoltWep //replaces LightningBoltWep
{
dropitem "LightningBoltWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
LIBO B 0 A_JumpIfNoAmmo("NoAmmo")
LIBO B 0 A_JumpIfInventory("LightningBoltCooldownC",1,"NoAmmo")
LIBO B 0 A_PlaySoundEx("weapon/lightningbolt","Weapon")
LIBO B 0 A_JumpIfInventory("FlightDisableFlag",1,3)//
LIBO B 0 A_Stop
//LIBO B 0 ACS_NamedExecuteAlways("core_flyplayer",0,0,1)
//LIBO B 0 ACS_NamedExecuteAlways("core_freezeplayer",0,0,1)
LIBO B 0 SetPlayerProperty(0,1,3)//
LIBO B 0 A_GiveInventory("SelfTotallyFrozen",1)//
LIBO C 2 A_SpawnItemEx("LightningStartFX1",4,0,48)
LIBO D 2 A_SpawnItemEx("LightningStartFX2",4,0,48)
LIBO EF 2
TNT1 A 10
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",0,1,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",345,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",30,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",315,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",60,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",285,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",90,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",255,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",120,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",225,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",150,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",195,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",180,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",165,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",210,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",135,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",240,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",105,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",270,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",75,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",300,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",45,0,8,0)
TNT1 A 1 A_FireCustomMissile("LightningBoltTracer",330,0,8,0)
TNT1 A 0 A_FireCustomMissile("LightningBoltTracer2",15,0,8,0)
TNT1 A 10
LIBO FEDC 2
LIBO B 0 SetPlayerProperty(0,0,3)//
LIBO B 0 A_GiveInventory("SelfTotallyUnfrozen",1)//
//LIBO B 0 ACS_NamedExecuteAlways("core_flyplayer",0,0,0)
//LIBO B 0 ACS_NamedExecuteAlways("core_freezeplayer",0,0,0)
LIBO B 1 A_GiveInventory("LightningBoltCooldown_RC",1)
LIBO B 0 A_Refire
Goto Ready+1
NoAmmo:
LIBO B 1 ACS_Execute(979,0)
Goto Ready+1

ReadyC:Goto Ready+1
}
}

actor LightningBoltCooldownC : PowerUp
{
+INVENTORY.ADDITIVETIME
powerup.duration 10
}

actor LightningBoltCooldown_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRage",0),2)
TNT1 AA 0 A_GiveInventory("LightningBoltCooldownC",1)
stop
}
}


actor IceWallWepC : IceWallWep //replaces IceWallWep
{
dropitem "IceWallWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
ICWL H 0 A_JumpIfNoAmmo("NoAmmo")
ICWL H 0 A_GiveInventory("IceWallFlag",1)
ICWL H 0 A_PlaySoundEx("weapon/icewallspawn","Weapon")
ICWL H 0 A_Stop
ICWL H 0 A_GiveInventory("CBM_FireIceWall",1)
goto Super::Fire+5

ReadyC:Goto Ready+1
}
}

actor SpreadDrillWepC : SpreadDrillWep //replaces SpreadDrillWep
{
dropitem "SpreadDrillWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Deselect:
SPRE H 0 //A_TakeInventory("SpreadDrillFlag")
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire")
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
SPRE H 1 A_Lower
goto Deselect+2

Fire:
SPRE H 0 A_JumpIfInventory("SpreadDrillFlag",1,"Spread")
SPRE H 0 A_JumpIfInventory("CBM_SpreadDrillRefire",1,"Spread")
SPRE H 0 A_JumpIfNoAmmo("NoAmmo")
SPRE H 0 A_PlaySoundEx("weapon/spreaddrill1","Weapon")
SPRE H 0 A_GiveInventory("CBM_FireSpreadDrill",1)
SPRE H 0 A_GiveInventory("SpreadDrillFlag",2)
SPRE IJ 2
SPRE H 4 A_GiveInventory("CBM_SpreadDrillRefire",6)
SPRE J 0 A_Refire
Goto RefireWait_A//Ready+1

Spread:
SPRE K 0 A_TakeInventory("SpreadDrillFlag",1)
SPRE K 1 A_GiveInventory("SpreadDrillTrigger",1)
SPRE K 1
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
SPRE H 0 A_JumpIfInventory("CBM_SpreadDrillRefire",1,"RefireWait_MA")
goto Ready+1

RefireWait_MA:
SPRE H 2 A_WeaponReady(12)
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
SPRE H 0 A_JumpIfInventory("CBM_SpreadDrillRefire",1,"RefireWait_A")
goto Ready+1
RefireWait_A_Swap:
SPRE H 2 A_WeaponReady(10)
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
SPRE H 2 A_WeaponReady(10)
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
SPRE H 2 A_WeaponReady(10)
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
RefireWait_A:
SPRE H 2 A_WeaponReady(8)
SPRE H 0 A_TakeInventory("CBM_SpreadDrillRefire",1)
SPRE H 0 A_JumpIfInventory("CBM_SpreadDrillRefire",1,"RefireWait_A")
goto Ready+1

Altfire:Goto AltfireCBM
AltfireCore:
SPRE H 0 A_JumpIfInventory("CBM_SpreadDrillRefire",1,"RefireWait_A")
SPRE H 0 A_JumpIfNoAmmo("NoAmmo")
SPRE H 0 A_PlaySoundEx("weapon/spreaddrill1","Weapon")
SPRE H 0 A_FireCustomMissile("SpreadDrill",0,1,8,0)
SPRE H 0 A_GiveInventory("SpreadDrillFlag",2)
SPRE IJ 2
SPRE H 4 A_GiveInventory("CBM_SpreadDrillRefire",9)
Goto RefireWait_A_Swap//Ready+1

ReadyC:Goto Ready+1
}
}

actor RemoteMineWepC : RemoteMineWep //replaces RemoteMineWep
{
dropitem "RemoteMineWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor WaveBurnerWepC : WaveBurnerWep //replaces WaveBurnerWep
{
dropitem "WaveBurnerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor MagicCardWepC : MagicCardWep //replaces MagicCardWep
{
dropitem "MagicCardWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MM9//MM9//MM9//MM9//MM9//MM9
//MM9//MM9//MM9//MM9//MM9//MM9
actor ConcreteShotWepC : ConcreteShotWep //replaces ConcreteShotWep
{
dropitem "ConcreteShotWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor TornadoBlowWepC : TornadoBlowWep //replaces TornadoBlowWep
{
dropitem "TornadoBlowWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TBLH B 0 A_JumpIfNoAmmo("NoAmmo")
TBLH B 2
TBLH A 0 A_PlaySoundEx("weapon/tornadoblow","Weapon")
TBLH A 0 A_TakeInventory("TornadoBlowAmmo",7,TIF_NOTAKEINFINITE)
TBLH A 0 A_GiveInventory("CBM_FireTornadoBlow1",1)
TBLH A 0 A_FireCustomMissile("TornadoDamager",0,0,0,0)
TBLH C 1 A_GiveInventory("TornadoBlowThrust",1)
TBLH CD 1
TBLH A 0 A_GiveInventory("CBM_FireTornadoBlow2",1)
TBLH A 0 A_FireCustomMissile("TornadoDamager",0,0,0,0)
TBLH D 1 A_GiveInventory("TornadoBlowThrust",1)
TBLH EE 1 
TBLH A 0 A_GiveInventory("CBM_FireTornadoBlow3",1)
TBLH A 0 A_FireCustomMissile("TornadoDamager",0,0,0,0)
TBLH F 1 A_GiveInventory("TornadoBlowThrust",1)
TBLH F 1
TNT1 A 1
TBLH A 0 A_GiveInventory("CBM_FireTornadoBlow4",1)
TBLH A 0 A_FireCustomMissile("TornadoDamager",0,0,0,0)
goto Super::Fire+21

ReadyC:Goto Ready+1
}
}

actor LaserTridentWepC : LaserTridentWep //replaces LaserTridentWep
{
dropitem "LaserTridentWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor PlugBallWepC : PlugBallWep //replaces PlugBallWep
{
dropitem "PlugBallWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor HornetChaserWepC : HornetChaserWep //replaces HornetChaserWep
{
dropitem "HornetChaserWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TNT1 A 0 A_JumpIfInventory("PowerSpread_ST",1,"FireSpread")
goto "Super::Fire"
FireSpread:
HCHS D 0 A_JumpIfNoAmmo("NoAmmo")
HCHS D 0 A_PlaySoundEx("weapon/hornetchaser","Weapon")
HCHS D 0 A_FireCustomMissile("HornetChaserSpread",0,1,8,0)
goto "Super::Fire+3"

ReadyC:Goto Ready+1
}
}

actor MagmaBazookaWepC : MagmaBazookaWep //replaces MagmaBazookaWep
{
dropitem "MagmaBazookaWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Hold:
MGHD A 0 A_JumpIfNoAmmo("NoAmmo")
MGHD A 0 A_GunFlash("Sound.Magma",GFF_NOEXTCHANGE)
Hold.b:
MGHD A 0 A_JumpIfInventory("WeaponCharge",19,"Charge2Start")
MGHD A 0 A_GiveInventory("WeaponCharge_RC",1)
MGHD A 1
MGHD A 0 A_Refire("Hold.a")
goto fire
Hold.a:
MGHD F 1
MGHD A 0 A_Refire("Hold.b")
goto Fire
Charge2Start:
Charge2:
MGHD B 1 ACS_ExecuteAlways(998,0,192,6)
MGHD G 0 A_Refire("Charge2.a")
MGHD A 0 A_JumpIfInventory("MagmaBazookaAmmo",6,"Fire2")
Goto Fire
Charge2.a:
MGHD A 1 ACS_ExecuteAlways(998,0,191,1)
MGHD A 0 A_Refire("Charge2.b")
MGHD A 0 A_JumpIfInventory("MagmaBazookaAmmo",6,"Fire2")
goto Fire
Charge2.b:
MGHD C 1 ACS_ExecuteAlways(998,0,193,7)
MGHD A 0 A_JumpIfInventory("IsBot",1,"BotFire")
MGHD A 0 A_Refire("Charge2")
MGHD A 0 A_JumpIfInventory("MagmaBazookaAmmo",6,"Fire2")
goto Fire

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor BlackHoleBombWepC : BlackHoleBombWep //replaces BlackHoleBombWep
{
dropitem "BlackHoleBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
BHUD A 0 A_JumpIfInventory("BlackHoleBombCooldown",1,"NoAmmo")
BHUD A 0 A_JumpIfInventory("BlackHoleFlag",1,"Switch")
BHUD A 0 A_JumpIfNoAmmo("NoAmmo")
BHUD A 1
BHUD A 0 A_GiveInventory("CBM_FireBlackHoleBomb",1)
goto Super::Fire+5

ReadyC:Goto Ready+1
}
}

actor JewelSatelliteWepC : JewelSatelliteWep //replaces JewelSatelliteWep
{
dropitem "JewelSatelliteWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

ShieldThrow:
JEWE J 0 A_GiveInventory("RemoteMineFlag",10)
JEWE J 0 A_GiveInventory("BlackHoleFlag",2)
JEWE J 0 A_GiveInventory("BlackHoleFlagD",1)//
JEWE RST 1
JEWE M 0 A_PlaySoundEx("weapon/jewelfire","weapon")
JEWE M 0 A_FireCustomMissile("JewelShot",0,0,8,0)
JEWE M 0 A_TakeInventory("JewelShieldCheck",1)
JEWE TSR 4
JEWE J 0 A_TakeInventory("BlackHoleFlag",999)
JEWE J 0 A_TakeInventory("RemoteMineFlag",999)
JEWE J 0 A_TakeInventory("BlackHoleFlagD",999)//
goto ShieldEnd

AltfireC:
JEWE J 0 A_JumpIfInventory("JewelShieldCheck",1,"ShieldEnd_CBM")
goto AltFireS
ShieldEnd_CBM:
JEWE J 0 A_ChangeFlag(REFLECTIVE,0)
JEWE J 0 A_ChangeFlag(DONTRIP,0)
JEWE J 0 ACS_NamedExecuteAlways("core_cantseekplayer",0,0,false)
JEWE J 0 A_ChangeFlag(DEFLECT,0)
JEWE J 0 A_TakeInventory("ShieldCheck",1)
JEWE J 0 A_TakeInventory("JewelShieldCheck",4)
JEWE J 1
goto Ready+1

ReadyC:Goto Ready+1
}
}

//MM10//MM10//MM10//MM10//MM10
//MM10//MM10//MM10//MM10//MM10
actor TripleBladeWepC : TripleBladeWep //replaces TripleBladeWep
{
dropitem "TripleBladeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WaterShieldWepC : WaterShieldWep //replaces WaterShieldWep
{
dropitem "WaterShieldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
WSHD D 0 A_JumpIfInventory("WaterShieldCheck",1,"BotCheck")
WSHD D 0 A_JumpIfNoAmmo("NoAmmo")
WSHD D 0 A_TakeInventory("WaterShieldAmmo",7,TIF_NOTAKEINFINITE)
WSHD D 0 A_PlaySoundEx("weapon/watershieldspawn","Weapon")
WSHD D 0 A_GiveInventory("ShieldCheck",1)
WSHD E 0 A_GiveInventory("CBM_SpawnWaterShield",1)
//WSHD E 3
//WSHD F 2
WSHD EEEFFEEEFFEEEFFEEEFF 1
WSHD EEEFFEEEFFEEEFFEEEFF 1
WSHD D 10
WSHD D 0 A_GiveInventory("WaterShieldExpand",1)
Goto Ready+1

AltfireC:
WSHD D 0 A_TakeInventory("WaterShieldCheck",8)
WSHD D 0 A_TakeInventory("ShieldCheck",1)
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor CommandoBombWepC : CommandoBombWep //replaces CommandoBombWep
{
dropitem "CommandoBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor ChillSpikeWepC : ChillSpikeWep //replaces ChillSpikeWep
{
dropitem "ChillSpikeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ThunderWoolWepC : ThunderWoolWep //replaces ThunderWoolWep
{
dropitem "ThunderWoolWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ReboundStrikerWepC : ReboundStrikerWep //replaces ReboundStrikerWep
{
dropitem "ReboundStrikerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WheelCutterWepC : WheelCutterWep //replaces WheelCutterWep
{
dropitem "WheelCutterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
WHEE I 0 A_JumpIfNoAmmo("NoAmmo")
WHEE J 0 A_TakeInventory("WheelCutterAmmo",2,TIF_NOTAKEINFINITE)
WHEE J 0 A_PlaySoundEx("weapon/wheelstart","Weapon")
WHEE J 1 A_GiveInventory("WheelCutterCheck",105)
WHEE J 0 A_GiveInventory("CBM_FireWheelSaw",1)
WHEE I 0 A_Refire
goto Throw
Hold:
WHEE J 0 A_JumpIfInventory("WheelCutterCheck",1,"HoldLoop")
goto Throw
HoldLoop:
WHEE J 1 
WHEE J 0 A_Refire("HoldLoop2")
goto Throw
HoldLoop2:
WHEE J 1 
WHEE J 0 A_Refire("HoldLoop3")
goto Throw
HoldLoop3:
WHEE J 1 
WHEE J 0 A_Refire("HoldLoop4")
goto Throw
HoldLoop4:
WHEE J 1 
WHEE J 0 A_Refire("HoldLoop5")
goto Throw
HoldLoop5:
WHEE J 1
WHEE J 0 A_TakeInventory("WheelCutterCheck",1)
WHEE J 0 A_JumpIfInventory("WheelCutterDestroy",1,"End")
WHEE J 0 A_JumpIfInventory("IsBot",1,"Throw")
WHEE J 0 A_Refire
Goto Throw

Altfire:Goto AltfireCBM
AltfireCore:
WHEE I 0 A_JumpIfNoAmmo("NoAmmo")
WHEE J 0 A_TakeInventory("WheelCutterAmmo",2,TIF_NOTAKEINFINITE)
WHEE J 1 A_PlaySoundEx("weapon/wheelstart","Weapon")
Throw:
WHEE J 0 A_GiveInventory("CBM_FireWheelCutter",1)
WHEE JK 3
WHEE I 16 A_TakeInventory("WheelCutterCheck",105)
WHEE I 0 A_ClearRefire
goto Ready+1

ReadyC:Goto Ready+1
}
}

actor SolarBlazeWepC : SolarBlazeWep //replaces SolarBlazeWep
{
dropitem "SolarBlazeWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MMV//MMV//MMV//MMV//MMV//MMV
//MMV//MMV//MMV//MMV//MMV//MMV
actor SparkChaserWepC : SparkChaserWep //replaces SparkChaserWep
{
dropitem "SparkChaserWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor GrabBusterWepC : GrabBusterWep //replaces GrabBusterWep
{
dropitem "GrabBusterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor BubbleBombWepC : BubbleBombWep //replaces BubbleBombWep
{
dropitem "BubbleBombWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
TNT1 A 0 A_JumpIfNoAmmo("NoAmmo")
TNT1 A 1
TNT1 A 0 A_JumpIfInventory("BubbleBombSwitch",1,"FireSwap")
BBOM IJ 1
BBOM J 0 A_PlaySoundEx("weapon/bubblebomb","Weapon")
BBOM K 0 A_FireCustomMissile("BubbleBomb",0,1,8,0)
BBOM L 0 A_GiveInventory("BubbleBombFramesC",6-CallACS("cbm_CheckForRage",0)*2)
BBOM M 0 A_GiveInventory("BubbleBombSwitch",1)
BBOM KLMN 1
TNT1 A 1//
goto FireEnd
FireSwap:
BBOM OP 1
BBOM O 0 A_PlaySoundEx("weapon/bubblebomb","Weapon")
BBOM P 0 A_FireCustomMissile("BubbleBomb2",0,1,8,0)
BBOM Q 0 A_GiveInventory("BubbleBombFramesC",6-CallACS("cbm_CheckForRage",0)*2)
BBOM R 0 A_TakeInventory("BubbleBombSwitch",1)
BBOM QRST 1
TNT1 A 1//
goto FireEnd
AltfireCore://Altfire:
TNT1 A 0 A_JumpIfNoAmmo("NoAmmo")
TNT1 A 1
TNT1 A 0 A_JumpIfInventory("BubbleBombSwitch",1,"AltfireSwap")
BBOM OP 1
BBOM O 0 A_PlaySoundEx("weapon/bubblebomb","Weapon")
BBOM P 0 A_FireCustomMissile("BubbleBomb2",0,1,8,0)
BBOM Q 0 A_GiveInventory("BubbleBombFramesC",6-CallACS("cbm_CheckForRage",0)*2)
BBOM R 0 A_GiveInventory("BubbleBombSwitch",1)
BBOM QRST 1
TNT1 A 1//
goto FireEnd
AltfireSwap:
BBOM IJ 1
BBOM J 0 A_PlaySoundEx("weapon/bubblebomb","Weapon")
BBOM K 0 A_FireCustomMissile("BubbleBomb",0,1,8,0)
BBOM L 0 A_GiveInventory("BubbleBombFramesC",6-CallACS("cbm_CheckForRage",0)*2)
BBOM M 0 A_TakeInventory("BubbleBombSwitch",1)
BBOM KLMN 1
TNT1 A 1//
goto FireEnd
FireEnd:
TNT1 A 2 A_TakeInventory("BubbleBombFramesC",1)//A_RailWait
TNT1 A 0 A_JumpIfInventory("BubbleBombFramesC",1,"FrameRefireCheck")
goto FireEndTrue
FrameRefireCheck:
TNT1 A 0 A_Refire("FireEnd")
goto FireEndReleased
FireEndReleased:
TNT1 A 2 A_TakeInventory("BubbleBombFramesC",1)//A_RailWait
TNT1 A 0 A_JumpIfInventory("BubbleBombFramesC",1,"FireEndReleased")
TNT1 A 0 A_TakeInventory("BubbleBombSwitch",1)
goto FireEndTrue

Altfire:Goto AltfireCBM
//AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor BubbleBombFramesC : Inventory
{
inventory.amount 1
inventory.maxamount 6//17
}

actor PhotonMissileWepC : PhotonMissileWep //replaces PhotonMissileWep
{
dropitem "PhotonMissileWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

//This is done to literally just reach 'Launch:'
Fire:
PMIS G 0 A_JumpIfNoAmmo("NoAmmo")
PMIS G 0 A_TakeInventory("PhotonMissileAmmo",3,TIF_NOTAKEINFINITE)
PMIS H 1 A_PlaySoundEx("weapon/photonmissilestart","weapon")
HoldB1:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold1",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldB2")
goto Launch
HoldB2:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold1",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldC1")
goto Launch
HoldC1:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold2",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldC2")
goto Launch
HoldC2:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold2",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldD1")
goto Launch
HoldD1:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold3",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldD2")
goto Launch
HoldD2:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold3",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS H 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONARM,"HoldArm")
PMIS H 0 A_Refire("HoldB1")
goto Launch

HoldArm:
PMIS H 0 A_PlaySoundEx("weapon/photonmissilearm","weapon")
goto HoldB3

HoldB3:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold4",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldB4")
goto Launch
HoldB4:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold4",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldC3")
goto Launch
HoldC3:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold5",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldC4")
goto Launch
HoldC4:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold5",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldD3")
goto Launch
HoldD3:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold3",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldD4")
goto Launch
HoldD4:
PMIS H 0 A_SpawnItemEx("PhotonMissileHold3",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS H 0 A_GiveInventory("PhotonMissileCharge_RC",1)
PMIS I 1 A_JumpIfInventory("PhotonMissileCharge",CONST_PHOTONMAX,"Launch")
PMIS H 0 A_Refire("HoldB3")
goto Launch

Launch:
PMIS G 0 A_PlaySoundEx("weapon/megabuster","Weapon")
PMIS G 0 A_GiveInventory("CBM_FirePhotonMissileLauncher",1)//ARGH
PMIS G 0 A_SpawnItemEx("PhotonMissileHold3",48*cos(pitch),8,48*sin(-pitch)+32,momx,momy,momz,0,8)
PMIS IIHH 1
PMIS G 14 A_TakeInventory("PhotonMissileCharge",999)
goto Ready+1
AltfireCore:
//Altfire:
PMIS G 0 A_JumpIfNoAmmo("NoAmmo")
PMIS G 0 A_TakeInventory("PhotonMissileAmmo",3,TIF_NOTAKEINFINITE)
PMIS H 1 A_PlaySoundEx("weapon/photonmissilestart","weapon")
goto Launch



Altfire:Goto AltfireCBM
//AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor PhotonMissileCharge_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("PhotonMissileCharge",1+CallACS("cbm_CheckForRage",0))
stop
}
}

actor ElectricShockWepC : ElectricShockWep //replaces ElectricShockWep
{
dropitem "ElectricShockWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor BlackHoleWepC : BlackHoleWep //replaces BlackHoleWep
{
dropitem "BlackHoleWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
BHOL I 0 A_JumpIfInventory("ShieldCheck",1,"Detonate")
BHOL I 0 A_JumpIfNoAmmo("NoAmmo")
BHOL I 0 A_JumpIfInventory("BlackHoleTrigger",1,"NoAmmo")
TNT1 A 2
BHOL LM 1
BHOL I 0 A_PlaySoundEx("weapon/blackholestart","Weapon")
BHOL I 0 A_GiveInventory("ShieldCheck",1)
BHOL I 0 A_GiveInventory("CBM_SpawnBlackHole",1)
goto Super::Fire+9

AltfireC:
BHOL I 0 A_JumpIfInventory("ShieldCheck",1,"Detonate")
goto AltFireS

ReadyC:Goto Ready+1
}
}

actor DeepDiggerWepC : DeepDiggerWep //replaces DeepDiggerWep
{
dropitem "DeepDiggerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

//Powerup hell_C

FireEnd:
TNT1 A 1 A_RailWait
TNT1 A 0 A_JumpIfInventory("DeepDiggerAltFrames_C",1,"FireEnd")
TNT1 A 0 A_JumpIfInventory("DeepDiggerMainFrames_C",1,"FireEnd")
TNT1 A 0 A_JumpIf(true, "FireEndReal")
loop

CheckRight:
TNT1 A 0 A_JumpIfInventory("DeepDiggerMainFrames_C",1,"FireLeft")
TNT1 A 0 A_JumpIfInventory("DeepDiggerAltFrames_C",1,"FireRight")
TNT1 A 0 A_GunFlash("FlashFireRight")
TNT1 A 0 A_JumpIfInventory("DeepDiggerFlagR",1,"RightWait")
TNT1 A 0 A_JumpIfInventory("DeepDiggerFlagL",1,"RightWait")
TNT1 A 1 A_JumpIf(true,"FireEnd")
loop

CheckLeft:
TNT1 A 0 A_JumpIfInventory("DeepDiggerMainFrames_C",1,"FireLeft")
TNT1 A 0 A_JumpIfInventory("DeepDiggerAltFrames_C",1,"FireRight")
TNT1 A 0 A_GunFlash("FlashFireLeft")
TNT1 A 0 A_JumpIfInventory("DeepDiggerFlagR",1,"LeftWait")
TNT1 A 0 A_JumpIfInventory("DeepDiggerFlagL",1,"LeftWait")
TNT1 A 1 A_JumpIf(true,"FireEnd")
loop

FireLeft:
TNT1 A 0 A_PlaySoundEx("weapon/deepdiggerthrow","Weapon")
TNT1 A 0 A_FireCustomMissile("DeepDigger",0,1,-10,4)
TNT1 A 0 A_GiveInventory("DeepDiggerTakeLeft_CBM",1)
DDIG QRSTUV 1 A_GiveInventory("SpawnTempDeepDigger",1)
goto FireEnd
FireRight:
TNT1 A 0 A_PlaySoundEx("weapon/deepdiggerthrow","Weapon")
TNT1 A 0 A_FireCustomMissile("DeepDigger",0,1,10,-4)
TNT1 A 0 A_GiveInventory("DeepDiggerTakeRight_CBM",1)
DDIG IJKLMN 1 A_GiveInventory("SpawnTempDeepDigger",1)
goto FireEnd

FlashFireLeft:
DDIG F 0 A_PlaySoundEx("weapon/deepdiggerthrow","Weapon")
DDIG F 0 A_FireCustomMissile("DeepDigger",0,1,-10,4)
DDIG F 0 A_GiveInventory("DeepDiggerTakeLeft_CBM",1)
DDIG QRSTUV 1
stop
FlashFireRight:
DDIG F 0 A_PlaySoundEx("weapon/deepdiggerthrow","Weapon")
DDIG F 0 A_FireCustomMissile("DeepDigger",0,1,10,-4)
DDIG F 0 A_GiveInventory("DeepDiggerTakeRight_CBM",1)
DDIG IJKLMN 1
stop

AltfireC:
DDIG D 0 A_JumpIfInventory("DeepDiggerFlagL",1,"CheckLeft")
DDIG D 0 A_JumpIfInventory("DeepDiggerFlagR",1,"CheckLeft")
goto AltFireS

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor DeepDiggerAltFrames_C : Powerup
{
powerup.duration 6
+INVENTORY.ADDITIVETIME
}
actor DeepDiggerMainFrames_C : Powerup
{
powerup.duration 6
+INVENTORY.ADDITIVETIME
}

actor DeepDiggerTakeRight_CBM : DeepDiggerTakeRight
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRage",0),2)
TNT1 AA 0 A_GiveInventory("DeepDiggerMainFrames_C",1)
goto Super::Pickup+2
}
}
actor DeepDiggerTakeLeft_CBM : DeepDiggerTakeLeft
{
States
{
Pickup:
TNT1 A 0 A_JumpIf(CallACS("cbm_CheckForRage",0),2)
TNT1 AA 0 A_GiveInventory("DeepDiggerAltFrames_C",1)
goto Super::Pickup+2
}
}


actor BreakDashWepC : BreakDashWep //replaces BreakDashWep
{
dropitem "BreakDashWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

HoldStart:
BDAS H 0 A_PlaySoundEx("weapon/coilstart", "Weapon")
goto Hold2
Hold2:
BDAS H 0 A_JumpIfInventory("WeaponCharge",23,"Hold3")
BDAS H 0 A_JumpIfInventory("WeaponCharge",22,"HoldStart2")
BDAS I 1 ACS_ExecuteAlways(998,0,214,5)
BDAS G 0 A_Refire("Hold2.a")
goto Fire1
Hold2.a:
BDAS H 1 ACS_ExecuteAlways(998,0,213,1)
BDAS H 0 A_GiveInventory("WeaponCharge_RC",1)
BDAS G 0 A_Refire("Hold2")
goto Fire1
HoldStart2:
BDAS H 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
BDAS H 0 A_GiveInventory("WeaponCharge",1)
goto Hold3
Hold3:
BDAS J 1 ACS_ExecuteAlways(998,0,215,6)
BDAS H 0 A_Refire("Hold3.a")
goto Fire2
Hold3.a:
BDAS K 1 ACS_ExecuteAlways(998,0,216,7)
BDAS H 0 A_Refire("Hold3.b")
goto Fire2
Hold3.b:
BDAS H 1 ACS_ExecuteAlways(998,0,213,1)
BDAS H 0 A_JumpIfInventory("IsBot",1,"BotFire")
BDAS H 0 A_Refire("Hold3")
goto Fire2

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor SaltWaterWepC : SaltWaterWep //replaces SaltWaterWep
{
dropitem "SaltWaterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

//MMK//MMK//MMK//MMK//MMK//MMK
//MMK//MMK//MMK//MMK//MMK//MMK
actor MirrorBusterWepC : MirrorBusterWep //replaces MirrorBusterWep
{
dropitem "MirrorBusterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}


actor BalladeCrackerWepC : BalladeCrackerWep //replaces BalladeCrackerWep
{
dropitem "BalladeCrackerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor ScrewCrusherWepC : ScrewCrusherWep //replaces ScrewCrusherWep
{
dropitem "ScrewCrusherWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor SakugarneWepC : SakugarneWep //replaces SakugarneWep
{
dropitem "SakugarneWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

Fire:
SAKH A 0 A_JumpIfNoAmmo("NoAmmo")
SAKH A 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH A 0 A_JumpIfInventory("SakugarneActive",1,"AirReady")
SAKH A 0 A_CheckFloor("FireStart")
goto ReadyReal
FireStart:
SAKH A 0 A_GiveInventory("SakugarneActive",1)
SAKH A 0 A_Stop
SAKH A 0 A_PlaySoundEx("weapon/sakugarne","Weapon")
SAKH A 0 A_SpawnItemEx("SakugarneWarperStart")
SAKH A 0 A_SpawnItemEx("SakugarneWarper")
SAKH AB 4
SAKH C 0 A_Stop
SAKH C 0 A_ChangeVelocity(17,0,16,CVF_RELATIVE)
SAKH C 5
Goto Air
AirSpread:
SAKH CCC 0 A_SpawnItemEx("SakugarneCrush",0,0,-10,0,0,-32)
goto Air+4
Air:
SAKH C 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH C 0
SAKH C 0 A_JumpIfInventory("PowerSpread_ST",1,"AirSpread")
SAKH C 0 A_SpawnItemEx("SakugarneCrush",0,0,-10,0,0,-32)
SAKH C 0 ThrustThingZ(0,1,1,1)
SAKH C 1 A_WeaponReady
SAKH C 0 A_CheckFloor("Jump")
loop
AirReadySpread:
SAKH CCC 0 A_SpawnItemEx("SakugarneCrush",0,0,-10,0,0,-32)
goto AirReady+3
AirReady:
SAKH C 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH C 0 A_JumpIfInventory("PowerSpread_ST",1,"AirReadySpread")
SAKH C 0 A_SpawnItemEx("SakugarneCrush",0,0,-10,0,0,-32)
SAKH C 0
SAKH C 0 ThrustThingZ(0,1,1,1)
SAKH C 1
SAKH C 0 A_CheckFloor("Jump2")
loop
AirCancel:
SAKH B 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH B 0 A_SpawnItemEx("SakugarneCrush",0,0,-10,0,0,-32)
SAKH B 0
SAKH B 0 ThrustThingZ(0,1,1,1)
SAKH B 1
SAKH B 0 A_CheckFloor("Jump")
loop
Jump1Spread:
SAKH AAA 0 A_SpawnItemEx("SakugarneDriller",0,0,16)
goto Jump+2
Jump:
SAKH A 0 A_JumpIfInventory("PowerSpread_ST",1,"Jump1Spread")
SAKH A 0 A_SpawnItemEx("SakugarneDriller",0,0,16)
SAKH A 0 A_JumpIfNoAmmo("NoAmmo")
SAKH A 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH A 0 A_PlaySoundEx("weapon/sakugarne","Weapon")
SAKH A 0 A_Stop
SAKH A 4
SAKH A 0 A_Stop
SAKH B 4
SAKH B 0 A_Stop
SAKH A 0 A_ChangeVelocity(17,0,16,CVF_RELATIVE)
SAKH C 5
Goto Air
Jump2Spread:
SAKH AAA 0 A_SpawnItemEx("SakugarneDriller",0,0,16)
goto Jump2+2
Jump2:
SAKH A 0 A_JumpIfInventory("PowerSpread_ST",1,"Jump2Spread")
SAKH A 0 A_SpawnItemEx("SakugarneDriller",0,0,16)
SAKH A 0 A_JumpIfNoAmmo("NoAmmo")
SAKH A 0 A_JumpIfInventory("IsFlying",1,"NoAmmo")
SAKH A 0 A_PlaySoundEx("weapon/sakugarne","Weapon")
SAKH A 0 A_Stop
SAKH A 3
SAKH A 0 A_Stop
SAKH B 3
SAKH B 0 A_Stop
SAKH A 0 A_ChangeVelocity(20,0,21,CVF_RELATIVE)
SAKH C 5
Goto Air

AltfireC:
SAKH A 0 A_TakeInventory("SakugarneActive",1)
goto AltFireS

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor DawnBreakerWepC : DawnBreakerWep
{
dropitem "DawnBreakerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

HoldStart:
DBRH A 0 A_PlaySoundEx("weapon/coilstart","Weapon")
Goto Hold2
Hold2:
DBRH A 0 A_JumpIfInventory("WeaponCharge",23,"Hold3")
DBRH A 0 A_JumpIfInventory("WeaponCharge",22,"HoldStart2")
DBRH D 1 ACS_ExecuteAlways(998,0,237,5)
DBRH D 0 A_Refire("Hold2.a")
Goto Fire1
Hold2.a:
DBRH A 1 ACS_ExecuteAlways(998,0,236,1)
DBRH A 0 A_GiveInventory("WeaponCharge_RC",1)
DBRH A 0 A_Refire("Hold2")
Goto Fire1
HoldStart2:
DBRH A 0 ACS_ExecuteAlways(974,0)
DBRH A 0 A_GunFlash("Sound.BusterCharge",GFF_NOEXTCHANGE)
DBRH A 0 A_GiveInventory("WeaponCharge",1)
Goto Hold3
Hold3:
DBRH E 1 ACS_ExecuteAlways(998,0,238,6)
DBRH E 0 A_Refire("Hold3.a")
Goto Fire2
Hold3.a:
DBRH F 1 ACS_ExecuteAlways(998,0,239,7)
DBRH F 0 A_Refire("Hold3.b")
Goto Fire2
Hold3.b:
DBRH A 1 ACS_ExecuteAlways(998,0,236,1)
DBRH A 0 A_JumpIfInventory("IsBot",1,"BotFire")
DBRH A 0 A_Refire("Hold3")
Goto Fire2

Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

//CBM//CBM//CBM//CBM//CBM//CBM
//CBM//CBM//CBM//CBM//CBM//CBM
actor RollSweepWepC : RollSweepWep //replaces RollSweepWep
{
dropitem "RollSweepWepCDropped"
States
{
Spawn:
TNT1 A 0
stop

AltfireC:
XH0A A 0 A_TakeInventory("RollSweepFlag",99)
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor RisingFistWepC : RisingFistWep //replaces RisingFistWep
{
dropitem "RisingFistWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor WaveBusterWepC : WaveBusterWep //replaces WaveBusterWep
{
dropitem "WaveBusterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FragBomberWepC : FragBomberWep //replaces FragBomberWep
{
dropitem "FragBomberWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor TimeBenderWepC : TimeBenderWep //replaces TimeBenderWep
{
dropitem "TimeBenderWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor BoobeamBarrierWepC : BoobeamBarrierWep //replaces BoobeamBarrierWep
{
dropitem "BoobeamBarrierWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor TopTwistWepC : TopTwistWep //replaces TopTwistWep
{
dropitem "TopTwistWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DocScannerWepC : DocScannerWep //replaces DocScannerWep
{
dropitem "DocScannerWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FlashBulbWepC : FlashBulbWep //replaces FlashBulbWep
{
dropitem "FlashBulbWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DiveSonarWepC : DiveSonarWep //replaces DiveSonarWep
{
dropitem "DiveSonarWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor SkullSniperWepC : SkullSniperWep //replaces SkullSniperWep
{
dropitem "SkullSniperWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor GravitySphereWepC : GravitySphereWep //replaces GravitySphereWep
{
dropitem "GravitySphereWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DarkShieldWepC : DarkShieldWep //replaces DarkShieldWep
{
dropitem "DarkShieldWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
AltfireC:
DKC2 H 0 A_GiveInventory("StopShield",1)
DKC2 H 0 A_TakeInventory("ShieldCheck",1)
DKC2 H 0 A_TakeInventory("DarkShieldPowerSpeed",1)
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor CentaurArrowWepC : CentaurArrowWep //replaces CentaurArrowWep
{
dropitem "CentaurArrowWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor PlantTrapperWepC : PlantTrapperWep //replaces PlantTrapperWep
{
dropitem "PlantTrapperWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor DynamoTendrilWepC : DynamoTendrilWep //replaces DynamoTendrilWep
{
dropitem "DynamoTendrilWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor RainbowGalaxyWepC : RainbowGalaxyWep //replaces RainbowGalaxyWep
{
dropitem "RainbowGalaxyWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor FakeRepeaterWepC : FakeRepeaterWep //replaces FakeRepeaterWep
{
dropitem "FakeRepeaterWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

actor BusterRodGWepC : BusterRodGWep //replaces BusterRodGWep
{
dropitem "BusterRodGWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
ReadyC:Goto Ready+1
}
}

actor MegaWaterSWepC : MegaWaterSWep //replaces MegaWaterSWep
{
dropitem "MegaWaterSWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
AltfireC:
MWSH M 0 A_JumpIfInventory("ShieldCheck",1,"Finish")
goto AltFireS
ReadyC:Goto Ready+1
}
}

actor HyperStormHWepC : HyperStormHWep //replaces HyperStormHWep
{
dropitem "HyperStormHWepCDropped"
States
{
Spawn:
TNT1 A 0
stop
Altfire:Goto AltfireCBM
AltfireCore:Goto Super::Altfire
ReadyC:Goto Ready+1
}
}

