Revert weapon conversion

This patch reverts first step of global weapon conversion
that would have halted the release of the next version for too long.
This commit is contained in:
Anton Tarasenko 2020-04-17 23:06:41 +07:00
commit 12d95e387e
757 changed files with 10788 additions and 4046 deletions

View file

@ -0,0 +1,34 @@
class NiceCrossbow extends NiceScopedWeapon;
simulated function PostBeginPlay(){
local AutoReloadAnimDesc reloadDesc;
autoReloadsDescriptions.Length = 0;
reloadDesc.canInterruptFrame = 0.349;
reloadDesc.trashStartFrame = 0.857;
reloadDesc.resumeFrame = 0.349;
reloadDesc.speedFrame = 0.143;
reloadDesc.animName = 'Fire';
autoReloadsDescriptions[0] = reloadDesc;
reloadDesc.animName = 'Fire_Iron';
autoReloadsDescriptions[1] = reloadDesc;
super.PostBeginPlay();
}
// Adjust a single FOV based on the current aspect ratio. Adjust FOV is the default NON-aspect ratio adjusted FOV to adjust
simulated function float CalcAspectRatioAdjustedFOV(float AdjustFOV){
local KFPlayerController KFPC;
local float ResX, ResY;
local float AspectRatio;
KFPC = KFPlayerController(Level.GetLocalPlayerController());
if(KFPC == none) return AdjustFOV;
ResX = float(GUIController(KFPC.Player.GUIController).ResX);
ResY = float(GUIController(KFPC.Player.GUIController).ResY);
AspectRatio = ResX / ResY;
if(KFPC.bUseTrueWideScreenFOV && AspectRatio >= 1.60) return CalcFOVForAspectRatio(AdjustFOV);
else return AdjustFOV;
}
simulated event Destroyed(){
PreTravelCleanUp();
Super.Destroyed();
}
defaultproperties
{ lenseMaterialID=2 scopePortalFOVHigh=22.000000 scopePortalFOV=12.000000 ZoomMatRef="KillingFloorWeapons.Xbow.CommandoCrossFinalBlend" ScriptedTextureFallbackRef="KF_Weapons_Trip_T.CBLens_cmb" CrosshairTexRef="KillingFloorWeapons.CommandoCross" reloadType=RTYPE_AUTO bHasScope=True ZoomedDisplayFOVHigh=35.000000 ForceZoomOutOnFireTime=0.400000 MagCapacity=1 ReloadRate=0.010000 ReloadAnimRate=1.000000 WeaponReloadAnim="Reload_Crossbow" Weight=9.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=65.000000 TraderInfoTexture=Texture'KillingFloorHUD.Trader_Weapon_Images.Trader_CrossBow' bIsTier2Weapon=True MeshRef="KF_Weapons_Trip.Crossbow_Trip" SkinRefs(0)="KF_Weapons_Trip_T.Rifles.crossbow_cmb" SelectSoundRef="KF_XbowSnd.Xbow_Select" HudImageRef="KillingFloorHUD.WeaponSelect.Crossbow_unselected" SelectedHudImageRef="KillingFloorHUD.WeaponSelect.Crossbow" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=60.000000 FireModeClass(0)=Class'NicePack.NiceCrossbowFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.650000 CurrentRating=0.650000 Description="Recreational hunting weapon, equipped with powerful scope and firing trigger. Comes with special ammunition, designed to tear through low-resistance materials." DisplayFOV=65.000000 Priority=140 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=1 PickupClass=Class'NicePack.NiceCrossbowPickup' PlayerViewOffset=(X=15.000000,Y=16.000000,Z=-12.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceCrossbowAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="Compound Crossbow" LightType=LT_None LightBrightness=0.000000 LightRadius=0.000000
}

View file

@ -0,0 +1,5 @@
class NiceCrossbowAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=KillingFloorHUD.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceCrossbowPickup' AmmoPickupAmount=4 MaxAmmo=40 PickupClass=Class'NicePack.NiceCrossbowAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="An arrow"
}

View file

@ -0,0 +1,4 @@
class NiceCrossbowAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=4 InventoryType=Class'NicePack.NiceCrossbowAmmo' PickupMessage="Bolts" StaticMesh=StaticMesh'KillingFloorStatics.XbowAmmo' CollisionRadius=25.000000
}

View file

@ -0,0 +1,4 @@
class NiceCrossbowAttachment extends NiceAttachment;
defaultproperties
{ bDoFiringEffects=False MovementAnims(0)="JogF_Crossbow" MovementAnims(1)="JogB_Crossbow" MovementAnims(2)="JogL_Crossbow" MovementAnims(3)="JogR_Crossbow" TurnLeftAnim="TurnL_Crossbow" TurnRightAnim="TurnR_Crossbow" CrouchAnims(0)="CHwalkF_Crossbow" CrouchAnims(1)="CHwalkB_Crossbow" CrouchAnims(2)="CHwalkL_Crossbow" CrouchAnims(3)="CHwalkR_Crossbow" WalkAnims(0)="WalkF_Crossbow" WalkAnims(1)="WalkB_Crossbow" WalkAnims(2)="WalkL_Crossbow" WalkAnims(3)="WalkR_Crossbow" CrouchTurnRightAnim="CH_TurnR_Crossbow" CrouchTurnLeftAnim="CH_TurnL_Crossbow" IdleCrouchAnim="CHIdle_Crossbow" IdleWeaponAnim="Idle_Crossbow" IdleRestAnim="Idle_Crossbow" IdleChatAnim="Idle_Crossbow" IdleHeavyAnim="Idle_Crossbow" IdleRifleAnim="Idle_Crossbow" FireAnims(0)="Fire_Crossbow" FireAnims(1)="Fire_Crossbow" FireAnims(2)="Fire_Crossbow" FireAnims(3)="Fire_Crossbow" FireAltAnims(0)="Fire_Crossbow" FireAltAnims(1)="Fire_Crossbow" FireAltAnims(2)="Fire_Crossbow" FireAltAnims(3)="Fire_Crossbow" FireCrouchAnims(0)="CHFire_Crossbow" FireCrouchAnims(1)="CHFire_Crossbow" FireCrouchAnims(2)="CHFire_Crossbow" FireCrouchAnims(3)="CHFire_Crossbow" FireCrouchAltAnims(0)="CHFire_Crossbow" FireCrouchAltAnims(1)="CHFire_Crossbow" FireCrouchAltAnims(2)="CHFire_Crossbow" FireCrouchAltAnims(3)="CHFire_Crossbow" HitAnims(0)="HitF_Crossbow" HitAnims(1)="HitB_Crossbow" HitAnims(2)="HitL_Crossbow" HitAnims(3)="HitR_Crossbow" PostFireBlendStandAnim="Blend_Crossbow" PostFireBlendCrouchAnim="CHBlend_Crossbow" MeshRef="KF_Weapons3rd_Trip.Crossbow_3rd"
}

View file

@ -0,0 +1,4 @@
class NiceCrossbowFire extends NiceFire;
defaultproperties
{ bProjectileFire=True ProjSpawnOffset=(X=25.000000) EffectiveRange=2500.000000 ProjectileSpeed=20000.000000 FireAimedAnim="Fire_Iron" maxVerticalRecoilAngle=100 maxHorizontalRecoilAngle=25 bRandomPitchFireSound=False FireSoundRef="KF_XbowSnd.Xbow_Fire" NoAmmoSoundRef="KF_XbowSnd.Xbow_DryFire" DamageType=Class'NicePack.NiceDamTypeCrossbow' DamageMax=300 Momentum=150000.000000 bWaitForRelease=True TransientSoundVolume=1.800000 FireForce="AssaultRifleFire" FireRate=0.000000 AmmoClass=Class'NicePack.NiceCrossbowAmmo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) BotRefireRate=1.800000 aimerror=1.000000
}

View file

