actor DrillBombWep : MegaBuster 10050
{
Weapon.AmmoUse 4
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Obituary "%o was detonated by %k's Drill Bomb."
Inventory.Pickupmessage "Power up! Drill Bomb"
weapon.ammotype "DrillBombAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "DRILLSI"
Scale 2.0
States
{
Spawn:
WEAP V 1
loop
Ready:
DRIL D 0 ACS_ExecuteAlways(998,0,19)
DRIL D 1 A_WeaponReady
Goto Ready+1
Deselect:
DRIL D 0 A_GiveInventory("DrillFlag",2)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
DRIL D 1 A_Lower
Loop
Select:
DRIL D 0 A_TakeInventory("DrillFlag",99)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
DRIL D 1 A_Raise
Loop
Fire:
DRIL D 0 A_JumpIfNoAmmo("NoAmmo")
DRIL D 0 A_PlaySoundEx("weapon/mbuster","Weapon")
DRIL D 0 A_FireCustomMissile("DrillBomb",0,1,8,0)
DRIL EFD 6
DRIL D 0 ACS_ExecuteAlways(994,0)
Goto Hold
Hold:
DRIL D 1
DRIL D 0 A_Refire
DRIL D 10 A_GiveInventory("DrillFlag",2)
DRIL D 0 A_TakeInventory("DrillFlag",999)
Goto Ready+1
NoAmmo:
BUST E 0 ACS_Execute(979,0)
Goto Hold
}
}

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

actor DrillBombAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}

actor DrillBomb 
{
PROJECTILE
Speed 25
Damage 0
damagetype "Drill"
Scale 2.5
Height 6
Radius 6
States
{
Spawn:
DRIL A 0
DRIL A 0 A_PlaySoundEx("weapon/drillfly","Weapon")
DRIL A 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL A 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL A 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL B 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL B 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL B 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL C 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL C 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
DRIL C 1 A_JumpIfInTargetInventory("DrillFlag",2,"Death")
loop
Death:
DRIL A 0 A_Stop
DRIL A 0 A_PlaySoundEx("weapon/drillexplode", "Weapon")
DRIL A 0 A_Explode(40, 128, 0)
DRIL A 0 A_TakeFromTarget("DrillFlag",99)
TNT1 A 2 A_SpawnItem("DrillExplode")
stop
}
}

actor DrillExplode
{
Speed 0
Damage 0
Scale 2.5
Height 0
Radius 0
+NOGRAVITY
-SOLID
States
{
Spawn:
NAPA EFGHIJKL 2
NAPA MNOPQRS 2
stop
}
}