actor RumblingBangWep : BaseMM8BDMWep
{
//$Category RNC-Weapons
//$Title Rumbling Bang
Weapon.AmmoUse 7
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Tag "$TAG_RUMBLINGBANG"
Obituary "$OB_RUMBLINGBANG"
Inventory.Pickupmessage "$PU_RUMBLINGBANG"
weapon.ammotype "RumblingBangAmmo"
inventory.icon "RNCWP5"
States
{
SpawnLoop:
RNCW E -1
loop
Ready:
NCH2 H 0 ACS_ExecuteAlways(998,0,48)
NCH2 H 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
NCH2 H 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
NCH2 H 1 A_Raise
Loop
Fire:
AltFire:
NCH2 H 0 A_JumpIfNoAmmo("NoAmmo")
NCH2 H 0 A_PlaySoundEx("weapon/mbuster","Weapon")
NCH2 H 0 A_SpawnItemEx("RumblingBang",24,0,12,1,0,20,0)
NCH2 H 0 A_TakeInventory("RumblingBangAmmo",7,TIF_NOTAKEINFINITE)
NCH2 IJ 3
NCH2 H 29
NCH2 H 0 A_Refire
Goto Ready+1
NoAmmo:
NCH2 H 1 ACS_Execute(979,0)
Goto Ready+1
}
}
actor RumblingBangWepSH : RumblingBangWep replaces RumblingBangWep
{+INVENTORY.RESTRICTABSOLUTELY Inventory.RestrictedTo megamans}

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

actor RumblingBang
{
PROJECTILE
Radius 6
Height 6
Gravity 2.0
Obituary "$OB_RUMBLINGBANG"
DamageType "RumblingBang"
scale 2.5
speed 10
damage (25)
+HEXENBOUNCE -BOUNCEONFLOORS
-NOGRAVITY
+DONTSPLASH

speed 0
States
{
Spawn:
RNCP M 1
Loop
Death:
TNT1 A 0
TNT1 A 0 A_JumpIf(z-ceilingz==0-6,"Ceiling")
TNT1 A 0 A_Explode(83,270,0)
TNT1 A 0 A_PlaySoundEx("misc/metdie","Weapon")
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,0)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,45)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,90)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,135)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,180)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,225)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,270)
TNT1 A 0 A_SpawnItemEx("BangTrailSpawner",25,0,0,0,0,0,315)
TNT1 AAAA 3 A_PlaySoundEx("misc/metdie","Weapon")
stop
Ceiling:
TNT1 A 0
TNT1 A 0 A_SpawnItemEX("RumblingBang",0,0,-8,0,0,0)
stop
XDeath:
TNT1 A 0
TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
MMFX BCD 3
stop
}
}

actor BangTrailSpawner
{
+NOINTERACTION
+FLOORHUGGER
-NOGRAVITY
gravity 900.0
speed 0
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_Recoil(-31)
TNT1 AAAA 3 A_SpawnItemEX("BangTrailFX",0,0,8,0,0,24)
stop
}
}

actor BangTrailFX
{
scale 2.5
+NOINTERACTION
+CLIENTSIDEONLY
States
{
Spawn:
MMFX BBCCDD 1
stop
}
}