Fix new line symbol issues

This commit is contained in:
Anton Tarasenko 2020-04-19 00:44:48 +07:00
commit d66d86b2b1
846 changed files with 33896 additions and 12983 deletions

View file

@ -1,5 +1,19 @@
class NiceDamTypeSPShotgun extends NiceDamageTypeVetEnforcer
abstract;
defaultproperties
{ MaxPenetrations=5 PenDmgReduction=0.900000 bIsPowerWeapon=True WeaponClass=Class'NicePack.NiceSPAutoShotgun' DeathString="%k killed %o (M.C.Z. Thrower)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." bRagdollBullet=True bBulletHit=True FlashFog=(X=600.000000) KDamageImpulse=10000.000000 KDeathVel=300.000000 KDeathUpKick=100.000000 VehicleDamageScaling=0.700000
}
class NiceDamTypeSPShotgun extends NiceDamageTypeVetEnforcer
abstract;
defaultproperties
{
MaxPenetrations=5
PenDmgReduction=0.900000
bIsPowerWeapon=True
WeaponClass=Class'NicePack.NiceSPAutoShotgun'
DeathString="%k killed %o (M.C.Z. Thrower)."
FemaleSuicide="%o shot herself in the foot."
MaleSuicide="%o shot himself in the foot."
bRagdollBullet=True
bBulletHit=True
FlashFog=(X=600.000000)
KDamageImpulse=10000.000000
KDeathVel=300.000000
KDeathUpKick=100.000000
VehicleDamageScaling=0.700000
}

View file

