upload
This commit is contained in:
parent
df19937a54
commit
513c60070e
@ -184,14 +184,32 @@ function FillWhatsNew()
|
||||
// Latest Update
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_TidalTerror", "LatestUpdate", "http://www.tripwireinteractive.com/redirect/KF2LatestUpdate/");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Ultimate Edition
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_UltimateEdition_Upgrade", "FeaturedItemBundle", "https://store.steampowered.com/app/1914560/KF2__Ultimate_Edition_Upgrade_DLC/");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// KF2 Armory Season Pass 2022
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_ArmorySeasonPassII", "ArmorySeasonPass", "https://store.steampowered.com/app/1914490/KF2__Season_Pass_2022");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// KF2 Armory Season Pass 2021
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Spring_Armory_Season_Pass", "ArmorySeasonPass", "https://store.steampowered.com/app/1524820/Killing_Floor_2__Armory_Season_Pass");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Weaponsbundle", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9369");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_ReductoRay", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9367");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Sentinel","FeaturedItemBundle","https://store.steampowered.com/buyitem/232090/9368");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Outfit Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_DeepSea_Explorer_Uniforms", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9366");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Time Limited Item
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_SS_PremiumTicket", "FeaturedEventItem", "https://store.steampowered.com/buyitem/232090/4928");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Full Gear
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_UltimateEdition", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9283");
|
||||
// Featured Weapon Skin Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_DeepSea_Weapon_Skin", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9364");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon Skin Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_NeonMKVIII_Weapon_Skin", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9362");
|
||||
@ -199,24 +217,9 @@ function FillWhatsNew()
|
||||
// Featured Weapon Skin Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Classic_Weapon_Skin", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9363");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon Skin Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_DeepSea_Weapon_Skin", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9364");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon Skin Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Chameleon_Weapon_Skin", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9365");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Outfit Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_DeepSea_Explorer_Uniforms", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9366");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_ReductoRay", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9367");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Sentinel","FeaturedItemBundle","https://store.steampowered.com/buyitem/232090/9368");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Featured Weapon Bundle
|
||||
item = SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_Summer2022_Weaponsbundle", "FeaturedItemBundle", "https://store.steampowered.com/buyitem/232090/9369");
|
||||
WhatsNewItems.AddItem(item);
|
||||
// Misc Community Links
|
||||
item=SetWhatsNewItem("img://UI_WhatsNew.UI_WhatsNew_CommunityHub", "Jaegorhorn", "https://steamcommunity.com/app/232090");
|
||||
WhatsNewItems.AddItem(item);
|
||||
|
@ -207,7 +207,7 @@ function SendItems(const out Array<ItemProperties> StoreItemArray)
|
||||
}
|
||||
else if (CurrentStoreFilter == EStore_Featured)
|
||||
{
|
||||
if (class'WorldInfo'.static.IsConsoleBuild())
|
||||
if (class'WorldInfo'.static.IsConsoleBuild() || class'WorldInfo'.static.IsEOSBuild())
|
||||
{
|
||||
for (j = 0; j < ConsoleFeaturedItemIDs.length; j++)
|
||||
{
|
||||
|
@ -64,7 +64,6 @@ function bool PopulateData()
|
||||
DataObject.SetString("label", WeeklyInfo.FriendlyName);
|
||||
if(WeeklyInfo.ModifierDescriptions.length > 0)
|
||||
{
|
||||
`Log("SETTING DESCRIPTION: " $WeeklyInfo.DescriptionStrings[0]);
|
||||
DataObject.SetString("description", WeeklyInfo.DescriptionStrings[0]);
|
||||
}
|
||||
DataObject.SetString("iconPath", "img://"$WeeklyInfo.IconPath);
|
||||
|
@ -2268,6 +2268,12 @@ simulated function NotifyWeeklyEventIndex(int EventIndex)
|
||||
bNetDirty = true;
|
||||
}
|
||||
|
||||
|
||||
simulated function bool IsGunGameMode()
|
||||
{
|
||||
return bIsWeeklyMode && CurrentWeeklyIndex == 16;
|
||||
}
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
TraderItemsPath="GP_Trader_ARCH.DefaultTraderItems"
|
||||
|
@ -500,7 +500,7 @@ function bool ClassNameIsInInventory(name ItemClassName, out Inventory out_Inven
|
||||
*/
|
||||
simulated function Weapon GetBestWeapon( optional bool bForceADifferentWeapon, optional bool allow9mm )
|
||||
{
|
||||
local KFWeapon W, BestWeapon;
|
||||
local KFWeapon W, BestWeapon, BackupGun;
|
||||
local float Rating, BestRating;
|
||||
|
||||
ForEach InventoryActors( class'KFWeapon', W )
|
||||
@ -521,6 +521,7 @@ simulated function Weapon GetBestWeapon( optional bool bForceADifferentWeapon, o
|
||||
{
|
||||
if (W.bIsBackupWeapon && !W.IsMeleeWeapon())
|
||||
{
|
||||
BackupGun = W;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@ -554,6 +555,11 @@ simulated function Weapon GetBestWeapon( optional bool bForceADifferentWeapon, o
|
||||
}
|
||||
}
|
||||
|
||||
if (BestWeapon != none && BestWeapon.bIsBackupWeapon && BestWeapon.IsMeleeWeapon() && BackupGun != none)
|
||||
{
|
||||
BestWeapon = BackupGun;
|
||||
}
|
||||
|
||||
return BestWeapon;
|
||||
}
|
||||
|
||||
|
@ -51,23 +51,22 @@ replication
|
||||
|
||||
function bool CanUsePickup()
|
||||
{
|
||||
local KFGameInfo KFGI;
|
||||
local int i;
|
||||
local bool has_armour;
|
||||
local KFGameReplicationInfo KFGRI;
|
||||
|
||||
KFGI = KFGameInfo( WorldInfo.Game );
|
||||
KFGRI = KFGameReplicationInfo( WorldInfo.GRI );
|
||||
|
||||
if (KFGI != none && KFGI.OutbreakEvent != none)
|
||||
if (KFGRI != none && KFGRI.IsGunGameMode())
|
||||
{
|
||||
if (KFGI.OutbreakEvent.ActiveEvent.bOnlyArmorItemPickup)
|
||||
has_armour = false;
|
||||
|
||||
for (i = 0 ; i < ItemPickups.Length ; i++)
|
||||
{
|
||||
for (i = 0 ; i < ItemPickups.Length ; i++)
|
||||
if (ItemPickups[i].ItemClass.Name == ArmorClassName)
|
||||
{
|
||||
if (ItemPickups[i].ItemClass.Name == ArmorClassName)
|
||||
{
|
||||
has_armour = true;
|
||||
break;
|
||||
}
|
||||
has_armour = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -182,23 +181,23 @@ function int ChooseWeaponPickup()
|
||||
local int i, DesiredItemIdx;
|
||||
local float Weight, TotalWeight, RandomWeight;
|
||||
local array<int> IndexList;
|
||||
local KFGameInfo KFGI;
|
||||
local KFGameReplicationInfo KFGRI;
|
||||
|
||||
KFGI = KFGameInfo(WorldInfo.Game);
|
||||
KFGRI = KFGameReplicationInfo( WorldInfo.GRI );
|
||||
|
||||
DesiredItemIdx = 255;
|
||||
if (KFGRI != none && KFGRI.IsGunGameMode())
|
||||
{
|
||||
DesiredItemIdx = 255;
|
||||
}
|
||||
|
||||
// Add up the total weight for all valid attacks
|
||||
for(i = 0; i < ItemPickups.Length; i++)
|
||||
{
|
||||
if (KFGI != none && KFGI.OutbreakEvent != none)
|
||||
if (KFGRI != none && KFGRI.IsGunGameMode())
|
||||
{
|
||||
if (KFGI.OutbreakEvent.ActiveEvent.bOnlyArmorItemPickup)
|
||||
if (ItemPickups[i].ItemClass.Name != 'KFInventory_Armor')
|
||||
{
|
||||
if (ItemPickups[i].ItemClass.Name != 'KFInventory_Armor')
|
||||
{
|
||||
continue;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
@ -240,23 +239,20 @@ simulated native function GetPickupMesh(class<KFWeapon> ItemClass);
|
||||
/** Use the pickups static mesh for this factory */
|
||||
simulated function SetPickupMesh()
|
||||
{
|
||||
local KFGameInfo KFGI;
|
||||
local KFGameReplicationInfo KFGRI;
|
||||
|
||||
if (PickupIndex >= ItemPickups.Length)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
KFGI = KFGameInfo(WorldInfo.Game);
|
||||
KFGRI = KFGameReplicationInfo( WorldInfo.GRI );
|
||||
|
||||
if (KFGI != none && KFGI.OutbreakEvent != none)
|
||||
if (KFGRI != none && KFGRI.IsGunGameMode())
|
||||
{
|
||||
if (KFGI.OutbreakEvent.ActiveEvent.bOnlyArmorItemPickup)
|
||||
if (ItemPickups[PickupIndex].ItemClass.Name != ArmorClassName)
|
||||
{
|
||||
if (ItemPickups[PickupIndex].ItemClass.Name != ArmorClassName)
|
||||
{
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@ -367,17 +363,16 @@ function GiveWeapon( Pawn P )
|
||||
function ActivateNewPickup(Pawn P)
|
||||
{
|
||||
local KFGameInfo KFGI;
|
||||
local KFGameReplicationInfo KFGRI;
|
||||
|
||||
KFGI = KFGameInfo( WorldInfo.Game );
|
||||
KFGRI = KFGameReplicationInfo( WorldInfo.GRI );
|
||||
KFGI = KFGameInfo(WorldInfo.Game);
|
||||
|
||||
if (KFGI != none && KFGI.OutbreakEvent != none)
|
||||
if (KFGRI != none && KFGRI.IsGunGameMode())
|
||||
{
|
||||
if (KFGI.OutbreakEvent.ActiveEvent.bOnlyArmorItemPickup)
|
||||
if (ItemPickups[PickupIndex].ItemClass.Name != ArmorClassName)
|
||||
{
|
||||
if (ItemPickups[PickupIndex].ItemClass.Name != ArmorClassName)
|
||||
{
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -141,7 +141,7 @@ function SetPickupItemList()
|
||||
local KFPickupFactory_Item ItemFactory;
|
||||
local int Idx;
|
||||
|
||||
if (OutbreakEvent.ActiveEvent.bOnlyArmorItemPickup)
|
||||
if (MyKFGRI.IsGunGameMode())
|
||||
{
|
||||
foreach AllActors(class'KFPickupFactory_Item', ItemFactory)
|
||||
{
|
||||
@ -600,8 +600,6 @@ function EndOfMatch(bool bVictory)
|
||||
{
|
||||
local KFPlayerController KFPC;
|
||||
|
||||
super.EndOfMatch(bVictory);
|
||||
|
||||
if (bVictory)
|
||||
{
|
||||
foreach WorldInfo.AllControllers(class'KFPlayerController', KFPC)
|
||||
@ -609,6 +607,8 @@ function EndOfMatch(bool bVictory)
|
||||
KFPC.CompletedWeeklySurvival();
|
||||
}
|
||||
}
|
||||
|
||||
super.EndOfMatch(bVictory);
|
||||
}
|
||||
|
||||
function StartWave()
|
||||
|
@ -438,7 +438,7 @@ defaultproperties
|
||||
GoompaStreakMax = 5,
|
||||
GoompaBonusDuration=8.0f, //10.0f,
|
||||
DoshOnKillGlobalModifier=1.0,
|
||||
SpawnWeaponList=KFGFxObject_TraderItems'GP_Trader_ARCH.AracnophobiaWeeklySpawnList',
|
||||
//SpawnWeaponList=KFGFxObject_TraderItems'GP_Trader_ARCH.AracnophobiaWeeklySpawnList',
|
||||
bAddSpawnListToLoadout=true,
|
||||
WaveAICountScale=(0.6, 0.6, 0.6, 0.6, 0.6, 0.6),
|
||||
JumpZ=700.f, // 650.0 by default; -1 used for not overriding.
|
||||
@ -1130,7 +1130,7 @@ defaultproperties
|
||||
, GrantedWeapons= {
|
||||
(
|
||||
class'KFGame.KFWeapDef_MedicRifle'
|
||||
, class'KFGame.KFWeapDef_HRG_EMP_ArcGenerator'
|
||||
, class'KFGame.KFWeapDef_HRG_BarrierRifle'
|
||||
, class'KFGame.KFWeapDef_HRG_Stunner'
|
||||
, class'KFGame.KFWeapDef_SCAR'
|
||||
)
|
||||
@ -1182,7 +1182,7 @@ defaultproperties
|
||||
class'KFGame.KFWeapDef_M32'
|
||||
, class'KFGame.KFWeapDef_LazerCutter'
|
||||
, class'KFGame.KFWeapDef_MicrowaveRifle'
|
||||
, class'KFGame.KFWeapDef_HRG_BarrierRifle'
|
||||
, class'KFGame.KFWeapDef_HRG_EMP_ArcGenerator'
|
||||
)
|
||||
}
|
||||
)
|
||||
|
@ -539,7 +539,7 @@ End Object
|
||||
IncapSettings(AF_Bleed)= (Vulnerability=(0.75)) //0.25
|
||||
IncapSettings(AF_Shrink)= (Vulnerability=(1.0))
|
||||
|
||||
ShrinkEffectModifier = 0.2f
|
||||
ShrinkEffectModifier = 0.1f
|
||||
|
||||
Begin Object Name=Afflictions_0
|
||||
FireFullyCharredDuration=5
|
||||
|
@ -74,7 +74,7 @@ defaultproperties
|
||||
IncapSettings(AF_Bleed)= (Vulnerability=(0.75))
|
||||
IncapSettings(AF_Shrink)= (Vulnerability=(1.0))
|
||||
|
||||
ShrinkEffectModifier = 0.3f
|
||||
ShrinkEffectModifier = 0.2f
|
||||
|
||||
ZEDCowboyHatAttachName=HEAD_Attach
|
||||
}
|
@ -286,7 +286,7 @@ defaultproperties
|
||||
IncapSettings(AF_Bleed)= (Vulnerability=(0.75)) //0.5
|
||||
IncapSettings(AF_Shrink)= (Vulnerability=(1.0)) // Normal Vulnerability
|
||||
|
||||
ShrinkEffectModifier = 0.2f
|
||||
ShrinkEffectModifier = 0.1f
|
||||
|
||||
Begin Object Name=Afflictions_0
|
||||
FireFullyCharredDuration=5
|
||||
|
@ -161,6 +161,7 @@ simulated function ProcessTouch(Actor Other, Vector HitLocation, Vector HitNorma
|
||||
local KFPawn KFP;
|
||||
local KFPawn_Human KFPH;
|
||||
local KFPlayerReplicationInfo KFPRI;
|
||||
local TraceHitInfo HitInfo;
|
||||
|
||||
KFPH = KFPawn_Human(Other);
|
||||
if ( KFPH != none && KFPH != Instigator)
|
||||
@ -173,7 +174,7 @@ simulated function ProcessTouch(Actor Other, Vector HitLocation, Vector HitNorma
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if ( Other != Instigator && Other.bCanBeDamaged && (!Other.bWorldGeometry || !Other.bStatic) )
|
||||
else if ( Other != Instigator && Other.bCanBeDamaged )
|
||||
{
|
||||
KFP = KFPawn( Other );
|
||||
if ( KFP != None )
|
||||
@ -191,7 +192,9 @@ simulated function ProcessTouch(Actor Other, Vector HitLocation, Vector HitNorma
|
||||
}
|
||||
else
|
||||
{
|
||||
ProcessDestructibleTouchOnBounce( Other, HitLocation, HitNormal );
|
||||
HitInfo.HitComponent = LastTouchComponent;
|
||||
HitInfo.Item = INDEX_None; // force TraceComponent on fractured meshes
|
||||
Other.TakeDamage(Damage, InstigatorController, HitLocation, MomentumTransfer * Normal(Velocity), MyDamageType, HitInfo, self);// special cases for types of destructibles, bShouldBreakSolidGlassOnBounce
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -256,6 +256,7 @@ simulated event SetWeaponSkin(int ItemId, optional bool bFinishedLoading = false
|
||||
}
|
||||
|
||||
SkinMICs = class'KFWeaponSkinList'.static.GetWeaponSkin(ItemId, WST_ThirdPerson);
|
||||
|
||||
if ( SkinMICs.Length > 0 )
|
||||
{
|
||||
WeapMesh.SetMaterial(0, SkinMICs[0]);
|
||||
|
@ -38,6 +38,8 @@ var repnotify float CurrentAmmoPercentage;
|
||||
const TransitionParamName = 'transition_full_to_empty';
|
||||
const EmptyParamName = 'Blinking_0_off___1_on';
|
||||
|
||||
var transient bool bDetonateLocked;
|
||||
|
||||
replication
|
||||
{
|
||||
if( bNetDirty )
|
||||
@ -270,9 +272,14 @@ simulated function BeginFire( byte FireModeNum )
|
||||
ClearPendingFire(DETONATE_FIREMODE);
|
||||
}
|
||||
|
||||
if (FireModeNum == DETONATE_FIREMODE && NumDeployedTurrets > 0)
|
||||
if (FireModeNum == DETONATE_FIREMODE )
|
||||
{
|
||||
if (bTurretReadyToUse)
|
||||
if (bDetonateLocked)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (NumDeployedTurrets > 0 && bTurretReadyToUse)
|
||||
{
|
||||
PrepareAndDetonate();
|
||||
}
|
||||
@ -567,6 +574,55 @@ simulated function SetWeaponUpgradeLevel(int WeaponUpgradeLevel)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* GRENADE FIRING
|
||||
* There's a bug that alt fire interrupts the grenade anim at any moment,
|
||||
* This avoids being able to altfire until the throw animation ends or the
|
||||
* interrupt notify is reached.
|
||||
*/
|
||||
|
||||
simulated state GrenadeFiring
|
||||
{
|
||||
simulated function EndState(Name NextStateName)
|
||||
{
|
||||
ClearDetonateLock();
|
||||
Super.EndState(NextStateName);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/** Play animation at the start of the GrenadeFiring state */
|
||||
simulated function PlayGrenadeThrow()
|
||||
{
|
||||
local name WeaponFireAnimName;
|
||||
local float InterruptTime;
|
||||
|
||||
PlayFiringSound(CurrentFireMode);
|
||||
|
||||
if( Instigator != none && Instigator.IsFirstPerson() )
|
||||
{
|
||||
WeaponFireAnimName = GetGrenadeThrowAnim();
|
||||
|
||||
if ( WeaponFireAnimName != '' )
|
||||
{
|
||||
InterruptTime = MySkelMesh.GetAnimInterruptTime(WeaponFireAnimName);
|
||||
PlayAnimation(WeaponFireAnimName, MySkelMesh.GetAnimLength(WeaponFireAnimName),,FireTweenTime);
|
||||
|
||||
bDetonateLocked = true;
|
||||
SetTimer(InterruptTime, false, nameof(ClearDetonateLock));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
simulated function ClearDetonateLock()
|
||||
{
|
||||
bDetonateLocked = false;
|
||||
ClearTimer(nameof(ClearDetonateLock));
|
||||
}
|
||||
|
||||
/***/
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Trader
|
||||
@ -645,7 +701,7 @@ defaultproperties
|
||||
InventorySize=3
|
||||
|
||||
DetonateAkEvent=AkEvent'ww_wep_autoturret.Play_WEP_AutoTurret_Detonate_Trigger'
|
||||
DryFireAkEvent=AkEvent'ww_wep_autoturret.Play_WEP_AutoTurret_Dry_Fire'
|
||||
|
||||
|
||||
// Weapon Upgrade stat boosts
|
||||
//WeaponUpgrades[1]=(IncrementDamage=1.05f,IncrementWeight=1)
|
||||
@ -662,4 +718,6 @@ defaultproperties
|
||||
WeaponUpgrades[1]=(Stats=((Stat=EWUS_Damage0, Scale=1.15f), (Stat=EWUS_Damage1, Scale=1.15f), (Stat=EWUS_Weight, Add=1)))
|
||||
WeaponUpgrades[2]=(Stats=((Stat=EWUS_Damage0, Scale=1.3f), (Stat=EWUS_Damage1, Scale=1.3f), (Stat=EWUS_Weight, Add=2)))
|
||||
NumBloodMapMaterials=3
|
||||
|
||||
bDetonateLocked=false
|
||||
}
|
||||
|
@ -293,6 +293,18 @@ simulated function PlayFireEffects( byte FireModeNum, optional vector HitLocatio
|
||||
}
|
||||
}
|
||||
|
||||
/** True if we want to override the looping fire sounds with fire sounds from another firemode */
|
||||
simulated function bool ShouldForceSingleFireSound()
|
||||
{
|
||||
// If this weapon has a single-shot firemode, disable looping fire sounds during zedtime
|
||||
if ( `IsInZedTime(Instigator) && SingleFireSoundIndex != 255 )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
// Shooting Animations
|
||||
@ -358,7 +370,7 @@ defaultproperties
|
||||
WeaponProjectiles(DEFAULT_FIREMODE)=class'KFProj_Bullet_Pistol9mm'
|
||||
InstantHitDamageTypes(DEFAULT_FIREMODE)=class'KFDT_Ballistic_AutoTurret'
|
||||
FireInterval(DEFAULT_FIREMODE)=+0.12 // 500 rpm
|
||||
InstantHitDamage(DEFAULT_FIREMODE)=8
|
||||
InstantHitDamage(DEFAULT_FIREMODE)=10
|
||||
Spread(DEFAULT_FIREMODE)=0.01
|
||||
FireOffset=(X=30,Y=4.5,Z=-4)
|
||||
|
||||
@ -373,6 +385,9 @@ defaultproperties
|
||||
WeaponFireSnd(DEFAULT_FIREMODE)=(DefaultCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shot_LP_3P', FirstPersonCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shot_LP_1P')
|
||||
WeaponFireLoopEndSnd(DEFAULT_FIREMODE)=(DefaultCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shot_EndLP_3P', FirstPersonCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shot_EndLP_1P')
|
||||
|
||||
WeaponFireSnd(ALTFIRE_FIREMODE)=(DefaultCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shoot_3P', FirstPersonCue=AkEvent'WW_WEP_Autoturret.Play_WEP_AutoTurret_Shoot_1P')
|
||||
SingleFireSoundIndex=ALTFIRE_FIREMODE
|
||||
|
||||
bLoopingFireSnd(DEFAULT_FIREMODE)=true
|
||||
bLoopingFireAnim(DEFAULT_FIREMODE)=true
|
||||
|
||||
|
@ -247,7 +247,7 @@ simulated function DetachWeapon()
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
AltAmmoFullRechargeSeconds=5
|
||||
AltAmmoFullRechargeSeconds=3.5
|
||||
|
||||
// Inventory / Grouping
|
||||
InventorySize=7
|
||||
|
@ -65,7 +65,7 @@ function AdjustDamage(out int InDamage, class<DamageType> DamageType, Actor Dama
|
||||
defaultproperties
|
||||
{
|
||||
// Inventory
|
||||
InventorySize=7
|
||||
InventorySize=6
|
||||
GroupPriority=70
|
||||
WeaponSelectTexture=Texture2D'WEP_UI_HRG_Crossboom_TEX.UI_WeaponSelect_Crossboom'
|
||||
AssociatedPerkClasses(0)=class'KFPerk_Demolitionist'
|
||||
|
Loading…
Reference in New Issue
Block a user