@ -0,0 +1,5 @@
class NiceCrossbowPickup extends NiceWeaponPickup;
#exec OBJ LOAD FILE=KillingFloorWeapons.utx
defaultproperties
{ Weight=9.000000 AmmoCost=10 BuyClipSize=1 PowerValue=64 SpeedValue=50 RangeValue=100 Description="Recreational hunting weapon, equipped with powerful scope and firing trigger. Comes with special ammunition, designed to tear through low-resistance materials." ItemName="Crossbow" ItemShortName="Crossbow" AmmoItemName="Crossbow Bolts" AmmoMesh=StaticMesh'KillingFloorStatics.XbowAmmo' CorrespondingPerkIndex=2 EquipmentCategoryID=3 MaxDesireability=0.790000 InventoryType=Class'NicePack.NiceCrossbow' PickupMessage="You got the Crossbow" PickupSound=Sound'KF_XbowSnd.Xbow_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups_Trip.Rifle.crossbow_pickup' CollisionRadius=25.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,10 @@
class NiceDamTypeCrossbow extends NiceDamageTypeVetSharpshooter;
static function AwardKill(KFSteamStatsAndAchievements KFStatsAndAchievements, KFPlayerController Killer, KFMonster Killed )
{
local NiceMonster niceKilled;
niceKilled = NiceMonster(Killed);
if(KFStatsAndAchievements!=none && (Killed.BurnDown > 0 || (niceKilled != none && niceKilled.bOnFire == true) )) KFStatsAndAchievements.AddBurningCrossbowKill();
}
defaultproperties
{ MaxPenetrations=-1 BigZedPenDmgReduction=0.000000 MediumZedPenDmgReduction=1.000000 PenDmgReduction=1.000000 HeadShotDamageMult=4.000000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceCrossbow' bThrowRagdoll=True bRagdollBullet=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' DamageThreshold=1 KDamageImpulse=2000.000000 KDeathVel=110.000000 KDeathUpKick=10.000000
}

View file

@ -0,0 +1,5 @@
class NiceDamTypeHuntingRifle extends NiceDamageTypeVetSharpshooter
abstract;
defaultproperties
{ stunMultiplier=1.500000 MaxPenetrations=5 BigZedPenDmgReduction=0.750000 MediumZedPenDmgReduction=1.000000 HeadShotDamageMult=1.900000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceHuntingRifle' DeathString="%k killed %o (Hunting Rifle)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." bRagdollBullet=True bBulletHit=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' FlashFog=(X=600.000000) KDamageImpulse=2250.000000 KDeathVel=115.000000 KDeathUpKick=5.000000 VehicleDamageScaling=0.700000
}

View file

@ -0,0 +1,4 @@
class NiceHuntingRifle extends NiceScopedWeapon;
defaultproperties
{ lenseMaterialID=2 scopePortalFOVHigh=22.000000 scopePortalFOV=12.000000 ZoomMatRef="ScrnWeaponPack_T.BDHR.RifleCrossFinal" ScriptedTextureFallbackRef="KF_Weapons_Trip_T.Rifles.CBLens_cmb" CrosshairTexRef="ScrnWeaponPack_T.BDHR.BDHR.HRCross" reloadPreEndFrame=0.180000 reloadEndFrame=0.590000 reloadChargeEndFrame=0.930000 reloadChargeStartFrame=0.610000 bHasScope=True ZoomedDisplayFOVHigh=45.000000 MagCapacity=5 ReloadRate=3.200000 ReloadAnim="Reload" ReloadAnimRate=1.400000 WeaponReloadAnim="Reload_M14" Weight=6.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=65.000000 TraderInfoTexture=Texture'ScrnWeaponPack_T.BDHR.huntingrifle_Trader' MeshRef="ScrnWeaponPack_A.hunt_rifle" SkinRefs(0)="ScrnWeaponPack_T.BDHR.HR_Final" SkinRefs(1)="KF_Weapons2_Trip_T.hands.BritishPara_Hands_1st_P" SkinRefs(2)="KF_Weapons_Trip_T.Rifles.CBLens_cmb" SelectSoundRef="KF_PumpSGSnd.SG_Select" HudImageRef="ScrnWeaponPack_T.BDHR.HR_Unselected" SelectedHudImageRef="ScrnWeaponPack_T.BDHR.HR_selected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=60.000000 FireModeClass(0)=Class'NicePack.NiceHuntingRifleFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.650000 CurrentRating=0.650000 Description="A rugged and reliable scoped rifle with great penetrative power." DisplayFOV=65.000000 Priority=10 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=3 PickupClass=Class'NicePack.NiceHuntingRiflePickup' PlayerViewOffset=(X=15.000000,Y=16.000000,Z=-4.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceHuntingRifleAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="Hunting Rifle"
}

View file

@ -0,0 +1,5 @@
class NiceHuntingRifleAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=InterfaceContent.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceHuntingRiflePickup' AmmoPickupAmount=5 MaxAmmo=40 PickupClass=Class'NicePack.NiceHuntingRifleAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=338,Y1=40,X2=393,Y2=79) ItemName="Rifle bullets"
}

View file

@ -0,0 +1,4 @@
class NiceHuntingRifleAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=5 InventoryType=Class'NicePack.NiceHuntingRifleAmmo' PickupMessage=".308 rounds" StaticMesh=None
}

View file

@ -0,0 +1,4 @@
class NiceHuntingRifleAttachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdSTG' mTracerClass=Class'KFMod.KFNewTracer' MovementAnims(0)="WalkF_Winchester" MovementAnims(1)="WalkB_Winchester" MovementAnims(2)="WalkL_Winchester" MovementAnims(3)="WalkL_Winchester" TurnLeftAnim="TurnL_Winchester" TurnRightAnim="TurnR_Winchester" CrouchAnims(0)="CHwalkF_Winchester" CrouchAnims(1)="CHwalkB_Winchester" CrouchAnims(2)="CHwalkL_Winchester" CrouchAnims(3)="CHwalkR_Winchester" WalkAnims(0)="WalkF_Winchester" WalkAnims(1)="WalkB_Winchester" WalkAnims(2)="WalkL_Winchester" WalkAnims(3)="WalkL_Winchester" CrouchTurnRightAnim="CH_TurnR_Winchester" CrouchTurnLeftAnim="CH_TurnL_Winchester" IdleCrouchAnim="CHIdle_Winchester" IdleWeaponAnim="IS_Idle_Winchester" IdleRestAnim="IS_Idle_Winchester" IdleChatAnim="IS_Idle_Winchester" IdleHeavyAnim="IS_Idle_Winchester" IdleRifleAnim="IS_Idle_Winchester" FireAnims(0)="Claw" FireAnims(1)="Claw" FireAnims(2)="Claw" FireAnims(3)="Claw" FireAltAnims(0)="IS_Fire_Winchester" FireAltAnims(1)="IS_Fire_Winchester" FireAltAnims(2)="IS_Fire_Winchester" FireAltAnims(3)="IS_Fire_Winchester" FireCrouchAnims(0)="CHFire_Winchester" FireCrouchAnims(1)="CHFire_Winchester" FireCrouchAnims(2)="CHFire_Winchester" FireCrouchAnims(3)="CHFire_Winchester" FireCrouchAltAnims(0)="CHFire_Winchester" FireCrouchAltAnims(1)="CHFire_Winchester" FireCrouchAltAnims(2)="CHFire_Winchester" FireCrouchAltAnims(3)="CHFire_Winchester" HitAnims(0)="HitF_Winchester" HitAnims(1)="HitB_Winchester" HitAnims(2)="HitL_Winchester" HitAnims(3)="HitR_Winchester" PostFireBlendStandAnim="Blend_Winchester" PostFireBlendCrouchAnim="CHBlend_Winchester" MeshRef="ScrnWeaponPack_A.HuntingRifle3rd" bHeavy=True SplashEffect=Class'ROEffects.BulletSplashEmitter' CullDistance=5000.000000
}

View file

@ -0,0 +1,4 @@
class NiceHuntingRifleFire extends NiceFire;
defaultproperties
{ ProjectileSpeed=35000.000000 zoomOutOnShot=True FireAimedAnim="Fire_Iron" RecoilRate=0.100000 maxVerticalRecoilAngle=200 maxHorizontalRecoilAngle=62 FireSoundRef="ScrnWeaponPack_SND.BDHR.awp1_mono" StereoFireSoundRef="ScrnWeaponPack_SND.BDHR.awp1_stereo" NoAmmoSoundRef="KF_RifleSnd.Rifle_DryFire" DamageType=Class'NicePack.NiceDamTypeHuntingRifle' DamageMin=300 DamageMax=300 Momentum=18000.000000 bWaitForRelease=True bModeExclusive=False bAttachSmokeEmitter=True TransientSoundVolume=1.800000 FireLoopAnim= FireEndAnim= FireAnimRate=2.714000 FireForce="ShockRifleFire" FireRate=0.700000 AmmoClass=Class'NicePack.NiceHuntingRifleAmmo' ShakeRotMag=(X=100.000000,Y=100.000000,Z=500.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=2.000000 ShakeOffsetMag=(X=10.000000,Y=3.000000,Z=12.000000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=2.000000 BotRefireRate=0.650000 FlashEmitterClass=Class'ROEffects.MuzzleFlash1stKar' aimerror=0.000000
}

View file

@ -0,0 +1,7 @@
//=============================================================================
// HuntingRifle Pickup.
//=============================================================================
class NiceHuntingRiflePickup extends NiceWeaponPickup;
defaultproperties
{ Weight=6.000000 cost=750 AmmoCost=35 BuyClipSize=5 PowerValue=55 SpeedValue=42 RangeValue=95 Description="A rugged and reliable scoped rifle with great penetrative power." ItemName="Hunting Rifle" ItemShortName="Hunter R." AmmoItemName="Rifle bullets" CorrespondingPerkIndex=2 EquipmentCategoryID=2 InventoryType=Class'NicePack.NiceHuntingRifle' PickupMessage="You got the Hunting Rifle" PickupSound=Sound'KF_RifleSnd.RifleBase.Rifle_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'ScrnWeaponPack_SM.HR_Pickup' CollisionRadius=30.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,13 @@
class NiceDamTypeM14EBR extends NiceDamageTypeVetCommando
abstract;
static function ScoredHeadshot(KFSteamStatsAndAchievements KFStatsAndAchievements, class<KFMonster> MonsterClass, bool bLaserSightedM14EBRKill)
{
super.ScoredHeadshot( KFStatsAndAchievements, MonsterClass, bLaserSightedM14EBRKill );
if ( KFStatsAndAchievements != none )
{ KFStatsAndAchievements.AddHeadshotsWithSPSOrM14( MonsterClass );
}
}
defaultproperties
{
badDecapMod=0.6000 bIsProjectile=True HeadShotDamageMult=2.250000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceM14EBRBattleRifle' DeathString="%k killed %o (M14 EBR)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." bRagdollBullet=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' KDamageImpulse=7500.000000 KDeathVel=175.000000 KDeathUpKick=25.000000
}

View file

@ -0,0 +1,5 @@
class NiceM14EBRAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=KillingFloorHUD.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceM14EBRPickup' AmmoPickupAmount=20 MaxAmmo=160 InitialAmount=40 PickupClass=Class'NicePack.NiceM14EBRAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="M14EBR bullets"
}

View file

@ -0,0 +1,4 @@
class NiceM14EBRAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=20 InventoryType=Class'NicePack.NiceM14EBRAmmo' PickupMessage="Rounds 7.62x51mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo'
}

View file

@ -0,0 +1,4 @@
class NiceM14EBRAttachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdMP' mTracerClass=Class'KFMod.KFNewTracer' mShellCaseEmitterClass=Class'KFMod.KFShellSpewer' MovementAnims(0)="JogF_M14" MovementAnims(1)="JogB_M14" MovementAnims(2)="JogL_M14" MovementAnims(3)="JogR_M14" TurnLeftAnim="TurnL_M14" TurnRightAnim="TurnR_M14" CrouchAnims(0)="CHWalkF_M14" CrouchAnims(1)="CHWalkB_M14" CrouchAnims(2)="CHWalkL_M14" CrouchAnims(3)="CHWalkR_M14" WalkAnims(0)="WalkF_M14" WalkAnims(1)="WalkB_M14" WalkAnims(2)="WalkL_M14" WalkAnims(3)="WalkR_M14" CrouchTurnRightAnim="CH_TurnR_M14" CrouchTurnLeftAnim="CH_TurnL_M14" IdleCrouchAnim="CHIdle_M14" IdleWeaponAnim="Idle_M14" IdleRestAnim="Idle_M14" IdleChatAnim="Idle_M14" IdleHeavyAnim="Idle_M14" IdleRifleAnim="Idle_M14" FireAnims(0)="Fire_M14" FireAnims(1)="Fire_M14" FireAnims(2)="Fire_M14" FireAnims(3)="Fire_M14" FireAltAnims(0)="Fire_M14" FireAltAnims(1)="Fire_M14" FireAltAnims(2)="Fire_M14" FireAltAnims(3)="Fire_M14" FireCrouchAnims(0)="CHFire_M14" FireCrouchAnims(1)="CHFire_M14" FireCrouchAnims(2)="CHFire_M14" FireCrouchAnims(3)="CHFire_M14" FireCrouchAltAnims(0)="CHFire_M14" FireCrouchAltAnims(1)="CHFire_M14" FireCrouchAltAnims(2)="CHFire_M14" FireCrouchAltAnims(3)="CHFire_M14" HitAnims(0)="HitF_M14" HitAnims(1)="HitB_M14" HitAnims(2)="HitL_M14" HitAnims(3)="HitR_M14" PostFireBlendStandAnim="Blend_M14" PostFireBlendCrouchAnim="CHBlend_M14" MeshRef="KF_Weapons3rd2_Trip.M14_EBR_3rd" bRapidFire=True bAltRapidFire=True SplashEffect=Class'ROEffects.BulletSplashEmitter' CullDistance=5000.000000
}