@ -1,19 +1,72 @@
class NiceSPAutoShotgun extends NiceWeapon;
// Toggle semi/auto fire
simulated function DoToggle (){}
// Set the new fire mode on the server
function ServerChangeFireMode(bool bNewWaitForRelease){}
exec function SwitchModes(){}
simulated function WeaponTick(float dt)
{
local float SteamCharge;
local rotator DialRot;
super.WeaponTick(dt);
if(Level.NetMode!=NM_DedicatedServer){ if(FireMode[1].NextFireTime >= Level.TimeSeconds) SteamCharge = 1.0 - ((FireMode[1].NextFireTime - Level.TimeSeconds)/FireMode[1].FireRate); else SteamCharge = 1.0;
if(SteamCharge > 0.1 && FireMode[0].NextFireTime >= Level.TimeSeconds) SteamCharge -= 0.1 * ((FireMode[0].NextFireTime - Level.TimeSeconds)/FireMode[0].FireRate);
DialRot.roll = 26500 - ( 53000 * SteamCharge ); SetBoneRotation('Dail2',DialRot,1.0);
}
}
defaultproperties
{ reloadPreEndFrame=0.143000 reloadEndFrame=0.633000 reloadChargeEndFrame=-1.000000 reloadMagStartFrame=0.276000 reloadChargeStartFrame=-1.000000 MagCapacity=10 ReloadRate=2.640000 ReloadAnim="Reload" ReloadAnimRate=1.250000 WeaponReloadAnim="Reload_IJC_spJackHammer" Weight=7.000000 bHasAimingMode=True IdleAimAnim="Idle_Iron" StandardDisplayFOV=65.000000 SleeveNum=0 TraderInfoTexture=Texture'KF_IJC_HUD.Trader_Weapon_Icons.Trader_Jackhammer' MeshRef="KF_IJC_Summer_Weps1.Jackhammer" SkinRefs(0)="KF_Weapons_Trip_T.hands.hands_1stP_military_cmb" SkinRefs(1)="KF_IJC_Summer_Weapons.Jackhammer.jackhammer_cmb" SkinRefs(2)="KF_Weapons_Trip_T.Rifles.crossbow_cmb" SelectSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Select" HudImageRef="KF_IJC_HUD.WeaponSelect.Jackhammer_unselected" SelectedHudImageRef="KF_IJC_HUD.WeaponSelect.Jackhammer" PlayerIronSightFOV=80.000000 ZoomedDisplayFOV=45.000000 FireModeClass(0)=Class'NicePack.NiceSPShotgunFire' FireModeClass(1)=Class'NicePack.NiceSPShotgunAltFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 CurrentRating=0.550000 bShowChargingBar=True Description="A device for throwing lead and getting sodding enemies out of your face." EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000) DisplayFOV=65.000000 Priority=167 InventoryGroup=4 GroupOffset=15 PickupClass=Class'NicePack.NiceSPShotgunPickup' PlayerViewOffset=(X=20.000000,Y=23.000000,Z=-2.000000) BobDamping=6.000000 AttachmentClass=Class'NicePack.NiceSPShotgunAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="Multichamber ZED Thrower" TransientSoundVolume=1.250000
}
class NiceSPAutoShotgun extends NiceWeapon;
// Toggle semi/auto fire
simulated function DoToggle (){}
// Set the new fire mode on the server
function ServerChangeFireMode(bool bNewWaitForRelease){}
exec function SwitchModes(){}
simulated function WeaponTick(float dt)
{
local float SteamCharge;
local rotator DialRot;
super.WeaponTick(dt);
if(Level.NetMode!=NM_DedicatedServer){
if(FireMode[1].NextFireTime >= Level.TimeSeconds)
SteamCharge = 1.0 - ((FireMode[1].NextFireTime - Level.TimeSeconds)/FireMode[1].FireRate);
else
SteamCharge = 1.0;
if(SteamCharge > 0.1 && FireMode[0].NextFireTime >= Level.TimeSeconds)
SteamCharge -= 0.1 * ((FireMode[0].NextFireTime - Level.TimeSeconds)/FireMode[0].FireRate);
DialRot.roll = 26500 - ( 53000 * SteamCharge );
SetBoneRotation('Dail2',DialRot,1.0);
}
}
defaultproperties
{
reloadPreEndFrame=0.143000
reloadEndFrame=0.633000
reloadChargeEndFrame=-1.000000
reloadMagStartFrame=0.276000
reloadChargeStartFrame=-1.000000
MagCapacity=10
ReloadRate=2.640000
ReloadAnim="Reload"
ReloadAnimRate=1.250000
WeaponReloadAnim="Reload_IJC_spJackHammer"
Weight=7.000000
bHasAimingMode=True
IdleAimAnim="Idle_Iron"
StandardDisplayFOV=65.000000
SleeveNum=0
TraderInfoTexture=Texture'KF_IJC_HUD.Trader_Weapon_Icons.Trader_Jackhammer'
MeshRef="KF_IJC_Summer_Weps1.Jackhammer"
SkinRefs(0)="KF_Weapons_Trip_T.hands.hands_1stP_military_cmb"
SkinRefs(1)="KF_IJC_Summer_Weapons.Jackhammer.jackhammer_cmb"
SkinRefs(2)="KF_Weapons_Trip_T.Rifles.crossbow_cmb"
SelectSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Select"
HudImageRef="KF_IJC_HUD.WeaponSelect.Jackhammer_unselected"
SelectedHudImageRef="KF_IJC_HUD.WeaponSelect.Jackhammer"
PlayerIronSightFOV=80.000000
ZoomedDisplayFOV=45.000000
FireModeClass(0)=Class'NicePack.NiceSPShotgunFire'
FireModeClass(1)=Class'NicePack.NiceSPShotgunAltFire'
PutDownAnim="PutDown"
SelectForce="SwitchToAssaultRifle"
AIRating=0.550000
CurrentRating=0.550000
bShowChargingBar=True
Description="A device for throwing lead and getting sodding enemies out of your face."
EffectOffset=(X=100.000000,Y=25.000000,Z=-10.000000)
DisplayFOV=65.000000
Priority=167
InventoryGroup=4
GroupOffset=15
PickupClass=Class'NicePack.NiceSPShotgunPickup'
PlayerViewOffset=(X=20.000000,Y=23.000000,Z=-2.000000)
BobDamping=6.000000
AttachmentClass=Class'NicePack.NiceSPShotgunAttachment'
IconCoords=(X1=245,Y1=39,X2=329,Y2=79)
ItemName="Multichamber ZED Thrower"
TransientSoundVolume=1.250000
}

