Actor RecursiveBomberWep_V_NormalBar : NormalBar{Args 196, 117}
Actor RecursiveBomberWep_V : BaseMM8BDMWep
{
Weapon.AmmoUse 5
Weapon.AmmoGive 30
Weapon.SlotNumber 5
Inventory.Pickupmessage "$PU_RECURSIVEBOMBER"
Obituary "$OB_RECURSIVEBOMBER"
Tag "$TAG_RECURSIVEBOMBER"
weapon.ammotype "RecursiveBomberAmmo_V"
inventory.icon "RBOMICON"
States
{
SpawnLoop:
RBOM Z -1
loop
ReadyC: Goto Ready+1
Ready:
RBOM O 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_RECURSIVEBOMBER)
RBOM O 0 A_JumpIfNoAmmo("ReadyNoAmmo")
RBOM O 1 A_WeaponReady
Goto Ready+2
ReadyNoAmmo:
RBOM H 1 A_WeaponReady
RBOM H 0 A_JumpIfNoAmmo("ReadyNoAmmo")
Goto Ready+1
Deselect:
RBOM O 0
goto DeselectSwap
Select:
RBOM O 0
goto SelectSwap
Fire:
RBOM O 0 A_JumpIfNoAmmo("NoAmmo")
RBOM O 0 A_PlaySoundEx("weapon/trebleboost","Weapon")
RBOM O 0 A_FireCustomMissile("RecursiveBomber_V",0,1,8,0)
RBOM IJKLMN 2
RBOM N 1 Offset(0,42)
RBOM N 1 Offset(0,42)
RBOM N 1 Offset(0,42)
RBOM O 0 A_JumpIfNoAmmo("FireAltEnd")
RBOM O 17 A_WeaponReady(14)
Goto Ready+1
FireAltEnd:
RBOM H 17 A_WeaponReady(14)
Goto ReadyNoAmmo
NoAmmo:
RBOM H 1 ACS_NamedExecuteAlways("core_noammo", 0)
Goto ReadyNoAmmo
}
}

Actor RecursiveBomberAmmo_V : Ammo
{
	Inventory.Amount 1
	Inventory.MaxAmount 30
	+INVENTORY.IGNORESKILL
}

actor RecursiveBomber_V : BasicProjectile
{
PROJECTILE
radius 16
height 16
speed 40
damage (CallACS("vile_cbm_damage",30))
+DONTSPLASH
gravity 0.7
Obituary "$OB_RECURSIVEBOMBER"
Damagetype "RecursiveBomber_V"
states
{
Spawn:
TNT1 AA 0
goto Spawn_L
Spawn_L:
RBOM AB 2 A_SpawnItemEx("RecursiveBomberNyoomFX_V",-8,0,0,0,0,0,0,1)
loop
Death:
TNT1 A 0 A_ChangeFlag("NOGRAVITY", 1)
TNT1 A 0 A_PlaySoundEx("weapon/coilexplode", "Weapon")
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHit_V")
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,8,0,0,45,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,8,0,0,135,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,8,0,0,225,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,8,0,0,315,SXF_TRANSFERPOINTERS)
TNT1 A 8
TNT1 A 0 A_PlaySoundEx("weapon/coilexplode", "Weapon")
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHit_V")
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,0,8,0,0,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,0,0,8,0,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,0,-8,0,0,SXF_TRANSFERPOINTERS)
TNT1 A 0 A_SpawnItemEx("RecursiveBomberHitFX_V",0,0,0,0,0,-8,0,SXF_TRANSFERPOINTERS)
TNT1 A 1 A_Jump(256,"Death2")
goto Death2
Death2:
TNT1 A 0
stop
XDeath:
TNT1 A 1 A_Jump(256,"Death")
loop
}
}

Actor RecursiveBomberNyoomFX_V : BasicGraphicEffect
{
RenderStyle "Add"
ReactionTime 6
var int user_TranslateWhiteColors;
var int user_TranslateBlackColors;
States
{
SpawnFrame:
RBOM AB 2 A_FadeOut(0.08) RBOM AB 0 A_SetScale(ScaleX - 0.4, ScaleY - 0.4)
RBOM AB 0 A_CountDown
loop
}
}

actor RecursiveBomberHit_V : BasicExplosion
{
Obituary "$OB_RECURSIVEBOMBER"
Damagetype "RecursiveBomber_V"
states
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(CallACS("vile_cbm_damage",10),40,0,0,40)
stop
}
}

actor RecursiveBomberHitFX_V : BasicGraphicEffect
{
States
{
SpawnFrame:
TNT1 AA 0
RBOM CDEFG 2
stop
}
}
