actor FlameShowerWep_NormalBar : NormalBar{args 225, 43}
Actor FlameShowerWep : BaseMM8BDMWep
{
//$Category MM8BDME-Weapons
//$Title Flame Shower
Weapon.AmmoUse 1
Weapon.AmmoGive 56
Weapon.SlotNumber 3
Obituary "$OB_FLAMESHOWER"
Tag "$TAG_FLAMESHOWER"
Inventory.Pickupmessage "$PU_FLAMESHOWER"
weapon.ammotype "FlameShowerAmmo"
inventory.icon "FSHWICON"
States
{
SpawnLoop:
FSHW E -1
loop
Ready:
FSHW F 0 ACS_NamedExecuteWithResult("core_weaponcolor",CLR_FLAMESHOWER)
FSHW F 1 A_WeaponReady
Goto Ready+1
ReadyC:
Goto Ready+1
Deselect:
FSHW F 0
Goto DeselectSwap
Select:
FSHW F 0
Goto SelectSwap
Fire:
FSHW F 0 A_JumpIfNoAmmo("NoAmmo")
BRBU E 0 A_JumpIfInventory("IsSpecialBot", 1 ,"StoveManCheck")
FSHW F 0 A_PlaySoundEx("weapon/flameshower","Weapon")
FSHW A 0 A_JumpIfInventory("IsBot", 1, "BotCheck")
RangedFire:
FSHW F 0 A_FireCustomMissile("FlameShower",frandom(-7,7),1,8,0)
FSHW GH 1
FSHW F 2
FSHW F 0 A_Refire
Goto Ready+1
NoAmmo:
FSHW F 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
BotCheck:
FSHW A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_radiuspull", 0, 300, 0)>0, "RangedFire")
FSHW A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_radiuspull", 0, 600, 0)>0, 2)
FSHW A 0 A_FireCustomMissile("FlameShower",0,1,0,10,0,20)
Goto RangedFire+1
FSHW A 0 A_FireCustomMissile("FlameShower",0,1,0,10,0,10)
Goto RangedFire+1
StoveManCheck:
TOPH A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_radiuspull", 0, 130, 0)>0, 1)
Goto Fire+2
BUTS B 1 A_GiveInventory("FlameMixerWep",1)
BUST B 1 A_SelectWeapon("FlameMixerWep")
Goto Fire+2
}
}

Actor FlameShowerAmmo : Ammo
{
	Inventory.Amount 1
	Inventory.MaxAmount 56
	+INVENTORY.IGNORESKILL
}

actor FlameShower : BasicProjectile
{
PROJECTILE
+BRIGHT
-NOGRAVITY
DamageType "FlameShower"
Obituary "$OB_FLAMESHOWER"
Speed 30
Damage (CallACS("vile_cbm_damage",10))
radius 10
height 10
scale 2.5
+BOUNCEONWALLS
+BOUNCEONCEILINGS
BounceCount 20
States
{
Spawn:
TNT1 A 2
Spawn2:
FSHW AB 2 
loop
Death:
TNT1 AA 1 A_CheckFloor("Floor")
stop
Floor:
TNT1 A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
TNT1 A 2 A_SpawnItemEx("FlameShowerFloor",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERTRANSLATION)
stop
}
}

actor FlameShowerFloor : BasicProjectile
{
PROJECTILE
+DONTBLAST
+BRIGHT
DamageType "FlameShowerFloor"
Obituary "$OB_FLAMESHOWER"
Scale 2.5
Speed 0
Radius 6
Height 14
Damage (CallACS("vile_cbm_damage",10))
reactiontime 18
+BOUNCEONWALLS
States
{
Spawn:
FSHW C 2
Spawn2:
FSHW CCDD 1 A_Countdown
loop
Death:
FSHW II 1
stop
}}