View file

@ -1,4 +1,8 @@
class NiceSPGrenadeAmmo extends SPGrenadeAmmo;
defaultproperties
{ AmmoPickupAmount=2 MaxAmmo=16 InitialAmount=8 PickupClass=Class'NicePack.NiceSPGrenadeAmmoPickup'
}
class NiceSPGrenadeAmmo extends SPGrenadeAmmo;
defaultproperties
{
AmmoPickupAmount=2
MaxAmmo=16
InitialAmount=8
PickupClass=Class'NicePack.NiceSPGrenadeAmmoPickup'
}

View file

@ -1,4 +1,6 @@
class NiceSPGrenadeAmmoPickup extends SPGrenadeAmmoPickup;
defaultproperties
{ AmmoAmount=2 InventoryType=Class'NicePack.NiceSPGrenadeAmmo'
}
class NiceSPGrenadeAmmoPickup extends SPGrenadeAmmoPickup;
defaultproperties
{
AmmoAmount=2
InventoryType=Class'NicePack.NiceSPGrenadeAmmo'
}

View file

@ -1,4 +1,6 @@
class NiceSPGrenadeFire extends SPGrenadeFire;
defaultproperties
{ AmmoClass=Class'NicePack.NiceSPGrenadeAmmo' ProjectileClass=Class'NicePack.NiceSPGrenadeProjectile'
}
class NiceSPGrenadeFire extends SPGrenadeFire;
defaultproperties
{
AmmoClass=Class'NicePack.NiceSPGrenadeAmmo'
ProjectileClass=Class'NicePack.NiceSPGrenadeProjectile'
}

View file

@ -1,4 +1,8 @@
class NiceSPGrenadeLauncher extends SPGrenadeLauncher;
defaultproperties
{ AppID=0 FireModeClass(0)=Class'NicePack.NiceSPGrenadeFire' PickupClass=Class'NicePack.NiceSPGrenadePickup' ItemName="The Orca Bomb Propeller NW"
}
class NiceSPGrenadeLauncher extends SPGrenadeLauncher;
defaultproperties
{
AppID=0
FireModeClass(0)=Class'NicePack.NiceSPGrenadeFire'
PickupClass=Class'NicePack.NiceSPGrenadePickup'
ItemName="The Orca Bomb Propeller NW"
}

View file

@ -1,4 +1,8 @@
class NiceSPGrenadePickup extends SPGrenadePickup;
defaultproperties
{ AmmoCost=12 ItemName="The Orca Bomb Propeller NW" ItemShortName="The Orca NW" InventoryType=Class'NicePack.NiceSPGrenadeLauncher'
}
class NiceSPGrenadePickup extends SPGrenadePickup;
defaultproperties
{
AmmoCost=12
ItemName="The Orca Bomb Propeller NW"
ItemShortName="The Orca NW"
InventoryType=Class'NicePack.NiceSPGrenadeLauncher'
}

View file

@ -1,5 +1,6 @@
class NiceSPGrenadeProjectile extends SPGrenadeProjectile;
#exec OBJ LOAD FILE=ProjectileSounds.uax
defaultproperties
{ Damage=450.000000
}
class NiceSPGrenadeProjectile extends SPGrenadeProjectile;
#exec OBJ LOAD FILE=ProjectileSounds.uax
defaultproperties
{
Damage=450.000000
}

View file