View file

@ -0,0 +1,7 @@
class NiceM14EBRBattleRifle extends NiceWeapon;
simulated function AltFire(float F){
ToggleLaser();
}
defaultproperties
{ reloadPreEndFrame=0.120000 reloadEndFrame=0.590000 reloadChargeEndFrame=0.810000 reloadMagStartFrame=0.200000 reloadChargeStartFrame=0.710000 MagCapacity=20 ReloadRate=3.366000 ReloadAnim="Reload" ReloadAnimRate=1.000000 WeaponReloadAnim="Reload_M14" Weight=8.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=55.000000 TraderInfoTexture=Texture'KillingFloor2HUD.Trader_Weapon_Icons.Trader_M14' bIsTier3Weapon=True MeshRef="KF_Weapons2_Trip.M14_EBR_Trip" SkinRefs(0)="KF_Weapons2_Trip_T.Rifle.M14_cmb" SelectSoundRef="KF_M14EBRSnd.M14EBR_Select" HudImageRef="KillingFloor2HUD.WeaponSelect.M14_unselected" SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M14" PlayerIronSightFOV=60.000000 ZoomedDisplayFOV=45.000000 FireModeClass(0)=Class'NicePack.NiceM14EBRFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 CurrentRating=0.550000 bShowChargingBar=True Description="Updated M14 Enhanced Battle Rifle - Semi Auto variant. Equipped with a laser sight. A special lens allows to change laser's color on the fly." EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000) DisplayFOV=55.000000 Priority=165 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=5 PickupClass=Class'NicePack.NiceM14EBRPickup' PlayerViewOffset=(X=25.000000,Y=17.000000,Z=-8.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceM14EBRAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="M14 EBR" TransientSoundVolume=1.250000
}

View file

@ -0,0 +1,4 @@
class NiceM14EBRFire extends NiceFire;
defaultproperties
{ zedTimeFireSpeedUp=2.500000 ProjectileSpeed=42650.000000 FireAimedAnim="Fire_Iron" RecoilRate=0.085000 maxVerticalRecoilAngle=500 maxHorizontalRecoilAngle=125 ShellEjectClass=Class'ROEffects.KFShellEjectEBR' ShellEjectBoneName="Shell_eject" FireSoundRef="KF_M14EBRSnd.M14EBR_Fire" StereoFireSoundRef="KF_M14EBRSnd.M14EBR_FireST" NoAmmoSoundRef="KF_M14EBRSnd.M14EBR_DryFire" DamageType=Class'NicePack.NiceDamTypeM14EBR' DamageMin=120 DamageMax=120 Momentum=9500.000000 bPawnRapidFireAnim=True bWaitForRelease=True TransientSoundVolume=1.800000 FireLoopAnim="Fire" TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.250000 AmmoClass=Class'NicePack.NiceM14EBRAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=300.000000) ShakeRotRate=(X=7500.000000,Y=7500.000000,Z=7500.000000) ShakeRotTime=0.650000 ShakeOffsetMag=(X=6.000000,Y=3.000000,Z=7.500000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=1.150000 BotRefireRate=0.990000 FlashEmitterClass=Class'ROEffects.MuzzleFlash1stSTG' aimerror=42.000000
}

View file

@ -0,0 +1,5 @@
class NiceM14EBRPickup extends NiceWeaponPickup;
defaultproperties
{ Weight=8.000000
cost=1000 AmmoCost=15 BuyClipSize=20 PowerValue=55 SpeedValue=20 RangeValue=95 Description="Updated M14 Enhanced Battle Rifle - Semi Auto variant. Equipped with a laser sight. A special lens allows to change laser's color on the fly." ItemName="M14 EBR" ItemShortName="M14 EBR" AmmoItemName="7.62x51mm Ammo" AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=3 InventoryType=Class'NicePack.NiceM14EBRBattleRifle' PickupMessage="You got the M14 EBR" PickupSound=Sound'KF_M14EBRSnd.M14EBR_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups2_Trip.Rifles.M14_EBR_Pickup' CollisionRadius=25.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,9 @@
class NiceDamTypeM99SniperRifle extends NiceDamageTypeVetSharpshooter
abstract;
static function AwardKill(KFSteamStatsAndAchievements KFStatsAndAchievements, KFPlayerController Killer, KFMonster Killed ){
if(KFStatsAndAchievements != none){ if(Killed.IsA('NiceZombieScrake') || Killed.IsA('MeanZombieScrake')) KFStatsAndAchievements.AddM99Kill(); if(Killed.IsA('NiceZombieHusk') || Killed.IsA('MeanZombieHusk')) KFStatsAndAchievements.AddHuskAndZedOneShotKill(true, false); else KFStatsAndAchievements.AddHuskAndZedOneShotKill(false, true);
}
}
defaultproperties
{ prReqMultiplier=0.600000 prReqPrecise=0.600000 MaxPenetrations=-1 BigZedPenDmgReduction=0.750000 MediumZedPenDmgReduction=1.000000 PenDmgReduction=1.000000 HeadShotDamageMult=2.100000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceM99SniperRifle' DeathString="%k put a bullet in %o's head." FemaleSuicide="%o shot herself in the head." MaleSuicide="%o shot himself in the head." bThrowRagdoll=True bRagdollBullet=True bBulletHit=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' FlashFog=(X=600.000000) DamageThreshold=1 KDamageImpulse=10000.000000 KDeathVel=300.000000 KDeathUpKick=100.000000 VehicleDamageScaling=0.650000
}

View file

@ -0,0 +1,5 @@
class NiceM99Ammo extends NiceAmmo;
#EXEC OBJ LOAD FILE=KillingFloorHUD.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceM99Pickup' AmmoPickupAmount=2 MaxAmmo=20 InitialAmount=5 PickupClass=Class'NicePack.NiceM99AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="50 Cal Bullets"
}

View file

@ -0,0 +1,4 @@
class NiceM99AmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=2 InventoryType=Class'NicePack.NiceM99Ammo' PickupMessage="50 Cal Bullets" StaticMesh=StaticMesh'KillingFloorStatics.XbowAmmo' CollisionRadius=25.000000
}

View file

@ -0,0 +1,4 @@
class NiceM99Attachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdPTRD' MovementAnims(0)="JogF_M4203" MovementAnims(1)="JogB_M4203" MovementAnims(2)="JogL_M4203" MovementAnims(3)="JogR_M4203" TurnLeftAnim="TurnL_M4203" TurnRightAnim="TurnR_M4203" CrouchAnims(0)="CHWalkF_M4203" CrouchAnims(1)="CHWalkB_M4203" CrouchAnims(2)="CHWalkL_M4203" CrouchAnims(3)="CHWalkR_M4203" WalkAnims(0)="WalkF_M4203" WalkAnims(1)="WalkB_M4203" WalkAnims(2)="WalkL_M4203" WalkAnims(3)="WalkR_M4203" CrouchTurnRightAnim="CH_TurnR_M4203" CrouchTurnLeftAnim="CH_TurnL_M4203" IdleCrouchAnim="CHIdle_M4203" IdleWeaponAnim="Idle_M4203" IdleRestAnim="Idle_M4203" IdleChatAnim="Idle_M4203" IdleHeavyAnim="Idle_M4203" IdleRifleAnim="Idle_M4203" FireAnims(0)="Fire_M99" FireAnims(1)="Fire_M99" FireAnims(2)="Fire_M99" FireAnims(3)="Fire_M99" FireAltAnims(0)="Fire_M99" FireAltAnims(1)="Fire_M99" FireAltAnims(2)="Fire_M99" FireAltAnims(3)="Fire_M99" FireCrouchAnims(0)="CHFire_M99" FireCrouchAnims(1)="CHFire_M99" FireCrouchAnims(2)="CHFire_M99" FireCrouchAnims(3)="CHFire_M99" FireCrouchAltAnims(0)="CHFire_M99" FireCrouchAltAnims(1)="CHFire_M99" FireCrouchAltAnims(2)="CHFire_M99" FireCrouchAltAnims(3)="CHFire_M99" HitAnims(0)="HitF_M4203" HitAnims(1)="HitB_M4203" HitAnims(2)="HitL_M4203" HitAnims(3)="HitR_M4203" PostFireBlendStandAnim="Blend_M4203" PostFireBlendCrouchAnim="CHBlend_M4203" MeshRef="KF_Weapons3rd4_Trip.M99_Sniper_3rd"
}

View file

