actor DiveMissileBoss : MegaBuster
{
Weapon.AmmoUse 4
Weapon.AmmoGive 28
Weapon.SlotNumber 2
Obituary "%o was intercepted by %k's Dive Missile."
Inventory.Pickupmessage "Power up! Dive Missile!"
weapon.ammotype "DiveMissileClassAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
//inventory.icon "DIVESI"
Scale 2.0
States
{
Spawn:
WEA2 S 1
loop
Ready:
DIVA A 0 ACS_ExecuteAlways(998,0,38)
DIVA A 0 A_JumpIfInventory("DiveMissileClassAmmo",4,"Ready2")
DIVA A 6 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
DIVA A 0 A_GiveInventory("DiveMissileClassAmmo",1)
Goto Ready+1
Ready2:
DIVA A 0 A_JumpIfInventory("DiveMissileClassAmmo",14,"Ready3")
DIVA A 6 A_WeaponReady(WRF_NOSECONDARY|WRF_NOSWITCH)
DIVA A 0 A_GiveInventory("DiveMissileClassAmmo",1)
loop
Ready3:
DIVA A 6 A_WeaponReady(WRF_NOSWITCH)
DIVA A 0 A_GiveInventory("DiveMissileClassAmmo",1)
loop
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
DIVA A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
DIVA A 1 A_Raise
Loop
Fire:
DIVA A 0 A_JumpIfNoAmmo("NoAmmo")
DIVA A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
DIVA A 0 A_FireCustomMissile("DiveMissileClass",0,1,8,0)
DIVA BCDCB 3
DIVA A 10
DIVA A 0 A_Refire
Goto Ready+1
AltFire:
DIVA A 0 A_JumpIfInventory("DiveMissileClassAmmo",14,"Mines")
/*DIVA A 3
DIVA A 0 A_Refire*/
Goto Ready+1
Mines:
DIVA BE 3
DIVA A 0 A_JumpIf(ACS_ExecuteWithResult(143,0)==1,"RedMines")
DIVA A 0 A_JumpIf(ACS_ExecuteWithResult(143,0)==2,"OrangeMines")
DIVA A 0 A_JumpIf(ACS_ExecuteWithResult(143,0)==3,"PurpleMines")
DIVA A 0 A_FireCustomMissile("DiveMineClass",0,0,0,0)
DIVA A 0 A_FireCustomMissile("DiveMineClass",-15,0,55,0)
DIVA A 0 A_FireCustomMissile("DiveMineClass",15,0,-55,0)
Goto MineEnd
RedMines:
DIVA A 0 A_FireCustomMissile("DiveMineClassRed",0,0,0,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassRed",-15,0,55,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassRed",15,0,-55,0)
Goto MineEnd
OrangeMines:
DIVA A 0 A_FireCustomMissile("DiveMineClassOrange",0,0,0,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassOrange",-15,0,55,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassOrange",15,0,-55,0)
Goto MineEnd
PurpleMines:
DIVA A 0 A_FireCustomMissile("DiveMineClassPurple",0,0,0,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassPurple",-15,0,55,0)
DIVA A 0 A_FireCustomMissile("DiveMineClassPurple",15,0,-55,0)
Goto MineEnd
MineEnd:
DIVA A 0 A_TakeInventory("DiveMissileClassAmmo",7)
DIVA F 5
DIVA EB 3
DIVA A 20
DIVA A 0 A_Refire
Goto Ready+1
NoAmmo:
DIVA D 0
//DIVA D 1 ACS_Execute(979,0)
Goto Ready+1
}
}

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

actor DiveMineClass
{
PROJECTILE
+SHOOTABLE
+NOBLOOD
-NOBLOCKMAP
+RIPPER
+DOOMBOUNCE
+FLOATBOB
+BOUNCEONACTORS
+NOTARGETSWITCH
-SOLID
Obituary "%o triggered %k's Dive Mines."
Health 20
Radius 18
Height 20
scale 2.5
mass 9999999999999999
damage (0)
reactiontime 16
//damagetype "Dive"
damagetype "Mine"
speed 30
States
{
Spawn:
DVMN A 7
DVMN A 0 A_ChangeFlag("BOUNCEONACTORS",0)
DVMN A 0 A_ChangeFlag("RIPPER",0)
DVMN A 0 A_Stop
Floating:
DVMN AAAAA 5 A_JumpIfInTargetInventory("CutterFlag",999,"Death")
DVMN B 1 A_JumpIfInTargetInventory("CutterFlag",999,"Death")
DVMN A 0 A_CountDown
loop
Death:
DVMN B 0 A_Die
DVMN B 1 A_Stop
DVMN B 0 A_PlaySoundEx("weapon/drillexplode", "Weapon")
DVMN B 0 A_Explode(20, 128, 0)
TNT1 A 2 A_SpawnItem("DrillExplode")
stop
}
}

actor DiveMineClassRed : DiveMineClass
{
translation "192:192=16:16", "198:198=178:178"
}

actor DiveMineClassOrange : DiveMineClass
{
translation "192:192=249:249", "198:198=218:218"
}

actor DiveMineClassPurple : DiveMineClass
{
translation "192:192=231:231", "198:198=254:254"
}

actor DiveMissileClass : DiveMissile
{
damage (10)
speed 20
health 1
+NOBLOOD
States
{
Spawn:
DIVC AAAAAAAAAA 1 A_MStaffTrack
DIVC AAAAAAAAAA 1 A_MStaffTrack
DIVC AAAAAAAAAA 1 A_MStaffTrack
DIVC AAAAAAAAAA 1 A_MStaffTrack
DIVC AAAAAAAAAA 1 A_MStaffTrack
DIVC A 0 A_ChangeFlag("NOBLOCKMAP",0)
DIVC A 0 A_ChangeFlag("SHOOTABLE",1)
loop
}
}