@ -1,54 +1,112 @@
class NiceSPShotgunAltFire extends NiceShotgunFire;
var InterpCurve AppliedMomentumCurve; // How much momentum to apply to a zed based on how much mass it has
var float WideDamageMinHitAngle; // The angle to do sweeping strikes in front of the player. If zero do no strikes
var float PushRange; // The range to push zeds away when firing
simulated function bool AllowFire(){
if(currentContext.sourceWeapon == none || KFPawn(Instigator) == none) return false;
if(currentContext.sourceWeapon.bIsReloading) return false;
if(KFPawn(Instigator).SecondaryItem!=none) return false;
if(KFPawn(Instigator).bThrowingNade) return false;
// No ammo so just always fire
return true;
}
// No need to client-side this one
function bool IsClientSide(){
return false;
}
// And there's nothing to force
function bool shouldFireProjectile(){
return false;
}
function DoFireEffect(){
local Vector StartProj, StartTrace, X,Y,Z;
local Rotator Aim;
local Vector HitLocation, HitNormal;
local Actor Other;
local Pawn Victims;
local vector dir, lookdir;
local float DiffAngle, VictimDist;
local float AppliedMomentum;
local vector vMomentum;
Instigator.MakeNoise(1.0);
Weapon.GetViewAxes(X,Y,Z);
StartTrace = Instigator.Location + Instigator.EyePosition();
StartProj = StartTrace + X*ProjSpawnOffset.X;
if (!Weapon.WeaponCentered() && !KFWeap.bAimingRifle) StartProj = StartProj + Weapon.Hand * Y*ProjSpawnOffset.Y + Z*ProjSpawnOffset.Z;
// check if projectile would spawn through a wall and adjust start location accordingly
Other = Weapon.Trace(HitLocation, HitNormal, StartProj, StartTrace, false);
if(Other != none) StartProj = HitLocation;
Aim = AdjustAim(StartProj, AimError);
if(WideDamageMinHitAngle > 0){ foreach Weapon.VisibleCollidingActors(class'Pawn', Victims, (PushRange * 2), StartTrace){ if(Victims.Health <= 0) continue; if(Victims != Instigator){ // Don't push team mates if(Victims.GetTeamNum() == Instigator.GetTeamNum()) continue; VictimDist = VSizeSquared(Instigator.Location - Victims.Location); if(VictimDist > (((PushRange * 1.1) * (PushRange * 1.1)) + (Victims.CollisionRadius * Victims.CollisionRadius))) continue;
lookdir = Normal(Vector(Instigator.GetViewRotation())); dir = Normal(Victims.Location - Instigator.Location); DiffAngle = lookdir dot dir; dir = Normal((Victims.Location + Victims.EyePosition()) - Instigator.Location);
if(DiffAngle > WideDamageMinHitAngle){ AppliedMomentum = InterpCurveEval(AppliedMomentumCurve,Victims.Mass); HandleAchievement( Victims );
vMomentum = (dir * AppliedMomentum)/Victims.Mass; Victims.AddVelocity(vMomentum); if(KFMonster(Victims) != none) KFMonster(Victims).BreakGrapple(); } } }
}
if(Instigator != none && Instigator.Physics == PHYS_Falling && Instigator.PhysicsVolume.Gravity.Z > class'PhysicsVolume'.default.Gravity.Z) Instigator.AddVelocity((KickMomentum * 10.0) >> Instigator.GetViewRotation());
}
function HandleAchievement(Pawn Victim){
local KFSteamStatsAndAchievements KFSteamStats;
if(Victim.IsA('NiceZombieScrake')){ if(PlayerController(Instigator.Controller) != none){ KFSteamStats = KFSteamStatsAndAchievements(PlayerController(Instigator.Controller).SteamStatsAndAchievements); if(KFSteamStats != none) KFSteamStats.CheckAndSetAchievementComplete(KFSteamStats.KFACHIEVEMENT_PushScrakeSPJ); }
}
}
defaultproperties
{ AppliedMomentumCurve=(Points=((OutVal=10000.000000),(InVal=350.000000,OutVal=175000.000000),(InVal=600.000000,OutVal=250000.000000))) WideDamageMinHitAngle=0.600000 PushRange=150.000000 ProjPerFire=0 KickMomentum=(X=-35.000000,Z=5.000000) maxVerticalRecoilAngle=3200 FireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Secondary_Fire_M" StereoFireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Secondary_Fire_S" NoAmmoSoundRef="KF_AA12Snd.AA12_DryFire" bWaitForRelease=False bModeExclusive=False FireAnimRate=1.000000 FireRate=1.200000 AmmoClass=None AmmoPerFire=0 ShakeRotMag=(Z=250.000000) ShakeRotTime=3.000000 ShakeOffsetMag=(Z=6.000000) ShakeOffsetTime=1.250000 BotRefireRate=1.750000 FlashEmitterClass=Class'ROEffects.MuzzleFlash1stSPShotgunAlt' Spread=0.000000
}
class NiceSPShotgunAltFire extends NiceShotgunFire;
var InterpCurve AppliedMomentumCurve; // How much momentum to apply to a zed based on how much mass it has
var float WideDamageMinHitAngle; // The angle to do sweeping strikes in front of the player. If zero do no strikes
var float PushRange; // The range to push zeds away when firing
simulated function bool AllowFire(){
if(currentContext.sourceWeapon == none || KFPawn(Instigator) == none)
return false;
if(currentContext.sourceWeapon.bIsReloading)
return false;
if(KFPawn(Instigator).SecondaryItem!=none)
return false;
if(KFPawn(Instigator).bThrowingNade)
return false;
// No ammo so just always fire
return true;
}
// No need to client-side this one
function bool IsClientSide(){
return false;
}
// And there's nothing to force
function bool shouldFireProjectile(){
return false;
}
function DoFireEffect(){
local Vector StartProj, StartTrace, X,Y,Z;
local Rotator Aim;
local Vector HitLocation, HitNormal;
local Actor Other;
local Pawn Victims;
local vector dir, lookdir;
local float DiffAngle, VictimDist;
local float AppliedMomentum;
local vector vMomentum;
Instigator.MakeNoise(1.0);
Weapon.GetViewAxes(X,Y,Z);
StartTrace = Instigator.Location + Instigator.EyePosition();
StartProj = StartTrace + X*ProjSpawnOffset.X;
if (!Weapon.WeaponCentered() && !KFWeap.bAimingRifle)
StartProj = StartProj + Weapon.Hand * Y*ProjSpawnOffset.Y + Z*ProjSpawnOffset.Z;
// check if projectile would spawn through a wall and adjust start location accordingly
Other = Weapon.Trace(HitLocation, HitNormal, StartProj, StartTrace, false);
if(Other != none)
StartProj = HitLocation;
Aim = AdjustAim(StartProj, AimError);
if(WideDamageMinHitAngle > 0){
foreach Weapon.VisibleCollidingActors(class'Pawn', Victims, (PushRange * 2), StartTrace){
if(Victims.Health <= 0)
continue;
if(Victims != Instigator){
// Don't push team mates
if(Victims.GetTeamNum() == Instigator.GetTeamNum())
continue;
VictimDist = VSizeSquared(Instigator.Location - Victims.Location);
if(VictimDist > (((PushRange * 1.1) * (PushRange * 1.1)) + (Victims.CollisionRadius * Victims.CollisionRadius)))
continue;
lookdir = Normal(Vector(Instigator.GetViewRotation()));
dir = Normal(Victims.Location - Instigator.Location);
DiffAngle = lookdir dot dir;
dir = Normal((Victims.Location + Victims.EyePosition()) - Instigator.Location);
if(DiffAngle > WideDamageMinHitAngle){
AppliedMomentum = InterpCurveEval(AppliedMomentumCurve,Victims.Mass);
HandleAchievement( Victims );
vMomentum = (dir * AppliedMomentum)/Victims.Mass;
Victims.AddVelocity(vMomentum);
if(KFMonster(Victims) != none)
KFMonster(Victims).BreakGrapple();
}
}
}
}
if(Instigator != none && Instigator.Physics == PHYS_Falling && Instigator.PhysicsVolume.Gravity.Z > class'PhysicsVolume'.default.Gravity.Z)
Instigator.AddVelocity((KickMomentum * 10.0) >> Instigator.GetViewRotation());
}
function HandleAchievement(Pawn Victim){
local KFSteamStatsAndAchievements KFSteamStats;
if(Victim.IsA('NiceZombieScrake')){
if(PlayerController(Instigator.Controller) != none){
KFSteamStats = KFSteamStatsAndAchievements(PlayerController(Instigator.Controller).SteamStatsAndAchievements);
if(KFSteamStats != none)
KFSteamStats.CheckAndSetAchievementComplete(KFSteamStats.KFACHIEVEMENT_PushScrakeSPJ);
}
}
}
defaultproperties
{
AppliedMomentumCurve=(Points=((OutVal=10000.000000),(InVal=350.000000,OutVal=175000.000000),(InVal=600.000000,OutVal=250000.000000)))
WideDamageMinHitAngle=0.600000
PushRange=150.000000
ProjPerFire=0
KickMomentum=(X=-35.000000,Z=5.000000)
maxVerticalRecoilAngle=3200
FireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Secondary_Fire_M"
StereoFireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Secondary_Fire_S"
NoAmmoSoundRef="KF_AA12Snd.AA12_DryFire"
bWaitForRelease=False
bModeExclusive=False
FireAnimRate=1.000000
FireRate=1.200000
AmmoClass=None
AmmoPerFire=0
ShakeRotMag=(Z=250.000000)
ShakeRotTime=3.000000
ShakeOffsetMag=(Z=6.000000)
ShakeOffsetTime=1.250000
BotRefireRate=1.750000
FlashEmitterClass=Class'ROEffects.MuzzleFlash1stSPShotgunAlt'
Spread=0.000000
}

