52 lines
1.3 KiB
Ucode
52 lines
1.3 KiB
Ucode
//=============================================================================
|
|
// 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"
|
|
}
|