@ -0,0 +1,4 @@
class NiceM99Fire extends NiceFire;
defaultproperties
{ ProjectileSpeed=40000.000000 FireAimedAnim="Fire_Iron" RecoilRate=0.100000 maxVerticalRecoilAngle=2000 maxHorizontalRecoilAngle=1000 bRandomPitchFireSound=False FireSoundRef="KF_M99Snd.M99_Fire_M" StereoFireSoundRef="KF_M99Snd.M99_Fire_S" NoAmmoSoundRef="KF_SCARSnd.SCAR_DryFire" DamageType=Class'NicePack.NiceDamTypeM99SniperRifle' DamageMin=750 DamageMax=750 Momentum=150000.000000 bWaitForRelease=True TransientSoundVolume=1.800000 FireAnimRate=0.850000 FireForce="AssaultRifleFire" FireRate=0.000000 AmmoClass=Class'NicePack.NiceM99Ammo' ShakeRotMag=(X=5.000000,Y=7.000000,Z=3.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=5.000000,Y=5.000000,Z=5.000000) BotRefireRate=3.570000 FlashEmitterClass=Class'ROEffects.MuzzleFlash1stPTRD' aimerror=0.000000
}

View file

@ -0,0 +1,4 @@
class NiceM99Pickup extends NiceWeaponPickup;
defaultproperties
{ cost=1250 AmmoCost=60 BuyClipSize=1 PowerValue=95 SpeedValue=30 RangeValue=100 Description="M99 50 Caliber Single Shot Sniper Rifle - The ultimate in long range accuracy and knock down power. But to land a proper shot with it one needs to be extra precise and aim at his target for at least a solid second." ItemName="M99 AMR" ItemShortName="M99 AMR" AmmoItemName="50 Cal Bullets" CorrespondingPerkIndex=2 EquipmentCategoryID=3 MaxDesireability=0.790000 InventoryType=Class'NicePack.NiceM99SniperRifle' PickupMessage="You got the M99 Sniper Rifle" PickupSound=Sound'KF_M99Snd.M99_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups4_Trip.Rifles.M99_Sniper_Pickup' CollisionRadius=25.000000 CollisionHeight=10.000000
}

View file

@ -0,0 +1,23 @@
class NiceM99SniperRifle extends NiceScopedWeapon;
#exec OBJ LOAD FILE=..\Textures\KF_Weapons5_Scopes_Trip_T.utx
simulated function PostBeginPlay(){
local AutoReloadAnimDesc reloadDesc;
autoReloadsDescriptions.Length = 0;
reloadDesc.canInterruptFrame = 0.43;
reloadDesc.trashStartFrame = 0.882;
reloadDesc.resumeFrame = 0.473;
reloadDesc.speedFrame = 0.129;
reloadDesc.animName = 'Fire';
autoReloadsDescriptions[0] = reloadDesc;
reloadDesc.animName = 'Fire_Iron';
autoReloadsDescriptions[1] = reloadDesc;
super.PostBeginPlay();
}
simulated function bool StartFire(int Mode){
if(super.StartFire(Mode)){ if(Instigator != none && PlayerController(Instigator.Controller) != none && KFSteamStatsAndAchievements(PlayerController(Instigator.Controller).SteamStatsAndAchievements) != none){ KFSteamStatsAndAchievements(PlayerController(Instigator.Controller).SteamStatsAndAchievements).OnShotM99(); } return true;
}
return false;
}
defaultproperties
{ lenseMaterialID=2 scopePortalFOVHigh=20.000000 scopePortalFOV=13.330000 ZoomMatRef="KF_Weapons5_Scopes_Trip_T.M99.MilDotFinalBlend" ScriptedTextureFallbackRef="KF_Weapons_Trip_T.CBLens_cmb" CrosshairTexRef="KF_Weapons5_Scopes_Trip_T.Scope.MilDot" bChangeClipIcon=True hudClipTexture=Texture'KillingFloorHUD.HUD.Hud_Single_Bullet' reloadType=RTYPE_AUTO bHasScope=True ZoomedDisplayFOVHigh=18.000000 ForceZoomOutOnFireTime=0.400000 MagCapacity=1 ReloadRate=0.010000 ReloadAnim="Reload" ReloadAnimRate=1.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=55.000000 TraderInfoTexture=Texture'KillingFloor2HUD.Trader_Weapon_Icons.Trader_M99' bIsTier3Weapon=True MeshRef="KF_Wep_M99_Sniper.M99_Sniper" SkinRefs(0)="KF_Weapons5_Trip_T.Weapons.M99_cmb" SelectSoundRef="KF_M99Snd.M99_Select" HudImageRef="KillingFloor2HUD.WeaponSelect.M99_unselected" SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M99" PlayerIronSightFOV=30.000000 ZoomTime=0.285000 ZoomedDisplayFOV=30.000000 FireModeClass(0)=Class'NicePack.NiceM99Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" PutDownAnimRate=2.000000 SelectForce="SwitchToAssaultRifle" AIRating=0.550000 CurrentRating=0.550000 bShowChargingBar=True Description="M99 50 Caliber Single Shot Sniper Rifle - The ultimate in long range accuracy and knock down power. But to land a proper shot with it one needs to be extra precise and aim at his target for at least a solid second." EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000) DisplayFOV=55.000000 Priority=190 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" MinReloadPct=0.800000 InventoryGroup=4 GroupOffset=14 PickupClass=Class'NicePack.NiceM99Pickup' PlayerViewOffset=(X=15.000000,Y=15.000000,Z=-2.500000) BobDamping=4.500000 AttachmentClass=Class'NicePack.NiceM99Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="M99AMR" LightType=LT_None LightBrightness=0.000000 LightRadius=0.000000 TransientSoundVolume=1.250000
}

View file

@ -0,0 +1,9 @@
class NiceDamTypeMauler extends NiceDamageTypeVetSharpshooter
abstract;
static function ScoredNiceHeadshot(KFSteamStatsAndAchievements KFStatsAndAchievements, class<KFMonster> MonsterClass, int HL){
super.ScoredNiceHeadshot(KFStatsAndAchievements, MonsterClass, HL);
if(KFStatsAndAchievements != none) KFStatsAndAchievements.AddHeadshotsWithSPSOrM14(MonsterClass);
}
defaultproperties
{ stunMultiplier=1.250000 HeadShotDamageMult=4.000000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceMaulerRifle' DeathString="%k killed %o (S.P. Mauler)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." bRagdollBullet=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' KDamageImpulse=7500.000000 KDeathVel=175.000000 KDeathUpKick=25.000000
}

View file

@ -0,0 +1,4 @@
class NiceMaulerAmmo extends NiceAmmo;
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceMaulerPickup' AmmoPickupAmount=10 MaxAmmo=80 InitialAmount=20 PickupClass=Class'NicePack.NiceMaulerAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="S.P. Mauler bullets"
}

View file

@ -0,0 +1,4 @@
class NiceMaulerAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=10 InventoryType=Class'NicePack.NiceMaulerAmmo' PickupMessage="S.P. Mauler bullets" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo'
}

View file

@ -0,0 +1,4 @@
class NiceMaulerAttachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdSPSniper' mTracerClass=Class'NicePack.NiceMaulerTracer' mShellCaseEmitterClass=Class'KFMod.KFShellSpewer' MovementAnims(0)="JogF_M14" MovementAnims(1)="JogB_M14" MovementAnims(2)="JogL_M14" MovementAnims(3)="JogR_M14" TurnLeftAnim="TurnL_M14" TurnRightAnim="TurnR_M14" CrouchAnims(0)="CHWalkF_M14" CrouchAnims(1)="CHWalkB_M14" CrouchAnims(2)="CHWalkL_M14" CrouchAnims(3)="CHWalkR_M14" WalkAnims(0)="WalkF_M14" WalkAnims(1)="WalkB_M14" WalkAnims(2)="WalkL_M14" WalkAnims(3)="WalkR_M14" CrouchTurnRightAnim="CH_TurnR_M14" CrouchTurnLeftAnim="CH_TurnL_M14" IdleCrouchAnim="CHIdle_M14" IdleWeaponAnim="Idle_M14" IdleRestAnim="Idle_M14" IdleChatAnim="Fire_spSinper" IdleHeavyAnim="Idle_M14" IdleRifleAnim="Idle_M14" FireAnims(0)="Fire_spSinper" FireAnims(1)="Fire_spSinper" FireAnims(2)="Fire_spSinper" FireAnims(3)="Fire_spSinper" FireAltAnims(0)="Fire_spSinper" FireAltAnims(1)="Fire_spSinper" FireAltAnims(2)="Fire_spSinper" FireAltAnims(3)="Fire_spSinper" FireCrouchAnims(0)="CHFire_spSinper" FireCrouchAnims(1)="CHFire_spSinper" FireCrouchAnims(2)="CHFire_spSinper" FireCrouchAnims(3)="CHFire_spSinper" FireCrouchAltAnims(0)="CHFire_spSinper" FireCrouchAltAnims(1)="CHFire_spSinper" FireCrouchAltAnims(2)="CHFire_spSinper" FireCrouchAltAnims(3)="CHFire_spSinper" HitAnims(0)="HitF_M14" HitAnims(1)="HitB_M14" HitAnims(2)="HitL_M14" HitAnims(3)="HitR_M14" PostFireBlendStandAnim="Blend_M14" PostFireBlendCrouchAnim="CHBlend_M14" MeshRef="NicePackA.spSniper_3rd" SplashEffect=Class'ROEffects.BulletSplashEmitter' CullDistance=5000.000000
}

View file