View file

@ -1,5 +1,12 @@
class NiceSPShotgunAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=KillingFloorHUD.utx
defaultproperties
{ WeaponPickupClass=Class'NicePack.NiceSPShotgunPickup' AmmoPickupAmount=10 MaxAmmo=80 InitialAmount=20 PickupClass=Class'NicePack.NiceSPShotgunAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=451,Y1=445,X2=510,Y2=500)
}
class NiceSPShotgunAmmo extends NiceAmmo;
#EXEC OBJ LOAD FILE=KillingFloorHUD.utx
defaultproperties
{
WeaponPickupClass=Class'NicePack.NiceSPShotgunPickup'
AmmoPickupAmount=10
MaxAmmo=80
InitialAmount=20
PickupClass=Class'NicePack.NiceSPShotgunAmmoPickup'
IconMaterial=Texture'KillingFloorHUD.Generic.HUD'
IconCoords=(X1=451,Y1=445,X2=510,Y2=500)
}

View file

@ -1,4 +1,8 @@
class NiceSPShotgunAmmoPickup extends NiceAmmoPickup;
defaultproperties
{ AmmoAmount=10 InventoryType=Class'NicePack.NiceSPShotgunAmmo' PickupMessage="12-Gauge Drum" StaticMesh=None
}
class NiceSPShotgunAmmoPickup extends NiceAmmoPickup;
defaultproperties
{
AmmoAmount=10
InventoryType=Class'NicePack.NiceSPShotgunAmmo'
PickupMessage="12-Gauge Drum"
StaticMesh=None
}

