actor JetBusterC : MegaBuster 
{
Weapon.AmmoUse 0
Weapon.AmmoGive 28
Weapon.SlotNumber 1
Obituary "%o was bombed by %k's Mega Buster."
weapon.ammotype "JetFuel"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
Scale 2.0
States
{
Spawn:
TNT1 A 0
stop
Ready:
JETB A 0 ACS_ExecuteAlways(998,0,77)
/*JETB A 1 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
goto Ready2*/
Ready2:
/*JETB A 0 A_JumpIfInventory("JetFuel", 1, "Ready3")
JETB A 1 A_WeaponReady(WRF_NOSECONDARY)*/
JETB A 1 A_WeaponReady
JETB A 0 A_GiveInventory("JetFuel",1)
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
Goto Ready2
/*Ready3:
JETB A 1 A_WeaponReady
JETB A 0 A_GiveInventory("JetFuel",1)
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
loop*/
Deselect:
TNT1 A 0 SetPlayerProperty(0,0,3)
JETB A 0 A_TakeInventory("JetTrigger",999)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
JETB A 1 A_Lower
Loop
Select:
JETB A 0 A_TakeInventory("JetTrigger",999)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
JETB A 1 A_Raise
Loop
Fire:
JETB A 0 SetPlayerProperty(0, 0, 3)
JETB A 0 A_TakeInventory("JetTrigger",999)
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 0 A_JumpIfInventory("JetTrigger",1,"No")
JETB A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
JETB A 0 A_FireCustomMissile("MegaShot",0,0,8,0)
JETB BC 3
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB B 2
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB B 0 A_Refire
goto Ready2+1
Altfire:
JETB A 0 A_GiveInventory("JetTrigger",1)
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 1 A_JumpIfInventory("JetFuel", 1, "Fly")
JETB A 0 ACS_ExecuteAlways(999,0)
JETB A 0 SetPlayerProperty(0, 0, 3)
JETB A 0 A_TakeInventory("JetTrigger",999)
goto Ready2
Fly:
JETB A 0 SetPlayerProperty(0, 1, 3)
JETB A 2 A_TakeInventory("JetFuel",1)
JETB A 0 A_SpawnItemEx("JetWings2",-3,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 2
JETB A 0 A_SpawnItemEx("JetWings3",-3,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 0 A_ReFire
JETB A 1 A_WeaponReady
JETB A 0 A_SpawnItemEx("JetWings2",-3,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 0 A_TakeInventory("JetTrigger",999)
JETB A 0 SetPlayerProperty(0, 0, 3)
Goto Fall
Fall:
JETB A 1 A_JumpIf(momz==0, "Ready2")
JETB A 0 A_SpawnItemEx("JetWings1",-8,0,28,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
JETB A 1 A_WeaponReady
loop
No:
JETB A 0 SetPlayerProperty(0,0,3)
JETB A 1 A_TakeInventory("JetTrigger",999)
goto Ready2+1
}
}

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

actor JetTrigger : Ammo
{
inventory.amount 1
inventory.maxamount 1
}

actor JetWings1
{
-SOLID
+NOGRAVITY
+NOBLOCKMAP
+FIXMAPTHINGPOS
Height 6
Radius 6
+MISSILE
damage 0
scale 2.5
+CLIENTSIDEONLY
//+NOINTERACTION
States
{
Spawn:
TNT1 A 0
MMJT A 2
stop
}
}

actor JetWings2
{
-SOLID
+NOGRAVITY
+NOBLOCKMAP
+FIXMAPTHINGPOS
Height 6
Radius 6
+MISSILE
damage 0
scale 2.5
+CLIENTSIDEONLY
//+NOINTERACTION
States
{
Spawn:
TNT1 A 0
MMJT B 2
stop
}
}

actor JetWings3
{
-SOLID
+NOGRAVITY
+NOBLOCKMAP
+FIXMAPTHINGPOS
Height 6
Radius 6
+MISSILE
damage 0
scale 2.5
+CLIENTSIDEONLY
//+NOINTERACTION
States
{
Spawn:
TNT1 A 0
MMJT C 2
stop
}
}