@ -0,0 +1,4 @@
class NiceMaulerFire extends NiceFire;
defaultproperties
{ ProjectileSpeed=37950.000000 FireAimedAnim="Fire_Iron" RecoilRate=0.120000 maxVerticalRecoilAngle=125 maxHorizontalRecoilAngle=87 ShellEjectClass=Class'ROEffects.KFShellEjectEBR' ShellEjectBoneName="Shell_eject" FireSoundRef="KF_SP_LongmusketSnd.KFO_Sniper_Fire_M" StereoFireSoundRef="KF_SP_LongmusketSnd.KFO_Sniper_Fire_S" NoAmmoSoundRef="KF_M14EBRSnd.M14EBR_DryFire" DamageType=Class'NicePack.NiceDamTypeMauler' DamageMin=121 DamageMax=121 Momentum=13000.000000 bWaitForRelease=True TransientSoundVolume=1.800000 FireLoopAnim="Fire" FireAnimRate=1.600000 TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.587500 AmmoClass=Class'NicePack.NiceMaulerAmmo' ShakeRotMag=(X=100.000000,Y=100.000000,Z=500.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=2.000000 ShakeOffsetMag=(X=10.000000,Y=3.000000,Z=12.000000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=2.000000 BotRefireRate=0.990000 FlashEmitterClass=Class'ROEffects.MuzzleFlash1stSPSniper' aimerror=42.000000
}

View file

@ -0,0 +1,4 @@
class NiceMaulerPickup extends NiceWeaponPickup;
defaultproperties
{ Weight=6.000000 cost=750 AmmoCost=50 BuyClipSize=10 PowerValue=60 SpeedValue=10 RangeValue=95 Description="A finely crafted rifle with relatively low impact damage, but able to deal devastating blows with precise aiming." ItemName="Silver-Plated Mauler" ItemShortName="S.P. Mauler" AmmoItemName="S.P. Mauler bullets" CorrespondingPerkIndex=2 EquipmentCategoryID=3 InventoryType=Class'NicePack.NiceMaulerRifle' PickupMessage="You got the Silver-Plated Mauler" PickupSound=Sound'NicePackSnd.Silver.KFO_Sniper_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'NicePackSM.Silver.SniperRifle' CollisionRadius=25.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,6 @@
class NiceMaulerRifle extends NiceWeapon
config(user);
#exec OBJ LOAD FILE=NicePackSM.usx
defaultproperties
{ reloadPreEndFrame=0.200000 reloadEndFrame=0.550000 reloadChargeEndFrame=0.894000 reloadMagStartFrame=0.280000 reloadChargeStartFrame=0.647000 MagCapacity=10 ReloadRate=2.866000 ReloadAnim="Reload" ReloadAnimRate=1.000000 WeaponReloadAnim="Reload_spSinper" Weight=6.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=55.000000 SleeveNum=0 TraderInfoTexture=Texture'NicePackT.Silver.Trader_Sniper' bIsTier2Weapon=True MeshRef="NicePackA.SniperRifle" SkinRefs(1)="NicePackT.Silver.Sniper_cmb" SkinRefs(2)="NicePackT.Silver.sniperrifle_scope_shader" SelectSoundRef="NicePackSnd.Silver.KFO_Sniper_Select" HudImageRef="KF_IJC_HUD.WeaponSelect.Sniper_unselected" SelectedHudImageRef="KF_IJC_HUD.WeaponSelect.Sniper" PlayerIronSightFOV=60.000000 ZoomedDisplayFOV=25.000000 FireModeClass(0)=Class'NicePack.NiceMaulerFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 CurrentRating=0.550000 bShowChargingBar=True Description="A finely crafted rifle with relatively low impact damage, but able to deal devastating blows with precise aiming." EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000) DisplayFOV=55.000000 Priority=155 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=18 PickupClass=Class'NicePack.NiceMaulerPickup' PlayerViewOffset=(X=25.000000,Y=17.000000,Z=-8.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceMaulerAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="S.P. Mauler" TransientSoundVolume=1.250000
}

View file

@ -0,0 +1,4 @@
class NiceMaulerTracer extends KFNewTracer;
defaultproperties
{ Begin Object Class=SpriteEmitter Name=SpriteEmitter13 UseDirectionAs=PTDU_Right RespawnDeadParticles=False UseAbsoluteTimeForSizeScale=True UseRegularSizeScale=False ScaleSizeXByVelocity=True AutomaticInitialSpawning=False ExtentMultiplier=(X=0.200000) ColorMultiplierRange=(X=(Min=0.000000,Max=0.000000)) MaxParticles=100 StartSizeRange=(X=(Min=30.000000,Max=30.000000),Y=(Min=3.000000,Max=3.000000)) ScaleSizeByVelocityMultiplier=(X=0.001000) DrawStyle=PTDS_Brighten Texture=Texture'Effects_Tex_Steampunk.Steampunk_Tracer' LifetimeRange=(Min=0.100000,Max=0.100000) StartVelocityRange=(Z=(Min=10000.000000,Max=10000.000000)) End Object Emitters(0)=SpriteEmitter'NicePack.NiceMaulerTracer.SpriteEmitter13'
}

View file

@ -0,0 +1,4 @@
class NiceDamTypeSVD extends NiceDamageTypeVetSharpshooter;
defaultproperties
{ prReqMultiplier=0.400000 prReqPrecise=0.400000 MaxPenetrations=3 BigZedPenDmgReduction=0.750000 MediumZedPenDmgReduction=0.900000 PenDmgReduction=0.950000 HeadShotDamageMult=4.200000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceSVD' DeathString="%k killed %o (SVD)." bRagdollBullet=True bBulletHit=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' FlashFog=(X=600.000000) KDamageImpulse=4000.000000 KDeathVel=170.000000 KDeathUpKick=10.000000 VehicleDamageScaling=0.700000
}

View file

@ -0,0 +1,4 @@
class NiceDamTypeSVDS extends NiceDamageTypeVetSharpshooter;
defaultproperties
{ MaxPenetrations=1 BigZedPenDmgReduction=0.750000 MediumZedPenDmgReduction=0.900000 PenDmgReduction=0.950000 HeadShotDamageMult=4.200000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceSVDS' DeathString="%k killed %o (SVD)." bRagdollBullet=True bBulletHit=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' FlashFog=(X=600.000000) KDamageImpulse=4000.000000 KDeathVel=170.000000 KDeathUpKick=10.000000 VehicleDamageScaling=0.700000
}

View file

@ -0,0 +1,5 @@
class NiceDamTypeSVDm extends KFWeaponDamageType
abstract;
defaultproperties
{ HeadShotDamageMult=1.000000 bIsMeleeDamage=True WeaponClass=Class'NicePack.NiceSVD' DeathString="%k killed %o (SVD)." PawnDamageSounds(0)=Sound'KFPawnDamageSound.MeleeDamageSounds.axehitflesh' KDamageImpulse=1500.000000 KDeathVel=110.000000 KDeathUpKick=1.000000
}

View file

@ -0,0 +1,4 @@
class NiceSVD extends NiceSVDS;
defaultproperties
{ lenseMaterialID=4 scopePortalFOVHigh=12.000000 scopePortalFOV=12.000000 reloadPreEndFrame=0.115000 reloadEndFrame=0.607000 reloadChargeEndFrame=0.870000 reloadMagStartFrame=0.251000 reloadChargeStartFrame=0.730000 MagazineBone="Bone_Magazine" ZoomedDisplayFOVHigh=32.000000 MagCapacity=10 ReloadRate=3.600000 ReloadAnimRate=1.250000 WeaponReloadAnim="Reload_AK47" Weight=8.000000 IdleAimAnim="Idle_Iron" TraderInfoTexture=Texture'ScrnWeaponPack_T.SVD.SVD_Trader' MeshRef="ScrnWeaponPack_A.SVD_mesh" SkinRefs(0)="ScrnWeaponPack_T.SVD.SVD_tex_1_cmb" SkinRefs(1)="KF_Weapons5_Trip_T.First_Sleeves.Steampunk_DJ_Scully_First_Person_Sleeves" SkinRefs(2)="ScrnWeaponPack_T.SVD.SVD_tex_2_cmb" SkinRefs(3)="ScrnWeaponPack_T.SVD.SVD_tex_3_cmb" SkinRefs(4)="ScrnWeaponPack_T.SVD.AlphaLens" SkinRefs(5)="ScrnWeaponPack_T.SVD.SVD_tex_4_cmb" HudImageRef="ScrnWeaponPack_T.SVD.SVD_Unselected" SelectedHudImageRef="ScrnWeaponPack_T.SVD.SVD_selected" PlayerIronSightFOV=22.000000 ZoomedDisplayFOV=32.000000 FireModeClass(0)=Class'NicePack.NiceSVDFire' FireModeClass(1)=Class'NicePack.NiceSVDFireB' Description="The Dragunov sniper rifle is a semi-automatic sniper rifle/designated marksman rifle. It's shots are extra powerful, but require more precision." Priority=190 PickupClass=Class'NicePack.NiceSVDPickup' PlayerViewOffset=(X=6.000000,Y=22.000000,Z=-12.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceSVDAttachment' ItemName="SVD (Dragunov)"
}

View file

@ -0,0 +1,4 @@
class NiceSVDAmmo extends NiceAmmo;
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceSVDPickup' AmmoPickupAmount=10 MaxAmmo=60 InitialAmount=15 IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=338,Y1=40,X2=393,Y2=79) ItemName="7.62x54mm"
}

View file

@ -0,0 +1,4 @@
class NiceSVDAttachment extends NiceAttachment;
defaultproperties
{ bSecondaryModeNoEffects=True mMuzFlashClass=Class'ScrnWeaponPack.MuzzleFlash3rdSVD' mTracerClass=Class'KFMod.KFNewTracer' mShellCaseEmitterClass=Class'ScrnWeaponPack.KFShellSpewerSVD' MovementAnims(0)="JogF_AK47" MovementAnims(1)="JogB_AK47" MovementAnims(2)="JogL_AK47" MovementAnims(3)="JogR_AK47" TurnLeftAnim="TurnL_AK47" TurnRightAnim="TurnR_AK47" CrouchAnims(0)="CHWalkF_AK47" CrouchAnims(1)="CHWalkB_AK47" CrouchAnims(2)="CHWalkL_AK47" CrouchAnims(3)="CHWalkR_AK47" WalkAnims(0)="WalkF_AK47" WalkAnims(1)="WalkB_AK47" WalkAnims(2)="WalkL_AK47" WalkAnims(3)="WalkR_AK47" CrouchTurnRightAnim="CH_TurnR_AK47" CrouchTurnLeftAnim="CH_TurnL_AK47" IdleCrouchAnim="CHIdle_AK47" IdleWeaponAnim="Idle_AK47" IdleRestAnim="Idle_AK47" IdleChatAnim="Idle_AK47" IdleHeavyAnim="Idle_AK47" IdleRifleAnim="Idle_AK47" FireAnims(0)="Fire_AK47" FireAnims(1)="Fire_AK47" FireAnims(2)="Fire_AK47" FireAnims(3)="Fire_AK47" FireAltAnims(0)="FastAttack2_Knife" FireAltAnims(1)="FastAttack2_Knife" FireAltAnims(2)="FastAttack2_Knife" FireAltAnims(3)="FastAttack2_Knife" FireCrouchAnims(0)="CHFire_AK47" FireCrouchAnims(1)="CHFire_AK47" FireCrouchAnims(2)="CHFire_AK47" FireCrouchAnims(3)="CHFire_AK47" FireCrouchAltAnims(0)="CHFastAttack2_Knife" FireCrouchAltAnims(1)="CHFastAttack2_Knife" FireCrouchAltAnims(2)="CHFastAttack2_Knife" FireCrouchAltAnims(3)="CHFastAttack2_Knife" HitAnims(0)="HitF_AK47" HitAnims(1)="HitB_AK47" HitAnims(2)="HitL_AK47" HitAnims(3)="HitR_AK47" PostFireBlendStandAnim="Blend_AK47" PostFireBlendCrouchAnim="CHBlend_AK47" MeshRef="ScrnWeaponPack_A.SVD_3rd" WeaponAmbientScale=2.000000 bRapidFire=True bAltRapidFire=True SplashEffect=Class'ROEffects.BulletSplashEmitter' LightBrightness=0.000000
}

View file

@ -0,0 +1,4 @@
class NiceSVDFire extends NiceSVDSFire;
defaultproperties
{ ProjectileSpeed=41500.000000 FireAimedAnim="Fire_Iron" RecoilRate=0.150000 maxVerticalRecoilAngle=375 maxHorizontalRecoilAngle=150 DamageType=Class'NicePack.NiceDamTypeSVD' DamageMin=180 DamageMax=180 FireAnimRate=0.500000 TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.700000 AmmoClass=Class'NicePack.NiceSVDAmmo' BotRefireRate=1.200000
}

View file

@ -0,0 +1,13 @@
class NiceSVDFireB extends KFMeleeFire;
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).bAimingRifle ) return false;
return Super.AllowFire();
}
defaultproperties
{ MeleeDamage=65 ProxySize=0.150000 weaponRange=90.000000 DamagedelayMin=0.160000 DamagedelayMax=0.160000 hitDamageClass=Class'NicePack.NiceDamTypeSVDm' MeleeHitSounds(0)=Sound'KF_AxeSnd.AxeImpactBase.Axe_HitFlesh4' HitEffectClass=Class'ScrnWeaponPack.SVDHitEffect' bWaitForRelease=True FireAnim="MeleeAttack" FireRate=1.100000 BotRefireRate=1.100000
}

