class FreezerFire extends KFShotgunFire; simulated function PostBeginPlay() { super.PostBeginPlay(); Load = ProjPerFire; // don't use AmmoPerFire here } simulated function bool AllowFire() { if(KFWeapon(Weapon).bIsReloading) return false; if(KFPawn(Instigator).SecondaryItem!=none) return false; if(KFPawn(Instigator).bThrowingNade) return false; if(KFWeapon(Weapon).MagAmmoRemaining < AmmoPerFire) { if( Level.TimeSeconds - LastClickTime>FireRate ) { LastClickTime = Level.TimeSeconds; } if( AIController(Instigator.Controller)!=None ) KFWeapon(Weapon).ReloadMeNow(); return false; } return super(WeaponFire).AllowFire(); } event ModeDoFire() { super.ModeDoFire(); Load = ProjPerFire; // don't use AmmoPerFire here } defaultproperties { RecoilRate=0.130000 maxVerticalRecoilAngle=200 maxHorizontalRecoilAngle=75 FireAimedAnim="Fire_Iron" FireSoundRef="HTec_A.Fire1mono" StereoFireSoundRef="HTec_A.Fire1" NoAmmoSoundRef="KF_NailShotgun.Fire.KF_NailShotgun_Dryfire" ProjPerFire=1 ProjSpawnOffset=(X=18.000000,Z=-8.000000) TransientSoundVolume=1.000000 FireLoopAnim="Fire" FireAnimRate=1.200000 TweenTime=0.001500 FireRate=0.150000 AmmoClass=Class'ScrnHTec.FreezerDartAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 ShakeOffsetMag=(X=6.000000,Y=3.000000,Z=7.500000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=1.250000 ProjectileClass=Class'ScrnHTec.FreezerDart' BotRefireRate=0.990000 FlashEmitterClass=Class'ScrnHTec.IceDartMuzzleFlash' aimerror=42.000000 Spread=0.008000 }