//=============================================================================
// FlameChucker
//=============================================================================
class NiceFlameThrower extends ScrnFlameThrower;
var bool bFiring;
simulated function bool StartFire(int Mode)
{
  if(MagAmmoRemaining >= 1 && FireMode[Mode].AllowFire())
    bFiring = true;
  return Super.StartFire(Mode);
}
simulated event StopFire(int Mode)
{
  if(MagAmmoRemaining < 1 || Mode != 0){
    bFiring = false;
    Super.StopFire(0);
  }
}
simulated function bool PutDown()
{
    if ( bFiring && Instigator != none && Instigator.PendingWeapon != none && AmmoAmount(0) > 0 ) {
       Instigator.PendingWeapon = none;
       return false;
    }
    return Super.PutDown();
}
function bool AllowReload()
{
    if ( bFiring )
       return false;
       return Super.AllowReload();
}
simulated function WeaponTick(float dt)
{
  if(MagAmmoRemaining < 1 && bFiring)
    StartFire(0);
  Super.WeaponTick(dt);
//  if(FireMode[0].bIsFiring)
//    Skins[4] = Shader 'KillingFloorWeapons.FlameThrower.FTFireShader';
//  else
//    Skins[4] = default.Skins[4];
}
defaultproperties
{
    MagCapacity=30
    Weight=8.000000
    bModeZeroCanDryFire=False
    FireModeClass(0)=class'NiceFlameBurstFire'
    PickupClass=class'NiceFlameThrowerPickup'
    ItemName="FlameThrower NW"
}