View file

@ -0,0 +1,7 @@
class NiceSVDPickup extends NiceWeaponPickup;
#exec OBJ LOAD FILE=ScrnWeaponPack_T.utx
#exec OBJ LOAD FILE=ScrnWeaponPack_A.ukx
defaultproperties
{ Weight=8.000000
cost=1250 AmmoCost=50 BuyClipSize=10 PowerValue=90 SpeedValue=40 RangeValue=100 Description="The Dragunov sniper rifle is a semi-automatic sniper rifle/designated marksman rifle. It's shots are extra powerful, but require more precision." ItemName="SVD (Dragunov) " ItemShortName="SVD" AmmoItemName="7.64x54mm" CorrespondingPerkIndex=2 EquipmentCategoryID=2 InventoryType=Class'NicePack.NiceSVD' PickupMessage="You've got the Dragunov Sniper Rifle (SVD)" PickupSound=Sound'ScrnWeaponPack_SND.SVD.SVD_pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'ScrnWeaponPack_SM.SVD_st' CollisionRadius=30.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,4 @@
class NiceSVDS extends NiceScopedWeapon;
defaultproperties
{ lenseMaterialID=3 scopePortalFOVHigh=10.000000 scopePortalFOV=10.000000 ZoomMatRef="ScrnWeaponPack_T.SVD.PSO1ScopeFinalBlend" ScriptedTextureFallbackRef="ScrnWeaponPack_T.SVD.AlphaLens" CrosshairTexRef="ScrnWeaponPack_T.SVD.PSO1Scope" reloadPreEndFrame=0.140000 reloadEndFrame=0.610000 reloadChargeEndFrame=0.920000 reloadMagStartFrame=0.354000 reloadChargeStartFrame=0.610000 MagazineBone="clip" bHasScope=True ZoomedDisplayFOVHigh=55.000000 MagCapacity=5 ReloadRate=3.500000 ReloadAnim="Reload" ReloadAnimRate=0.800000 WeaponReloadAnim="Reload_M14" Weight=7.000000 bHasAimingMode=True IdleAimAnim="Iron_Idle" StandardDisplayFOV=65.000000 TraderInfoTexture=Texture'ScrnWeaponPack_T.SVDS.SVD-cTrader' MeshRef="ScrnWeaponPack_A.SVDS_mesh" SkinRefs(0)="ScrnWeaponPack_T.SVDS.Svd_D_Sh" SkinRefs(1)="KF_Weapons2_Trip_T.hands.BritishPara_Hands_1st_P" SkinRefs(2)="KF_Weapons_Trip_T.Rifles.CBLens_cmb" SkinRefs(3)="ScrnWeaponPack_T.SVD.AlphaLens" SelectSoundRef="ScrnWeaponPack_SND.SVD.SVD_select" HudImageRef="ScrnWeaponPack_T.SVDS.SVD-cUnselected" SelectedHudImageRef="ScrnWeaponPack_T.SVDS.SVD-cSelected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=50.000000 FireModeClass(0)=Class'NicePack.NiceSVDSFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.650000 CurrentRating=0.650000 Description="The Dragunov sniper rifle with folding stock (formally Russian: Snayperskaya Vintovka Dragunova Skladnaya, SVDS) is a compact variant of the SVD, which was developed in the early 1990s. It features a tubular metal stock that folds to the right side of the receiver and a synthetic pistol grip." DisplayFOV=65.000000 Priority=150 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=3 PickupClass=Class'NicePack.NiceSVDSPickup' PlayerViewOffset=(X=7.000000,Y=9.000000,Z=-4.000000) BobDamping=5.000000 AttachmentClass=Class'NicePack.NiceSVDSAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="SVDS"
}

View file

@ -0,0 +1,4 @@
class NiceSVDSAmmo extends NiceAmmo;
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceSVDSPickup' AmmoPickupAmount=5 MaxAmmo=60 InitialAmount=15 PickupClass=Class'NicePack.NiceSVDSAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="7.62x54mm"
}

View file

@ -0,0 +1,4 @@
class NiceSVDSAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=5 InventoryType=Class'NicePack.NiceSVDSAmmo' PickupMessage="7x62mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo'
}

View file

@ -0,0 +1,4 @@
class NiceSVDSAttachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdMP' mTracerClass=Class'KFMod.KFNewTracer' mShellCaseEmitterClass=Class'KFMod.KFShellSpewer' ShellEjectBoneName="wpn_scope" MovementAnims(0)="JogF_AK47" MovementAnims(1)="JogB_AK47" MovementAnims(2)="JogL_AK47" MovementAnims(3)="JogR_AK47" TurnLeftAnim="TurnL_AK47" TurnRightAnim="TurnR_AK47" CrouchAnims(0)="CHWalkF_AK47" CrouchAnims(1)="CHWalkB_AK47" CrouchAnims(2)="CHWalkL_AK47" CrouchAnims(3)="CHWalkR_AK47" WalkAnims(0)="WalkF_AK47" WalkAnims(1)="WalkB_AK47" WalkAnims(2)="WalkL_AK47" WalkAnims(3)="WalkR_AK47" CrouchTurnRightAnim="CH_TurnR_AK47" CrouchTurnLeftAnim="CH_TurnL_AK47" IdleCrouchAnim="CHIdle_AK47" IdleWeaponAnim="Idle_AK47" IdleRestAnim="Idle_AK47" IdleChatAnim="Idle_AK47" IdleHeavyAnim="Idle_AK47" IdleRifleAnim="Idle_AK47" FireAnims(0)="Fire_AK47" FireAnims(1)="Fire_AK47" FireAnims(2)="Fire_AK47" FireAnims(3)="Fire_AK47" FireAltAnims(0)="IS_Fire_AK47" FireAltAnims(1)="IS_Fire_AK47" FireAltAnims(2)="IS_Fire_AK47" FireAltAnims(3)="IS_Fire_AK47" FireCrouchAnims(0)="CHFire_AK47" FireCrouchAnims(1)="CHFire_AK47" FireCrouchAnims(2)="CHFire_AK47" FireCrouchAnims(3)="CHFire_AK47" FireCrouchAltAnims(0)="CHFire_AK47" FireCrouchAltAnims(1)="CHFire_AK47" FireCrouchAltAnims(2)="CHFire_AK47" FireCrouchAltAnims(3)="CHFire_AK47" HitAnims(0)="HitF_AK47" HitAnims(1)="HitB_AK47" HitAnims(2)="HitL_AK47" HitAnims(3)="HitR_AK47" PostFireBlendStandAnim="Blend_AK47" PostFireBlendCrouchAnim="CHBlend_AK47" MeshRef="ScrnWeaponPack_A.SVDS_3rd" bHeavy=True SplashEffect=Class'ROEffects.BulletSplashEmitter' CullDistance=5000.000000
}

View file