View file

@ -1,4 +1,50 @@
class NiceSPShotgunAttachment extends NiceAttachment;
defaultproperties
{ mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdSPShotgun' MovementAnims(0)="JogF_AA12" MovementAnims(1)="JogB_AA12" MovementAnims(2)="JogL_AA12" MovementAnims(3)="JogR_AA12" TurnLeftAnim="TurnL_AA12" TurnRightAnim="TurnR_AA12" CrouchAnims(0)="CHWalkF_AA12" CrouchAnims(1)="CHWalkB_AA12" CrouchAnims(2)="CHWalkL_AA12" CrouchAnims(3)="CHWalkR_AA12" WalkAnims(0)="WalkF_AA12" WalkAnims(1)="WalkB_AA12" WalkAnims(2)="WalkL_AA12" WalkAnims(3)="WalkR_AA12" CrouchTurnRightAnim="CH_TurnR_AA12" CrouchTurnLeftAnim="CH_TurnL_AA12" IdleCrouchAnim="CHIdle_AA12" IdleWeaponAnim="Idle_AA12" IdleRestAnim="Idle_AA12" IdleChatAnim="Idle_AA12" IdleHeavyAnim="Idle_AA12" IdleRifleAnim="Idle_AA12" FireAnims(0)="Fire_AA12" FireAnims(1)="Fire_AA12" FireAnims(2)="Fire_AA12" FireAnims(3)="Fire_AA12" FireAltAnims(0)="Fire_AA12" FireAltAnims(1)="Fire_AA12" FireAltAnims(2)="Fire_AA12" FireAltAnims(3)="Fire_AA12" FireCrouchAnims(0)="CHFire_AA12" FireCrouchAnims(1)="CHFire_AA12" FireCrouchAnims(2)="CHFire_AA12" FireCrouchAnims(3)="CHFire_AA12" FireCrouchAltAnims(0)="CHFire_AA12" FireCrouchAltAnims(1)="CHFire_AA12" FireCrouchAltAnims(2)="CHFire_AA12" FireCrouchAltAnims(3)="CHFire_AA12" HitAnims(0)="HitF_AA12" HitAnims(1)="HitB_AA12" HitAnims(2)="HitL_AA12" HitAnims(3)="HitR_AA12" PostFireBlendStandAnim="Blend_AA12" PostFireBlendCrouchAnim="CHBlend_AA12" MeshRef="KF_Weapons3rd2_IJC.spJackHammer_3rd"
}
class NiceSPShotgunAttachment extends NiceAttachment;
defaultproperties
{
mMuzFlashClass=Class'ROEffects.MuzzleFlash3rdSPShotgun'
MovementAnims(0)="JogF_AA12"
MovementAnims(1)="JogB_AA12"
MovementAnims(2)="JogL_AA12"
MovementAnims(3)="JogR_AA12"
TurnLeftAnim="TurnL_AA12"
TurnRightAnim="TurnR_AA12"
CrouchAnims(0)="CHWalkF_AA12"
CrouchAnims(1)="CHWalkB_AA12"
CrouchAnims(2)="CHWalkL_AA12"
CrouchAnims(3)="CHWalkR_AA12"
WalkAnims(0)="WalkF_AA12"
WalkAnims(1)="WalkB_AA12"
WalkAnims(2)="WalkL_AA12"
WalkAnims(3)="WalkR_AA12"
CrouchTurnRightAnim="CH_TurnR_AA12"
CrouchTurnLeftAnim="CH_TurnL_AA12"
IdleCrouchAnim="CHIdle_AA12"
IdleWeaponAnim="Idle_AA12"
IdleRestAnim="Idle_AA12"
IdleChatAnim="Idle_AA12"
IdleHeavyAnim="Idle_AA12"
IdleRifleAnim="Idle_AA12"
FireAnims(0)="Fire_AA12"
FireAnims(1)="Fire_AA12"
FireAnims(2)="Fire_AA12"
FireAnims(3)="Fire_AA12"
FireAltAnims(0)="Fire_AA12"
FireAltAnims(1)="Fire_AA12"
FireAltAnims(2)="Fire_AA12"
FireAltAnims(3)="Fire_AA12"
FireCrouchAnims(0)="CHFire_AA12"
FireCrouchAnims(1)="CHFire_AA12"
FireCrouchAnims(2)="CHFire_AA12"
FireCrouchAnims(3)="CHFire_AA12"
FireCrouchAltAnims(0)="CHFire_AA12"
FireCrouchAltAnims(1)="CHFire_AA12"
FireCrouchAltAnims(2)="CHFire_AA12"
FireCrouchAltAnims(3)="CHFire_AA12"
HitAnims(0)="HitF_AA12"
HitAnims(1)="HitB_AA12"
HitAnims(2)="HitL_AA12"
HitAnims(3)="HitR_AA12"
PostFireBlendStandAnim="Blend_AA12"
PostFireBlendCrouchAnim="CHBlend_AA12"
MeshRef="KF_Weapons3rd2_IJC.spJackHammer_3rd"
}

