actor BalladeCrackerBoss : MegaBuster
{
Weapon.AmmoUse 5
Weapon.AmmoGive 30
Weapon.SlotNumber 1
Obituary "%o was blown up by %k's Ballade Cracker."
Inventory.Pickupmessage "Power up! Ballade Cracker!"
weapon.ammotype "BalladeCrackerBalladeAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
States
{
Spawn:
TNT1 A 0
stop
Ready:
BLLD A 0 ACS_ExecuteAlways(998,0,53)
BLLD A 0 A_JumpIfInventory("BalladeCrackerBalladeAmmo",3,"Ready2")
BLLD A 5 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_GiveInventory("BalladeCrackerBalladeAmmo",1)
Goto Ready+1
Ready2:
BLLD A 0 A_JumpIfInventory("BalladeCrackerBalladeAmmo",5,"Ready3")
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOPRIMARY|WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOPRIMARY|WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOPRIMARY|WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOPRIMARY|WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOPRIMARY|WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
BLLD A 0 A_GiveInventory("BalladeCrackerBalladeAmmo",1)
loop
Ready3:
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,2)
BLLD A 0 A_WeaponReady(WRF_NOSWITCH)
BLLD A 1 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
BLLD A 0 A_GiveInventory("BalladeCrackerBalladeAmmo",1)
loop
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
BLLD A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
BLLD A 1 A_Raise
Loop
Fire:
BLLD A 0 A_JumpIfNoAmmo("NoAmmo")
BLLD A 0 A_PlaySoundEx("weapon/crackerthrow","Weapon")
BLLD A 0 A_FireCustomMissile("BalladeCrackerCust",0,1,8,0)
BLLD BCDEFG 2
BLLD HI 2
BLLD A 13
BLLD A 0 A_Refire
Goto Ready+1
AltFire:
BLLD A 1 A_JumpIfInventory("BalladeCrackerBalladeAmmo",3,"BalladeMine")
goto Ready+1
BalladeMine:
BLLD A 0 A_JumpIfInventory("BalladeMineCounter",3,"NoAmmo")
BLLD A 0 A_TakeInventory("BalladeCrackerBalladeAmmo",3)
BLLD A 0 A_GiveInventory("BalladeJumping",1)
BLLD A 0 A_GiveInventory("BalladeMineCounter",1)
BLLD IHFG 2
BLLD A 0 A_SpawnItemEx("BalladeMineCust",0,0,16)
BLLD A 0 //ThrustThingZ(0,30,0,0)
BLLD A 0 A_Recoil(-15)
BLLD FHI 2
goto Ready+1
NoAmmo:
BLLD A 0
Goto Ready+1
}
}

actor BalladeCrackerBalladeAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 30
}


actor BalladeCrackerCust : BalladeCracker
{
damage (15)
States
{
Spawn:
BALA ABCD 3
loop
Death:
BALA A 0 A_Stop
BALA A 0 A_PlaySoundEx("weapon/crackerexplode", "Weapon")
BALA A 0 A_Explode(15, 128, 0)
NAPA EFGHIJKLMNOPQRS 1
stop
}
}

actor BalladeMineCust : BalladeMine
{
Obituary "%o triggered %k's Ballade Mine."
reactiontime 10
-NOGRAVITY
+NOEXPLODEFLOOR
+DONTSPLASH
damagetype "Ballade"
States
{
Spawn:
BALA A 0 
BALA A 0 A_PlaySoundEx("weapon/crackermine", "Weapon")
BALA ABCD 3
BALA A 0 A_CountDown
Goto Spawn+3
Death:
BALA A 0 A_Stop
BALA A 0 A_PlaySoundEx("weapon/crackerexplode", "Weapon")
BALA A 0 A_TakeFromTarget("BalladeMineCounter",1)
NAPA EFGHIJKLMNOPQRS 1
stop
}
}

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

actor BalladeMineCounter : Inventory
{
inventory.amount 1
inventory.maxamount 3
}