@ -0,0 +1,4 @@
class NiceSVDSFire extends NiceFire;
defaultproperties
{ FireAimedAnim="Fire" RecoilRate=0.200000 maxVerticalRecoilAngle=500 maxHorizontalRecoilAngle=15 ShellEjectClass=Class'ScrnWeaponPack.KFShellEjectSVD' ShellEjectBoneName="Shell_eject" FireSoundRef="ScrnWeaponPack_SND.SVD.SVD_shot" StereoFireSoundRef="ScrnWeaponPack_SND.SVD.SVD_shot" NoAmmoSoundRef="ScrnWeaponPack_SND.SVD.SVD_empty" DamageType=Class'NicePack.NiceDamTypeSVDS' DamageMin=125 DamageMax=125 bWaitForRelease=True bModeExclusive=False TransientSoundVolume=3.800000 FireLoopAnim="Fire" FireForce="ShockRifleFire" FireRate=0.750000 AmmoClass=Class'NicePack.NiceSVDSAmmo' ShakeRotMag=(X=100.000000,Y=100.000000,Z=500.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=2.000000 ShakeOffsetMag=(X=10.000000,Y=3.000000,Z=12.000000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=2.000000 BotRefireRate=0.550000 FlashEmitterClass=Class'ScrnWeaponPack.MuzzleFlash1rdSVD' aimerror=0.000000
}

View file

@ -0,0 +1,6 @@
class NiceSVDSPickup extends NiceWeaponPickup;
#exec OBJ LOAD FILE=ScrnWeaponPack_T.utx
#exec OBJ LOAD FILE=ScrnWeaponPack_A.ukx
defaultproperties
{ Weight=7.000000 cost=1500 AmmoCost=10 BuyClipSize=5 PowerValue=80 SpeedValue=40 RangeValue=100 Description="The Dragunov sniper rifle with folding stock (formally Russian: Snayperskaya Vintovka Dragunova Skladnaya, SVDS) is a compact variant of the SVD, which was developed in the early 1990s. It features a tubular metal stock that folds to the right side of the receiver and a synthetic pistol grip." ItemName="SVDS" ItemShortName="SVDS" AmmoItemName="7.64x54mm" CorrespondingPerkIndex=2 EquipmentCategoryID=2 InventoryType=Class'NicePack.NiceSVDS' PickupMessage="You've got the Dragunov Sniper Rifle (SVDS)" PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'ScrnWeaponPack_SM.svd_c' CollisionRadius=30.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,4 @@
class NiceDamTypeVSSDT extends NiceDamageTypeVetSharpshooter;
defaultproperties
{ stunMultiplier=0.500000 HeadShotDamageMult=1.490000 bSniperWeapon=True WeaponClass=Class'NicePack.NiceVSSDT' DeathString="%k killed %o (Vintorez)." bRagdollBullet=True bBulletHit=True PawnDamageEmitter=Class'ROEffects.ROBloodPuff' LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore' LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall' FlashFog=(X=600.000000) KDamageImpulse=3000.000000 KDeathVel=110.000000 KDeathUpKick=10.000000 VehicleDamageScaling=0.700000
}

View file

@ -0,0 +1,6 @@
class NiceVSSDT extends NiceScopedWeapon;
simulated function AltFire(float F){}
exec function SwitchModes(){}
defaultproperties
{ lenseMaterialID=2 scopePortalFOVHigh=30.000000 scopePortalFOV=30.000000 ZoomMatRef="ScrnWeaponPack_T.VSS.PSO1ScopeFinalBlend" ScriptedTextureFallbackRef="ScrnWeaponPack_T.SVD.AlphaLens" CrosshairTexRef="ScrnWeaponPack_T.VSS.PSO1Sope" reloadPreEndFrame=0.120000 reloadEndFrame=0.490000 reloadChargeEndFrame=0.764000 reloadMagStartFrame=0.302000 reloadChargeStartFrame=0.613000 MagazineBone="clip" bHasScope=True ZoomedDisplayFOVHigh=55.000000 MagCapacity=10 ReloadRate=3.000000 ReloadAnim="Reload" ReloadAnimRate=1.000000 WeaponReloadAnim="Reload_AK47" Weight=7.000000 bHasAimingMode=True IdleAimAnim="Iron_Idle" StandardDisplayFOV=65.000000 SleeveNum=0 TraderInfoTexture=Texture'ScrnWeaponPack_T.VSS.VSSDT_Trader' MeshRef="ScrnWeaponPack_A.vintorezDTmesh" SkinRefs(0)="KF_Weapons2_Trip_T.hands.BritishPara_Hands_1st_P" SkinRefs(1)="KF_Weapons_Trip_T.Rifles.CBLens_cmb" SkinRefs(2)="ScrnWeaponPack_T.SVD.AlphaLens" SkinRefs(3)="ScrnWeaponPack_T.VSS.newvss" SkinRefs(4)="ScrnWeaponPack_T.VSS.mag_9x39_cmb" SkinRefs(5)="ScrnWeaponPack_T.VSS.Scope" SelectSoundRef="ScrnWeaponPack_SND.VSS.VSS_Draw" HudImageRef="ScrnWeaponPack_T.VSS.vssDT_Unselected" SelectedHudImageRef="ScrnWeaponPack_T.VSS.vssDT_selected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=55.000000 FireModeClass(0)=Class'NicePack.NiceVSSDTFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.650000 CurrentRating=0.650000 Description="The VSS (Special Sniper Rifle), also called the Vintorez (thread cutter), is a suppressed sniper rifle that is extremely suitable for quick dispatching of an enemy." DisplayFOV=65.000000 Priority=160 CustomCrosshair=11 CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=3 PickupClass=Class'NicePack.NiceVSSDTPickup' PlayerViewOffset=(X=12.000000,Y=12.000000,Z=-3.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceVSSDTAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="VSS (Vintorez)"
}

View file

@ -0,0 +1,5 @@
class NiceVSSDTAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=InterfaceContent.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceVSSDTPickup' AmmoPickupAmount=10 MaxAmmo=80 InitialAmount=20 PickupClass=Class'NicePack.NiceVSSDTAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=338,Y1=40,X2=393,Y2=79) ItemName="9x39mm round SP-5"
}

View file

@ -0,0 +1,4 @@
class NiceVSSDTAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=10 InventoryType=Class'NicePack.NiceVSSDTAmmo' PickupMessage="9x39mm round SP-5"
}

View file

@ -0,0 +1,4 @@
class NiceVSSDTAttachment extends NiceAttachment;
defaultproperties
{ bSpawnLight=False mMuzFlashClass=Class'ScrnWeaponPack.MuzzleFlash3rdVSSDT' mTracerClass=Class'KFMod.KFNewTracer' mShellCaseEmitterClass=Class'KFMod.KFShellSpewer' ShellEjectBoneName="Shell_eject" MovementAnims(0)="JogF_AK47" MovementAnims(1)="JogB_AK47" MovementAnims(2)="JogL_AK47" MovementAnims(3)="JogR_AK47" TurnLeftAnim="TurnL_AK47" TurnRightAnim="TurnR_AK47" CrouchAnims(0)="CHWalkF_AK47" CrouchAnims(1)="CHWalkB_AK47" CrouchAnims(2)="CHWalkL_AK47" CrouchAnims(3)="CHWalkR_AK47" WalkAnims(0)="WalkF_AK47" WalkAnims(1)="WalkB_AK47" WalkAnims(2)="WalkL_AK47" WalkAnims(3)="WalkR_AK47" CrouchTurnRightAnim="CH_TurnR_AK47" CrouchTurnLeftAnim="CH_TurnL_AK47" IdleCrouchAnim="CHIdle_AK47" IdleWeaponAnim="Idle_AK47" IdleRestAnim="Idle_AK47" IdleChatAnim="Idle_AK47" IdleHeavyAnim="Idle_AK47" IdleRifleAnim="Idle_AK47" FireAnims(0)="Fire_AK47" FireAnims(1)="Fire_AK47" FireAnims(2)="Fire_AK47" FireAnims(3)="Fire_AK47" FireAltAnims(0)="IS_Fire_AK47" FireAltAnims(1)="IS_Fire_AK47" FireAltAnims(2)="IS_Fire_AK47" FireAltAnims(3)="IS_Fire_AK47" FireCrouchAnims(0)="CHFire_AK47" FireCrouchAnims(1)="CHFire_AK47" FireCrouchAnims(2)="CHFire_AK47" FireCrouchAnims(3)="CHFire_AK47" FireCrouchAltAnims(0)="CHFire_AK47" FireCrouchAltAnims(1)="CHFire_AK47" FireCrouchAltAnims(2)="CHFire_AK47" FireCrouchAltAnims(3)="CHFire_AK47" HitAnims(0)="HitF_AK47" HitAnims(1)="HitB_AK47" HitAnims(2)="HitL_AK47" HitAnims(3)="HitR_AK47" PostFireBlendStandAnim="Blend_AK47" PostFireBlendCrouchAnim="CHBlend_AK47" MeshRef="ScrnWeaponPack_A.vintorezDT3rd" bHeavy=True SplashEffect=Class'ROEffects.BulletSplashEmitter' CullDistance=5000.000000 DrawScale=0.550000
}

View file

@ -0,0 +1,4 @@
class NiceVSSDTFire extends NiceFire;
defaultproperties
{ ProjectileSpeed=46250.000000 FireAimedAnim="Iron_Idle" RecoilRate=0.100000 maxVerticalRecoilAngle=75 maxHorizontalRecoilAngle=25 ShellEjectClass=Class'ROEffects.KFShellEjectMac' ShellEjectBoneName="Shell_eject" FireSoundRef="ScrnWeaponPack_SND.VSS.VSS_Fire" StereoFireSoundRef="ScrnWeaponPack_SND.VSS.VSS_Fire" NoAmmoSoundRef="KF_RifleSnd.Rifle_DryFire" DamageType=Class'NicePack.NiceDamTypeVSSDT' DamageMin=255 DamageMax=255 bWaitForRelease=True bModeExclusive=False TransientSoundVolume=2.800000 FireLoopAnim= FireForce="ShockRifleFire" FireRate=0.150000 AmmoClass=Class'NicePack.NiceVSSDTAmmo' ShakeRotMag=(X=100.000000,Y=100.000000,Z=500.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=2.000000 ShakeOffsetMag=(X=6.000000,Y=3.000000,Z=7.000000) ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000) ShakeOffsetTime=2.000000 BotRefireRate=0.650000 FlashEmitterClass=Class'ScrnWeaponPack.MuzzleFlash3rdVSSDT' aimerror=1.000000
}

View file