View file

@ -1,4 +1,26 @@
class NiceSPShotgunFire extends NiceShotgunFire;
defaultproperties
{ KickMomentum=(X=-35.000000,Z=5.000000) ProjectileSpeed=3500.000000 maxVerticalRecoilAngle=1000 maxHorizontalRecoilAngle=500 ShellEjectClass=Class'ROEffects.KFShellEjectShotty' ShellEjectBoneName="Shell_eject" FireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Primary_Fire_M" StereoFireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Primary_Fire_S" NoAmmoSoundRef="KF_AA12Snd.AA12_DryFire" DamageType=Class'NicePack.NiceDamTypeSPShotgun' DamageMax=30 Momentum=60000.000000 bWaitForRelease=False FireAnimRate=1.200000 FireRate=0.292000 AmmoClass=Class'NicePack.NiceSPShotgunAmmo' ShakeRotMag=(Z=250.000000) ShakeRotTime=3.000000 ShakeOffsetMag=(Z=6.000000) ShakeOffsetTime=1.250000 BotRefireRate=0.250000 Spread=1500.000000
}
class NiceSPShotgunFire extends NiceShotgunFire;
defaultproperties
{
KickMomentum=(X=-35.000000,Z=5.000000)
ProjectileSpeed=3500.000000
maxVerticalRecoilAngle=1000
maxHorizontalRecoilAngle=500
ShellEjectClass=Class'ROEffects.KFShellEjectShotty'
ShellEjectBoneName="Shell_eject"
FireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Primary_Fire_M"
StereoFireSoundRef="KF_SP_ZEDThrowerSnd.KFO_Shotgun_Primary_Fire_S"
NoAmmoSoundRef="KF_AA12Snd.AA12_DryFire"
DamageType=Class'NicePack.NiceDamTypeSPShotgun'
DamageMax=30
Momentum=60000.000000
bWaitForRelease=False
FireAnimRate=1.200000
FireRate=0.292000
AmmoClass=Class'NicePack.NiceSPShotgunAmmo'
ShakeRotMag=(Z=250.000000)
ShakeRotTime=3.000000
ShakeOffsetMag=(Z=6.000000)
ShakeOffsetTime=1.250000
BotRefireRate=0.250000
Spread=1500.000000
}

