/**
 * Attempt to make Husk Gun actually usefull.
 */
 
class NiceHuskGun extends ScrnHuskGun;
/*
// both fire modes share the same ammo pool, so don't give ammo twice
function GiveAmmo(int m, WeaponPickup WP, bool bJustSpawned)
{
    local bool bJustSpawnedAmmo;
    local int addAmount, InitialAmount;
    local float AddMultiplier;
    UpdateMagCapacity(Instigator.PlayerReplicationInfo);
    if ( FireMode[m] != none && FireMode[m].AmmoClass != none )
    {
       Ammo[m] = Ammunition(Instigator.FindInventoryType(FireMode[m].AmmoClass));
       bJustSpawnedAmmo = false;

       if ( bNoAmmoInstances )
       {
           if ( (FireMode[m].AmmoClass == none) || ((m != 0) && (FireMode[m].AmmoClass == FireMode[0].AmmoClass)) )
               return;

           InitialAmount = FireMode[m].AmmoClass.Default.InitialAmount;

           if(WP!=none && WP.bThrown==true)
               InitialAmount = WP.AmmoAmount[m];
           else
           {
               // Other change - if not thrown, give the gun a full clip
               MagAmmoRemaining = MagCapacity;
           }

           if ( Ammo[m] != none )
           {
               addamount = InitialAmount + Ammo[m].AmmoAmount;
               Ammo[m].Destroy();
           }
           else
               addAmount = InitialAmount;

           AddAmmo(addAmount,m);
       }
       else
       {
           if ( (Ammo[m] == none) && (FireMode[m].AmmoClass != none) )
           {
               Ammo[m] = Spawn(FireMode[m].AmmoClass, Instigator);
               Instigator.AddInventory(Ammo[m]);
               bJustSpawnedAmmo = true;
           }
           else if ( (m == 0) || (FireMode[m].AmmoClass != FireMode[0].AmmoClass) )
               bJustSpawnedAmmo = ( bJustSpawned || ((WP != none) && !WP.bWeaponStay) );

               // and here is the modification for instanced ammo actors

           if(WP!=none && WP.bThrown==true)
           {
               addAmount = WP.AmmoAmount[m];
           }
           else if ( bJustSpawnedAmmo )
           {
               if ( KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo) != none && KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo).ClientVeteranSkill != none )
               {
                   AddMultiplier = KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo).ClientVeteranSkill.static.AddExtraAmmoFor(KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo), FireMode[m].AmmoClass);
               }
               else
               {
                   AddMultiplier = 1.0;
               }

               if (default.MagCapacity == 0)
                   addAmount = 0;  // prevent division by zero.
               else
                   addAmount = Ammo[m].InitialAmount * (float(MagCapacity) / float(default.MagCapacity)) * AddMultiplier;
           }

           //removed: WP.Class == class'BoomstickPickup' -- (c) PooSH
           if ( WP != none  && m > 0 )
           {
               return;
           }

           Ammo[m].AddAmmo(addAmount);
           Ammo[m].GotoState('');
       }
    }
}
*/
/*
simulated function bool ConsumeAmmo( int Mode, float Load, optional bool bAmountNeededIsMax )
{
  return super.ConsumeAmmo(0, Load, bAmountNeededIsMax);
}
simulated function int AmmoAmount(int mode)
{
    return super.AmmoAmount(0);
}
*/
/*
//v2.60: Reload speed bonus affects charge rate
simulated function bool StartFire(int Mode)
{
    local ScrnHuskGunFire f;
    local KFPlayerReplicationInfo KFPRI;
    if ( super.StartFire(Mode) ) {
       f = ScrnHuskGunFire(FireMode[Mode]);
       if ( Mode == 0 && f != none ) {
           f.MaxChargeTime = f.default.MaxChargeTime;
           KFPRI = KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo);
           if ( KFPRI != none && KFPRI.ClientVeteranSkill != none)
               f.MaxChargeTime /= KFPRI.ClientVeteranSkill.static.GetReloadSpeedModifier(KFPRI, self);
       }
       return true;
    }
    return false;
}
*/
defaultproperties
{
    Weight=8.000000
    FireModeClass(0)=class'NiceHuskGunFire'
    FireModeClass(1)=class'NiceHuskGunAltFire'
    PickupClass=class'NiceHuskGunPickup'
    ItemName="Husk Gun / Napalm Launcher NW"
}