@ -0,0 +1,4 @@
class NiceVSSDTPickup extends NiceWeaponPickup;
defaultproperties
{ Weight=7.000000 cost=1000 AmmoCost=15 BuyClipSize=10 PowerValue=80 SpeedValue=40 RangeValue=100 Description="The VSS (Special Sniper Rifle), also called the Vintorez (thread cutter), is a suppressed sniper rifle that is extremely suitable for quick dispatching of an enemy." ItemName="VSS (Vintorez)" ItemShortName="VSS" AmmoItemName="Rifle bullets" CorrespondingPerkIndex=2 EquipmentCategoryID=2 InventoryType=Class'NicePack.NiceVSSDT' PickupMessage="You've got Vintorez" PickupSound=Sound'KF_RifleSnd.RifleBase.Rifle_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'ScrnWeaponPack_SM.vintorezDT_sm' DrawScale=1.200000 CollisionRadius=30.000000 CollisionHeight=5.000000
}

View file

@ -0,0 +1,24 @@
class NiceDamTypeWinchester extends NiceDamageTypeVetSharpshooter
abstract;
defaultproperties
{
stunMultiplier=1.500000
bIsProjectile=True
HeadShotDamageMult=2.500000
bSniperWeapon=True
WeaponClass=Class'NicePack.NiceWinchester'
DeathString="%k killed %o (Winchester)."
FemaleSuicide="%o shot herself in the foot."
MaleSuicide="%o shot himself in the foot."
bRagdollBullet=True
bBulletHit=True
PawnDamageEmitter=Class'ROEffects.ROBloodPuff'
LowGoreDamageEmitter=Class'ROEffects.ROBloodPuffNoGore'
LowDetailEmitter=Class'ROEffects.ROBloodPuffSmall'
FlashFog=(X=600.000000)
KDamageImpulse=2250.000000
KDeathVel=115.000000
KDeathUpKick=5.000000
VehicleDamageScaling=0.700000
}

View file

@ -0,0 +1,59 @@
class NiceWinchester extends NiceWeapon;
simulated function fillSubReloadStages(){
// Loading 10 shells during 256 frames tops, with first shell loaded at frame 18, with 23 frames between load moments
generateReloadStages(10, 256, 18, 23);
}
defaultproperties
{
bChangeClipIcon=True
hudClipTexture=Texture'KillingFloorHUD.HUD.Hud_Single_Bullet'
reloadType=RTYPE_SINGLE
MagCapacity=10
ReloadRate=0.416667
ReloadAnim="Reload"
ReloadAnimRate=1.600000
bHoldToReload=True
WeaponReloadAnim="Reload_Winchester"
Weight=6.000000
bHasAimingMode=True
IdleAimAnim="AimIdle"
StandardDisplayFOV=70.000000
SleeveNum=2
TraderInfoTexture=Texture'KillingFloorHUD.Trader_Weapon_Images.Trader_Winchester'
MeshRef="KF_Weapons_Trip.Winchester_Trip"
SkinRefs(0)="KF_Weapons_Trip_T.Rifles.winchester_cmb"
SelectSoundRef="KF_RifleSnd.Rifle_Select"
HudImageRef="KillingFloorHUD.WeaponSelect.winchester_unselected"
SelectedHudImageRef="KillingFloorHUD.WeaponSelect.Winchester"
PlayerIronSightFOV=70.000000
ZoomedDisplayFOV=50.000000
FireModeClass(0)=Class'NicePack.NiceWinchesterFire'
FireModeClass(1)=Class'KFMod.NoFire'
PutDownAnim="PutDown"
AIRating=0.560000
CurrentRating=0.560000
bShowChargingBar=True
OldCenteredOffsetY=0.000000
OldPlayerViewOffset=(X=-8.000000,Y=5.000000,Z=-6.000000)
OldSmallViewOffset=(X=4.000000,Y=11.000000,Z=-12.000000)
OldPlayerViewPivot=(Pitch=800)
OldCenteredRoll=3000
Description="A rugged and reliable single-shot rifle."
EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000)
DisplayFOV=70.000000
Priority=85
CenteredOffsetY=-5.000000
CenteredRoll=3000
CenteredYaw=-1500
InventoryGroup=3
GroupOffset=3
PickupClass=Class'NicePack.NiceWinchesterPickup'
PlayerViewOffset=(X=8.000000,Y=14.000000,Z=-8.000000)
BobDamping=6.000000
AttachmentClass=Class'NicePack.NiceWinchesterAttachment'
ItemName="Winchester"
bUseDynamicLights=True
DrawScale=0.900000
TransientSoundVolume=50.000000
}

View file

@ -0,0 +1,14 @@
class NiceWinchesterAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=InterfaceContent.utx
defaultproperties
{
WeaponPickupClass=Class'NicePack.NiceWinchesterPickup'
AmmoPickupAmount=10
MaxAmmo=80
InitialAmount=20
PickupClass=Class'NicePack.NiceWinchesterAmmoPickup'
IconMaterial=Texture'KillingFloorHUD.Generic.HUD'
IconCoords=(X1=338,Y1=40,X2=393,Y2=79)
ItemName="Winchester bullets"
}

View file

@ -0,0 +1,9 @@
class NiceWinchesterAmmoPickup extends NiceAmmoPickup;
defaultproperties
{
AmmoAmount=10
InventoryType=Class'NicePack.NiceWinchesterAmmo'
PickupMessage=".44 rounds"
StaticMesh=None
}

View file

@ -0,0 +1,55 @@
class NiceWinchesterAttachment extends NiceAttachment;
defaultproperties
{
mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdSTG'
mTracerClass=Class'KFMod.KFLargeTracer'
MovementAnims(0)="JogF_Winchester"
MovementAnims(1)="JogB_Winchester"
MovementAnims(2)="JogL_Winchester"
MovementAnims(3)="JogR_Winchester"
TurnLeftAnim="TurnL_Winchester"
TurnRightAnim="TurnR_Winchester"
CrouchAnims(0)="CHwalkF_Winchester"
CrouchAnims(1)="CHwalkB_Winchester"
CrouchAnims(2)="CHwalkL_Winchester"
CrouchAnims(3)="CHwalkR_Winchester"
WalkAnims(0)="WalkF_Winchester"
WalkAnims(1)="WalkB_Winchester"
WalkAnims(2)="WalkL_Winchester"
WalkAnims(3)="WalkR_Winchester"
CrouchTurnRightAnim="CH_TurnR_Winchester"
CrouchTurnLeftAnim="CH_TurnL_Winchester"
IdleCrouchAnim="CHIdle_Winchester"
IdleWeaponAnim="Idle_Winchester"
IdleRestAnim="Idle_Winchester"
IdleChatAnim="Idle_Winchester"
IdleHeavyAnim="Idle_Winchester"
IdleRifleAnim="Idle_Winchester"
FireAnims(0)="Fire_Winchester"
FireAnims(1)="Fire_Winchester"
FireAnims(2)="Fire_Winchester"
FireAnims(3)="Fire_Winchester"
FireAltAnims(0)="Fire_Winchester"
FireAltAnims(1)="Fire_Winchester"
FireAltAnims(2)="Fire_Winchester"
FireAltAnims(3)="Fire_Winchester"
FireCrouchAnims(0)="CHFire_Winchester"
FireCrouchAnims(1)="CHFire_Winchester"
FireCrouchAnims(2)="CHFire_Winchester"
FireCrouchAnims(3)="CHFire_Winchester"
FireCrouchAltAnims(0)="CHFire_Winchester"
FireCrouchAltAnims(1)="CHFire_Winchester"
FireCrouchAltAnims(2)="CHFire_Winchester"
FireCrouchAltAnims(3)="CHFire_Winchester"
HitAnims(0)="HitF_Winchester"
HitAnims(1)="HitB_Winchester"
HitAnims(2)="HitL_Winchester"
HitAnims(3)="HitR_Winchester"
PostFireBlendStandAnim="Blend_Winchester"
PostFireBlendCrouchAnim="CHBlend_Winchester"
MeshRef="KF_Weapons3rd_Trip.Winchester_3rd"
bHeavy=True
SplashEffect=Class'ROEffects.BulletSplashEmitter'
CullDistance=5000.000000
}

View file

@ -0,0 +1,37 @@
class NiceWinchesterFire extends NiceFire;
defaultproperties
{
ProjectileSpeed=37950.000000
FireAimedAnim="AimFire"
RecoilRate=0.100000
maxVerticalRecoilAngle=200
maxHorizontalRecoilAngle=64
FireSoundRef="KF_RifleSnd.Rifle_Fire"
StereoFireSoundRef="KF_RifleSnd.Rifle_FireST"
NoAmmoSoundRef="KF_RifleSnd.Rifle_DryFire"
DamageType=Class'NicePack.NiceDamTypeWinchester'
DamageMin=156
DamageMax=156
Momentum=18000.000000
bPawnRapidFireAnim=True
bWaitForRelease=True
bModeExclusive=False
bAttachSmokeEmitter=True
TransientSoundVolume=1.800000
FireLoopAnim=
FireEndAnim=
FireAnimRate=1.600000
FireForce="ShockRifleFire"
FireRate=0.562500
AmmoClass=Class'NicePack.NiceWinchesterAmmo'
ShakeRotMag=(X=100.000000,Y=100.000000,Z=500.000000)
ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000)
ShakeRotTime=2.000000
ShakeOffsetMag=(X=10.000000,Y=3.000000,Z=12.000000)
ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000)
ShakeOffsetTime=2.000000
BotRefireRate=0.650000
FlashEmitterClass=Class'ROEffects.MuzzleFlash1stKar'
aimerror=0.000000
}

View file

@ -0,0 +1,24 @@
class NiceWinchesterPickup extends NiceWeaponPickup;
defaultproperties
{
Weight=6.000000
cost=200
BuyClipSize=10
PowerValue=50
SpeedValue=35
RangeValue=90
Description="A rugged and reliable single-shot rifle."
ItemName="Winchester"
ItemShortName="Winchester"
AmmoItemName="Winchester bullets"
CorrespondingPerkIndex=2
EquipmentCategoryID=2
InventoryType=Class'NicePack.NiceWinchester'
PickupMessage="You got Winchester"
PickupSound=Sound'KF_RifleSnd.RifleBase.Rifle_Pickup'
PickupForce="AssaultRiflePickup"
StaticMesh=StaticMesh'KF_pickups_Trip.Rifle.LeverAction_pickup'
CollisionRadius=30.000000
CollisionHeight=5.000000
}