View file

@ -1,4 +1,23 @@
class NiceSPShotgunPickup extends NiceWeaponPickup;
defaultproperties
{ Weight=7.000000 AmmoCost=30 BuyClipSize=8 PowerValue=60 SpeedValue=50 RangeValue=20 Description="A device for throwing lead and getting sodding enemies out of your face." ItemName="Multichamber ZED Thrower" ItemShortName="M.C.Z. Thrower" AmmoItemName="M.C.Z. Drum" CorrespondingPerkIndex=1 EquipmentCategoryID=3 InventoryType=Class'NicePack.NiceSPAutoShotgun' PickupMessage="You got the Multichamber Lead Thrower." PickupSound=Sound'KF_SP_ZEDThrowerSnd.KFO_Shotgun_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_IJC_Summer_Weps.Jackhammer' CollisionRadius=35.000000 CollisionHeight=5.000000
}
class NiceSPShotgunPickup extends NiceWeaponPickup;
defaultproperties
{
Weight=7.000000
AmmoCost=30
BuyClipSize=8
PowerValue=60
SpeedValue=50
RangeValue=20
Description="A device for throwing lead and getting sodding enemies out of your face."
ItemName="Multichamber ZED Thrower"
ItemShortName="M.C.Z. Thrower"
AmmoItemName="M.C.Z. Drum"
CorrespondingPerkIndex=1
EquipmentCategoryID=3
InventoryType=Class'NicePack.NiceSPAutoShotgun'
PickupMessage="You got the Multichamber Lead Thrower."
PickupSound=Sound'KF_SP_ZEDThrowerSnd.KFO_Shotgun_Pickup'
PickupForce="AssaultRiflePickup"
StaticMesh=StaticMesh'KF_IJC_Summer_Weps.Jackhammer'
CollisionRadius=35.000000
CollisionHeight=5.000000
}