upload
This commit is contained in:
parent
2131b14e05
commit
2942d046da
@ -1619,6 +1619,12 @@ function StartBots()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function bool CanAssignDefaultWeaponsToPlayer(Controller NewPlayer)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Restart a player.
|
// Restart a player.
|
||||||
//
|
//
|
||||||
@ -1686,9 +1692,12 @@ function RestartPlayer(Controller NewPlayer)
|
|||||||
NewPlayer.ClientSetRotation(NewPlayer.Pawn.Rotation, TRUE);
|
NewPlayer.ClientSetRotation(NewPlayer.Pawn.Rotation, TRUE);
|
||||||
|
|
||||||
if (!WorldInfo.bNoDefaultInventoryForPlayer)
|
if (!WorldInfo.bNoDefaultInventoryForPlayer)
|
||||||
|
{
|
||||||
|
if (CanAssignDefaultWeaponsToPlayer(NewPlayer))
|
||||||
{
|
{
|
||||||
AddDefaultInventory(NewPlayer.Pawn);
|
AddDefaultInventory(NewPlayer.Pawn);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
SetPlayerDefaults(NewPlayer.Pawn);
|
SetPlayerDefaults(NewPlayer.Pawn);
|
||||||
|
|
||||||
// activate spawned events
|
// activate spawned events
|
||||||
|
@ -1456,6 +1456,11 @@ simulated event vector GetMuzzleLoc()
|
|||||||
*/
|
*/
|
||||||
simulated native event vector GetPhysicalFireStartLoc(optional vector AimDir);
|
simulated native event vector GetPhysicalFireStartLoc(optional vector AimDir);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function returns the world location for spawning the projectile.
|
||||||
|
*/
|
||||||
|
simulated native event vector GetFixedPhysicalFireStartLoc();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Put Down current weapon
|
* Put Down current weapon
|
||||||
* Once the weapon is put down, the InventoryManager will switch to InvManager.PendingWeapon.
|
* Once the weapon is put down, the InventoryManager will switch to InvManager.PendingWeapon.
|
||||||
|
@ -457,31 +457,32 @@ function int GetChunkArmorCost()
|
|||||||
|
|
||||||
function int FillArmor( )
|
function int FillArmor( )
|
||||||
{
|
{
|
||||||
local float ArmorPricePerPercent, FillCost;
|
local float FillCost, PercentBoughtUnit, PercentArmorBought;
|
||||||
local float PercentBoughtUnit, PercentArmorBought;
|
|
||||||
local int ActualArmorPointsAvailable;
|
local int ActualArmorPointsAvailable;
|
||||||
|
|
||||||
FillCost = GetFillArmorCost();
|
FillCost = GetFillArmorCost();
|
||||||
ActualArmorPointsAvailable = ArmorItem.MaxSpareAmmo - ArmorItem.SpareAmmoCount;
|
|
||||||
|
|
||||||
PercentBoughtUnit = float(ActualArmorPointsAvailable) / float(ArmorItem.MaxSpareAmmo);
|
|
||||||
PercentArmorBought = PercentBoughtUnit * 100.f;
|
|
||||||
|
|
||||||
// Buy as much armor as we possibly can
|
// Buy as much armor as we possibly can
|
||||||
if (FillCost > TotalDosh)
|
if (FillCost > TotalDosh)
|
||||||
{
|
{
|
||||||
ArmorPricePerPercent = ArmorItem.AmmoPricePerMagazine;
|
|
||||||
|
|
||||||
// Because we are using ints this will round down and we can get how much we actually spent
|
// Because we are using ints this will round down and we can get how much we actually spent
|
||||||
PercentArmorBought = TotalDosh / ArmorPricePerPercent;
|
|
||||||
PercentBoughtUnit = PercentArmorBought / 100.f;
|
ActualArmorPointsAvailable = FFloor(float(TotalDosh) / float(ArmorItem.AmmoPricePerMagazine));
|
||||||
FillCost = ArmorPricePerPercent * PercentArmorBought;
|
|
||||||
|
FillCost = ArmorItem.AmmoPricePerMagazine * ActualArmorPointsAvailable;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ActualArmorPointsAvailable = ArmorItem.MaxSpareAmmo - ArmorItem.SpareAmmoCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
PercentArmorBought = (PercentArmorBought > 0.f && PercentArmorBought < 1.f) ? 1.f : PercentArmorBought;
|
PercentBoughtUnit = float(ActualArmorPointsAvailable) / float(ArmorItem.MaxSpareAmmo);
|
||||||
|
PercentArmorBought = PercentBoughtUnit * 100.f;
|
||||||
|
|
||||||
ArmorItem.SpareAmmoCount = FMin( float(ArmorItem.SpareAmmoCount) + (PercentBoughtUnit * float(ArmorItem.MaxSpareAmmo)), float(ArmorItem.MaxSpareAmmo) );
|
ArmorItem.SpareAmmoCount = FMin( float(ArmorItem.SpareAmmoCount) + (PercentBoughtUnit * float(ArmorItem.MaxSpareAmmo)), float(ArmorItem.MaxSpareAmmo) );
|
||||||
|
|
||||||
BoughtAmmo(PercentArmorBought, FillCost, EIT_Armor);
|
BoughtAmmo(PercentArmorBought, FillCost, EIT_Armor);
|
||||||
|
|
||||||
return FillCost;
|
return FillCost;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -290,6 +290,15 @@ function SetItemInfo(out GFxObject ItemDataArray, STraderItem TraderItem, int Sl
|
|||||||
/** returns true if this item should not be displayed */
|
/** returns true if this item should not be displayed */
|
||||||
function bool IsItemFiltered(STraderItem Item, optional bool bDebug)
|
function bool IsItemFiltered(STraderItem Item, optional bool bDebug)
|
||||||
{
|
{
|
||||||
|
if(!class'GameEngine'.Static.IsGameFullyInstalled() && Item.WeaponDef.default.IsPlayGoHidden)
|
||||||
|
{
|
||||||
|
if (bDebug)
|
||||||
|
{
|
||||||
|
`log("is not fully installed this weapon is not available");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (KFPC.GetPurchaseHelper().IsInOwnedItemList(Item.ClassName))
|
if (KFPC.GetPurchaseHelper().IsInOwnedItemList(Item.ClassName))
|
||||||
{
|
{
|
||||||
if (bDebug)
|
if (bDebug)
|
||||||
|
@ -755,7 +755,7 @@ var byte StormCannonIDCounter;
|
|||||||
|
|
||||||
var transient bool bShotgunJumping;
|
var transient bool bShotgunJumping;
|
||||||
|
|
||||||
var int iAllowSeasonalSkins;
|
var bool bAllowSeasonalSkins;
|
||||||
|
|
||||||
|
|
||||||
cpptext
|
cpptext
|
||||||
@ -1008,7 +1008,7 @@ reliable server event PushV()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
simulated function int GetAllowSeasonalSkins()
|
simulated function bool GetAllowSeasonalSkins()
|
||||||
{
|
{
|
||||||
local KFGameReplicationInfo KFGRI;
|
local KFGameReplicationInfo KFGRI;
|
||||||
local bool bIsWWLWeekly, bIsAllowSeasonalSkins; // Situations that shouldn't allow seasonal overrides
|
local bool bIsWWLWeekly, bIsAllowSeasonalSkins; // Situations that shouldn't allow seasonal overrides
|
||||||
@ -1017,22 +1017,20 @@ simulated function int GetAllowSeasonalSkins()
|
|||||||
|
|
||||||
bIsWWLWeekly = KFGRI != none && KFGRI.bIsWeeklyMode && KFGRI.CurrentWeeklyIndex == 12;
|
bIsWWLWeekly = KFGRI != none && KFGRI.bIsWeeklyMode && KFGRI.CurrentWeeklyIndex == 12;
|
||||||
bIsAllowSeasonalSkins = KFGRI != none && KFGRI.bAllowSeasonalSkins;
|
bIsAllowSeasonalSkins = KFGRI != none && KFGRI.bAllowSeasonalSkins;
|
||||||
|
//`Log("GetAllowSeasonalSkins: AllowSeasonalSkins: "$bIsAllowSeasonalSkins$" WWLWeekly "$bIsWWLWeekly);
|
||||||
if(bIsWWLWeekly || bIsAllowSeasonalSkins == false)
|
if(bIsWWLWeekly || bIsAllowSeasonalSkins == false)
|
||||||
{
|
{
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
return 1;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
simulated event name GetSeasonalStateName()
|
simulated event name GetSeasonalStateName()
|
||||||
{
|
{
|
||||||
local int EventId, MapModifiedEventId;
|
local int EventId, MapModifiedEventId;
|
||||||
local KFMapInfo KFMI;
|
local KFMapInfo KFMI;
|
||||||
local bool bIsWWLWeekly, bIsAllowSeasonalSkins ; // Situations that shouldn't allow seasonal overrides
|
|
||||||
local KFGameReplicationInfo KFGRI;
|
|
||||||
|
|
||||||
EventId = class'KFGameEngine'.static.GetSeasonalEventID();
|
EventId = class'KFGameEngine'.static.GetSeasonalEventID();
|
||||||
`Log("GetSeasonalStateName: "$EventId);
|
|
||||||
|
|
||||||
MapModifiedEventId = SEI_None;
|
MapModifiedEventId = SEI_None;
|
||||||
|
|
||||||
@ -1042,16 +1040,13 @@ simulated event name GetSeasonalStateName()
|
|||||||
KFMI.ModifySeasonalEventId(MapModifiedEventId);
|
KFMI.ModifySeasonalEventId(MapModifiedEventId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bAllowSeasonalSkins = GetAllowSeasonalSkins();
|
||||||
|
|
||||||
|
`Log("GetSeasonalStateName: "$EventId$" AllowSeasonalSkins: "$bAllowSeasonalSkins);
|
||||||
|
|
||||||
if (MapModifiedEventId == SEI_None)
|
if (MapModifiedEventId == SEI_None)
|
||||||
{
|
{
|
||||||
KFGRI = KFGameReplicationInfo(WorldInfo.GRI);
|
if (bAllowSeasonalSkins == false)
|
||||||
|
|
||||||
bIsWWLWeekly = KFGRI != none && KFGRI.bIsWeeklyMode && KFGRI.CurrentWeeklyIndex == 12;
|
|
||||||
|
|
||||||
bIsAllowSeasonalSkins = KFGRI != none && KFGRI.bAllowSeasonalSkins;
|
|
||||||
|
|
||||||
`Log("GetSeasonalStateName: AllowSeasonalSkins: "$bIsAllowSeasonalSkins$" WWLWeekly "$bIsWWLWeekly);
|
|
||||||
if (bIsWWLWeekly || bIsAllowSeasonalSkins == false)
|
|
||||||
{
|
{
|
||||||
EventId = SEI_None;
|
EventId = SEI_None;
|
||||||
}
|
}
|
||||||
@ -5289,9 +5284,8 @@ event PlayerTick( float DeltaTime )
|
|||||||
{
|
{
|
||||||
super.PlayerTick(DeltaTime);
|
super.PlayerTick(DeltaTime);
|
||||||
|
|
||||||
if(iAllowSeasonalSkins != GetAllowSeasonalSkins())
|
if(bAllowSeasonalSkins != GetAllowSeasonalSkins())
|
||||||
{
|
{
|
||||||
iAllowSeasonalSkins = GetAllowSeasonalSkins();
|
|
||||||
UpdateSeasonalState();
|
UpdateSeasonalState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -12382,5 +12376,5 @@ defaultproperties
|
|||||||
|
|
||||||
StormCannonIDCounter = 0
|
StormCannonIDCounter = 0
|
||||||
bShotgunJumping = false
|
bShotgunJumping = false
|
||||||
iAllowSeasonalSkins = -1
|
bAllowSeasonalSkins = false
|
||||||
}
|
}
|
||||||
|
@ -42,6 +42,8 @@ simulated function ProcessTouch(Actor Other, Vector HitLocation, Vector HitNorma
|
|||||||
local InterpCurveFloat PenetrationCurve;
|
local InterpCurveFloat PenetrationCurve;
|
||||||
local KFWeapon KFW;
|
local KFWeapon KFW;
|
||||||
|
|
||||||
|
bPassThrough = false;
|
||||||
|
|
||||||
if (Other != Instigator)
|
if (Other != Instigator)
|
||||||
{
|
{
|
||||||
if(IgnoreTouchActor == Other)
|
if(IgnoreTouchActor == Other)
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=60 // 27
|
AmmoPricePerMag=60 // 27
|
||||||
ImagePath="WEP_UI_AutoTurret_TEX.UI_WeaponSelect_AutoTurret"
|
ImagePath="WEP_UI_AutoTurret_TEX.UI_WeaponSelect_AutoTurret"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=18
|
EffectiveRange=18
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=38 //32
|
AmmoPricePerMag=38 //32
|
||||||
ImagePath="WEP_UI_BladedPistol_TEX.UI_WeaponSelect_BladedPistol"
|
ImagePath="WEP_UI_BladedPistol_TEX.UI_WeaponSelect_BladedPistol"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=25
|
EffectiveRange=25
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -22,6 +22,8 @@ defaultproperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_Blunderbuss_TEX.UI_WeaponSelect_BlunderBluss"
|
ImagePath="WEP_UI_Blunderbuss_TEX.UI_WeaponSelect_BlunderBluss"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=95 // Based on comment Slightly less than M79 Grenade Launcher
|
EffectiveRange=95 // Based on comment Slightly less than M79 Grenade Launcher
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
BuyPrice=850
|
BuyPrice=850
|
||||||
ImagePath="Wep_UI_ChainBat_TEX.UI_WeaponSelect_RRChainbat"
|
ImagePath="Wep_UI_ChainBat_TEX.UI_WeaponSelect_RRChainbat"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=2
|
EffectiveRange=2
|
||||||
|
|
||||||
UpgradePrice[0]=600
|
UpgradePrice[0]=600
|
||||||
|
@ -18,6 +18,9 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=17
|
AmmoPricePerMag=17
|
||||||
ImagePath="wep_ui_chiapparhino_tex.UI_WeaponSelect_ChiappaRhinos"
|
ImagePath="wep_ui_chiapparhino_tex.UI_WeaponSelect_ChiappaRhinos"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=34
|
AmmoPricePerMag=34
|
||||||
ImagePath="wep_ui_chiapparhino_tex.UI_WeaponSelect_DualChiappaRhinos"
|
ImagePath="wep_ui_chiapparhino_tex.UI_WeaponSelect_DualChiappaRhinos"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -22,6 +22,8 @@ defaultproperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_CompoundBow_TEX.UI_WeaponSelect_Compound_Bow"
|
ImagePath="WEP_UI_CompoundBow_TEX.UI_WeaponSelect_Compound_Bow"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=80
|
EffectiveRange=80
|
||||||
|
|
||||||
SharedUnlockId=SCU_CompoundBow
|
SharedUnlockId=SCU_CompoundBow
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
BuyPrice=400 //600 //750
|
BuyPrice=400 //600 //750
|
||||||
ImagePath="WEP_UI_Doshinegun_TEX.UI_Weapon_Select_Doshinegun"
|
ImagePath="WEP_UI_Doshinegun_TEX.UI_Weapon_Select_Doshinegun"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=68
|
EffectiveRange=68
|
||||||
|
|
||||||
UpgradePrice[0]=600
|
UpgradePrice[0]=600
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=76 //64
|
AmmoPricePerMag=76 //64
|
||||||
ImagePath="WEP_UI_Dual_BladedPistol_TEX.UI_WeaponSelect_Dual_BladedPistol"
|
ImagePath="WEP_UI_Dual_BladedPistol_TEX.UI_WeaponSelect_Dual_BladedPistol"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -23,6 +23,8 @@ defaultproperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_Famas_TEX.UI_WeaponSelect_Famas"
|
ImagePath="WEP_UI_Famas_TEX.UI_WeaponSelect_Famas"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=67 // @TODO: ¿?¿?¿?
|
EffectiveRange=67 // @TODO: ¿?¿?¿?
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=24
|
AmmoPricePerMag=24
|
||||||
ImagePath="WEP_UI_RiotShield_TEX.UI_WeaponSelect_RiotShield"
|
ImagePath="WEP_UI_RiotShield_TEX.UI_WeaponSelect_RiotShield"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=36
|
AmmoPricePerMag=36
|
||||||
ImagePath="wep_ui_g36c_tex.UI_WeaponSelect_G36C"
|
ImagePath="wep_ui_g36c_tex.UI_WeaponSelect_G36C"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -21,6 +21,8 @@ defaultproperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_Gravity_Imploder_TEX.UI_WeaponSelect_Gravity_Imploder"
|
ImagePath="WEP_UI_Gravity_Imploder_TEX.UI_WeaponSelect_Gravity_Imploder"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=95 // Based on comment Slightly less than M79 Grenade Launcher
|
EffectiveRange=95 // Based on comment Slightly less than M79 Grenade Launcher
|
||||||
|
|
||||||
SharedUnlockId=SCU_GravityImploder
|
SharedUnlockId=SCU_GravityImploder
|
||||||
|
@ -20,6 +20,8 @@ DefaultProperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_HRG_IncendiaryRifle_TEX.UI_WeaponSelect_HRG_IncendiaryRifle"
|
ImagePath="WEP_UI_HRG_IncendiaryRifle_TEX.UI_WeaponSelect_HRG_IncendiaryRifle"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=68
|
EffectiveRange=68
|
||||||
|
|
||||||
SecondaryAmmoMagSize=1
|
SecondaryAmmoMagSize=1
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=14
|
AmmoPricePerMag=14
|
||||||
ImagePath="WEP_UI_HRG_Incision_Item_TEX.UI_WeaponSelect_HRG_Incision"
|
ImagePath="WEP_UI_HRG_Incision_Item_TEX.UI_WeaponSelect_HRG_Incision"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100
|
EffectiveRange=100
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -19,6 +19,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag= 12 //14
|
AmmoPricePerMag= 12 //14
|
||||||
ImagePath="WEP_UI_HRGScorcher_Pistol_TEX.UI_WeaponSelect_HRGScorcher"
|
ImagePath="WEP_UI_HRGScorcher_Pistol_TEX.UI_WeaponSelect_HRGScorcher"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100 // Based on comment Slightly less than M79 Grenade Launcher
|
EffectiveRange=100 // Based on comment Slightly less than M79 Grenade Launcher
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -19,6 +19,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=62 //30
|
AmmoPricePerMag=62 //30
|
||||||
ImagePath="WEP_UI_HRG_Teslauncher_TEX.UI_WeaponSelect_HRG_Teslauncher"
|
ImagePath="WEP_UI_HRG_Teslauncher_TEX.UI_WeaponSelect_HRG_Teslauncher"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=68
|
EffectiveRange=68
|
||||||
|
|
||||||
SecondaryAmmoMagSize=1
|
SecondaryAmmoMagSize=1
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=13 //12
|
AmmoPricePerMag=13 //12
|
||||||
ImagePath="WEP_UI_HRG_Winterbite_Item_TEX.UI_WeaponSelect_HRG_Winterbite"
|
ImagePath="WEP_UI_HRG_Winterbite_Item_TEX.UI_WeaponSelect_HRG_Winterbite"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=600
|
UpgradePrice[0]=600
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=26 //24
|
AmmoPricePerMag=26 //24
|
||||||
ImagePath="WEP_UI_Dual_Winterbite_Item_TEX.UI_WeaponSelect_HRG_DualWinterbite"
|
ImagePath="WEP_UI_Dual_Winterbite_Item_TEX.UI_WeaponSelect_HRG_DualWinterbite"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=600
|
UpgradePrice[0]=600
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=40
|
AmmoPricePerMag=40
|
||||||
ImagePath="WEP_UI_HRG_BallisticBouncer_TEX.UI_WeaponSelect_HRG_BallisticBouncer"
|
ImagePath="WEP_UI_HRG_BallisticBouncer_TEX.UI_WeaponSelect_HRG_BallisticBouncer"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=55
|
AmmoPricePerMag=55
|
||||||
ImagePath="wep_ui_hrg_barrierrifle_tex.UI_WeaponSelect_HRG_BarrierRifle"
|
ImagePath="wep_ui_hrg_barrierrifle_tex.UI_WeaponSelect_HRG_BarrierRifle"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=68
|
EffectiveRange=68
|
||||||
|
|
||||||
//UpgradePrice[0]=1500
|
//UpgradePrice[0]=1500
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_HRG_BlastBrawlers_TEX.UI_WeaponSelect_HRG_BlastBrawlers"
|
ImagePath="WEP_UI_HRG_BlastBrawlers_TEX.UI_WeaponSelect_HRG_BlastBrawlers"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=15
|
EffectiveRange=15
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=30 //50
|
AmmoPricePerMag=30 //50
|
||||||
ImagePath="WEP_UI_HRG_Boomy_TEX.UI_WeaponSelect_HRG_Boomy"
|
ImagePath="WEP_UI_HRG_Boomy_TEX.UI_WeaponSelect_HRG_Boomy"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=600
|
UpgradePrice[0]=600
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
ImagePath="wep_ui_hrg_cranialpopper_tex.UI_WeaponSelect_HRG_CranialPopper"
|
ImagePath="wep_ui_hrg_cranialpopper_tex.UI_WeaponSelect_HRG_CranialPopper"
|
||||||
EffectiveRange=90
|
EffectiveRange=90
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
UpgradePrice[1]=1500
|
UpgradePrice[1]=1500
|
||||||
|
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=14
|
AmmoPricePerMag=14
|
||||||
ImagePath="WEP_UI_HRG_Crossboom_TEX.UI_WeaponSelect_Crossboom"
|
ImagePath="WEP_UI_HRG_Crossboom_TEX.UI_WeaponSelect_Crossboom"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=80
|
EffectiveRange=80
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=25
|
AmmoPricePerMag=25
|
||||||
ImagePath="WEP_UI_HRG_MegaDragonsbreath_TEX.UI_WeaponSelect_HRG_MegaDragonsbreath"
|
ImagePath="WEP_UI_HRG_MegaDragonsbreath_TEX.UI_WeaponSelect_HRG_MegaDragonsbreath"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=25
|
EffectiveRange=25
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=110 //66
|
AmmoPricePerMag=110 //66
|
||||||
ImagePath="WEP_UI_HRG_ArcGenerator_TEX.UI_WeaponSelect_HRG_ArcGenerator"
|
ImagePath="WEP_UI_HRG_ArcGenerator_TEX.UI_WeaponSelect_HRG_ArcGenerator"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=70 //65
|
AmmoPricePerMag=70 //65
|
||||||
ImagePath="WEP_UI_HRG_Energy_TEX.UI_WeaponSelect_HRG_Energy"
|
ImagePath="WEP_UI_HRG_Energy_TEX.UI_WeaponSelect_HRG_Energy"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=50
|
EffectiveRange=50
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -20,6 +20,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=15
|
AmmoPricePerMag=15
|
||||||
ImagePath="WEP_UI_HRG_Kaboomstick_TEX.UI_WeaponSelect_HRG_Kaboomstick"
|
ImagePath="WEP_UI_HRG_Kaboomstick_TEX.UI_WeaponSelect_HRG_Kaboomstick"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=40 //15
|
EffectiveRange=40 //15
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=40
|
AmmoPricePerMag=40
|
||||||
ImagePath="wep_ui_hrg_locust_tex.UI_WeaponSelect_HRG_Locust"
|
ImagePath="wep_ui_hrg_locust_tex.UI_WeaponSelect_HRG_Locust"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100
|
EffectiveRange=100
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=25
|
AmmoPricePerMag=25
|
||||||
ImagePath="WEP_UI_HRG_MedicMissile_TEX.UI_WeaponSelect_HRG_MedicMissile"
|
ImagePath="WEP_UI_HRG_MedicMissile_TEX.UI_WeaponSelect_HRG_MedicMissile"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100
|
EffectiveRange=100
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=65 //75
|
AmmoPricePerMag=65 //75
|
||||||
ImagePath="WEP_UI_HRG_SonicGun_TEX.UI_WeaponSelect_HRG_SonicGun"
|
ImagePath="WEP_UI_HRG_SonicGun_TEX.UI_WeaponSelect_HRG_SonicGun"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=36
|
AmmoPricePerMag=36
|
||||||
ImagePath="ui_weaponselect_tex.UI_WeaponSelect_AA12"
|
ImagePath="ui_weaponselect_tex.UI_WeaponSelect_AA12"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=60 //70
|
AmmoPricePerMag=60 //70
|
||||||
ImagePath="WEP_UI_HRG_Vampire_TEX.UI_WeaponSelect_HRG_Vampire"
|
ImagePath="WEP_UI_HRG_Vampire_TEX.UI_WeaponSelect_HRG_Vampire"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=70
|
EffectiveRange=70
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -15,6 +15,9 @@ DefaultProperties
|
|||||||
BuyPrice=1400
|
BuyPrice=1400
|
||||||
AmmoPricePerMag=40
|
AmmoPricePerMag=40
|
||||||
ImagePath="wep_ui_hvstormcannon_tex.UI_WeaponSelect_HVStormCannon"
|
ImagePath="wep_ui_hvstormcannon_tex.UI_WeaponSelect_HVStormCannon"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100
|
EffectiveRange=100
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=70
|
AmmoPricePerMag=70
|
||||||
ImagePath="Wep_UI_HRG_Healthrower_TEX.UI_WeaponSelect_HRG_Healthrower"
|
ImagePath="Wep_UI_HRG_Healthrower_TEX.UI_WeaponSelect_HRG_Healthrower"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=17
|
EffectiveRange=17
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -14,6 +14,9 @@ DefaultProperties
|
|||||||
BuyPrice=2000
|
BuyPrice=2000
|
||||||
ImagePath="WEP_UI_Ion_Sword_TEX.UI_WeaponSelect_IonSword"
|
ImagePath="WEP_UI_Ion_Sword_TEX.UI_WeaponSelect_IonSword"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
|
|
||||||
EffectiveRange=5
|
EffectiveRange=5
|
||||||
|
|
||||||
SharedUnlockId=SCU_IonThruster
|
SharedUnlockId=SCU_IonThruster
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag =36 //42
|
AmmoPricePerMag =36 //42
|
||||||
ImagePath = "WEP_UI_Mine_Reconstructor_TEX.UI_WeaponSelect_HMTechMineReconstructor"
|
ImagePath = "WEP_UI_Mine_Reconstructor_TEX.UI_WeaponSelect_HMTechMineReconstructor"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange = 50
|
EffectiveRange = 50
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag= 90//125 //175 //250
|
AmmoPricePerMag= 90//125 //175 //250
|
||||||
ImagePath="WEP_UI_Minigun_TEX.UI_WeaponSelect_Minigun"
|
ImagePath="WEP_UI_Minigun_TEX.UI_WeaponSelect_Minigun"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=68 // Stoner63A Range
|
EffectiveRange=68 // Stoner63A Range
|
||||||
|
|
||||||
SharedUnlockId=SCU_Minigun
|
SharedUnlockId=SCU_Minigun
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=42
|
AmmoPricePerMag=42
|
||||||
ImagePath="wep_ui_mosin_tex.UI_WeaponSelect_MosinNagant"
|
ImagePath="wep_ui_mosin_tex.UI_WeaponSelect_MosinNagant"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=90
|
EffectiveRange=90
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -19,6 +19,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=45
|
AmmoPricePerMag=45
|
||||||
ImagePath="WEP_UI_HRG_Nailgun_PDW_TEX.UI_WeaponSelect_HRG_Nailgun_PDW"
|
ImagePath="WEP_UI_HRG_Nailgun_PDW_TEX.UI_WeaponSelect_HRG_Nailgun_PDW"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=55
|
EffectiveRange=55
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -14,6 +14,8 @@ defaultproperties
|
|||||||
WeaponClassPath="KFGameContent.KFWeap_Rifle_ParasiteImplanter"
|
WeaponClassPath="KFGameContent.KFWeap_Rifle_ParasiteImplanter"
|
||||||
ImagePath="wep_ui_parasiteimplanter_tex.UI_WeaponSelect_ParasiteImplanter"
|
ImagePath="wep_ui_parasiteimplanter_tex.UI_WeaponSelect_ParasiteImplanter"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
BuyPrice=1500
|
BuyPrice=1500
|
||||||
AmmoPricePerMag=42
|
AmmoPricePerMag=42
|
||||||
EffectiveRange=90
|
EffectiveRange=90
|
||||||
|
@ -21,6 +21,8 @@ DefaultProperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_Dual_G18C_TEX.UI_WeaponSelect_Dual_G18C"
|
ImagePath="WEP_UI_Dual_G18C_TEX.UI_WeaponSelect_Dual_G18C"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
UpgradeSellPrice[0]=1125
|
UpgradeSellPrice[0]=1125
|
||||||
|
|
||||||
|
@ -21,6 +21,8 @@ DefaultProperties
|
|||||||
|
|
||||||
ImagePath="WEP_UI_G18C_TEX.UI_WeaponSelect_G18C"
|
ImagePath="WEP_UI_G18C_TEX.UI_WeaponSelect_G18C"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
UpgradeSellPrice[0]=1125
|
UpgradeSellPrice[0]=1125
|
||||||
|
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=39 //36
|
AmmoPricePerMag=39 //36
|
||||||
ImagePath="WEP_UI_Frost_Shotgun_Axe_TEX.UI_WeaponSelect_FrostGun"
|
ImagePath="WEP_UI_Frost_Shotgun_Axe_TEX.UI_WeaponSelect_FrostGun"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=35
|
EffectiveRange=35
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=42
|
AmmoPricePerMag=42
|
||||||
ImagePath="WEP_UI_Dual_HRG_SW_500_TEX.UI_WeaponSelect_HRG_DualSW500"
|
ImagePath="WEP_UI_Dual_HRG_SW_500_TEX.UI_WeaponSelect_HRG_DualSW500"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=15
|
EffectiveRange=15
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -18,6 +18,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=21
|
AmmoPricePerMag=21
|
||||||
ImagePath="WEP_UI_HRG_SW_500_TEX.UI_WeaponSelect_HRG_SW500"
|
ImagePath="WEP_UI_HRG_SW_500_TEX.UI_WeaponSelect_HRG_SW500"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=15
|
EffectiveRange=15
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -15,6 +15,8 @@ DefaultProperties
|
|||||||
BuyPrice=1500
|
BuyPrice=1500
|
||||||
ImagePath="WEP_UI_Scythe_TEX.UI_WeaponSelect_Scythe"
|
ImagePath="WEP_UI_Scythe_TEX.UI_WeaponSelect_Scythe"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=5
|
EffectiveRange=5
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=50
|
AmmoPricePerMag=50
|
||||||
ImagePath="WEP_UI_ShrinkRay_Gun_TEX.UI_Weapon_Select_Shrink_Ray_Gun"
|
ImagePath="WEP_UI_ShrinkRay_Gun_TEX.UI_Weapon_Select_Shrink_Ray_Gun"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=12
|
EffectiveRange=12
|
||||||
|
|
||||||
UpgradePrice[0]=700
|
UpgradePrice[0]=700
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=78
|
AmmoPricePerMag=78
|
||||||
ImagePath="WEP_UI_Thermite_TEX.UI_WeaponSelect_Thermite"
|
ImagePath="WEP_UI_Thermite_TEX.UI_WeaponSelect_Thermite"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=78
|
EffectiveRange=78
|
||||||
|
|
||||||
UpgradePrice[0]=1500
|
UpgradePrice[0]=1500
|
||||||
|
@ -16,6 +16,8 @@ DefaultProperties
|
|||||||
AmmoPricePerMag=75
|
AmmoPricePerMag=75
|
||||||
ImagePath="wep_ui_zedmkiii_tex.UI_WeaponSelect_ZEDMKIII"
|
ImagePath="wep_ui_zedmkiii_tex.UI_WeaponSelect_ZEDMKIII"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=100
|
EffectiveRange=100
|
||||||
|
|
||||||
SharedUnlockId=SCU_ZedMKIII
|
SharedUnlockId=SCU_ZedMKIII
|
||||||
|
@ -17,6 +17,8 @@ DefaultProperties
|
|||||||
BuyPrice=1300
|
BuyPrice=1300
|
||||||
ImagePath="WEP_UI_Zweihander_TEX.UI_WeaponSelect_Zweihander"
|
ImagePath="WEP_UI_Zweihander_TEX.UI_WeaponSelect_Zweihander"
|
||||||
|
|
||||||
|
IsPlayGoHidden=true;
|
||||||
|
|
||||||
EffectiveRange=3
|
EffectiveRange=3
|
||||||
|
|
||||||
SharedUnlockId=SCU_Zweihander
|
SharedUnlockId=SCU_Zweihander
|
||||||
|
@ -858,6 +858,8 @@ var config bool bLogAmmo;
|
|||||||
/** Log weapon upgrade system. */
|
/** Log weapon upgrade system. */
|
||||||
var const bool bLogWeaponUpgrade;
|
var const bool bLogWeaponUpgrade;
|
||||||
|
|
||||||
|
var const bool UseFixedPhysicalFireLocation;
|
||||||
|
|
||||||
/*********************************************************************************************
|
/*********************************************************************************************
|
||||||
* @name Weapon Upgrade System
|
* @name Weapon Upgrade System
|
||||||
*********************************************************************************************/
|
*********************************************************************************************/
|
||||||
@ -3938,7 +3940,14 @@ static simulated function class<KFProjectile> GetKFProjectileClassByFiringMode(i
|
|||||||
AimDir = Vector(GetAdjustedAim( StartTrace ));
|
AimDir = Vector(GetAdjustedAim( StartTrace ));
|
||||||
|
|
||||||
// this is the location where the projectile is spawned.
|
// this is the location where the projectile is spawned.
|
||||||
|
if (UseFixedPhysicalFireLocation)
|
||||||
|
{
|
||||||
|
RealStartLoc = GetFixedPhysicalFireStartLoc();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
RealStartLoc = GetPhysicalFireStartLoc(AimDir);
|
RealStartLoc = GetPhysicalFireStartLoc(AimDir);
|
||||||
|
}
|
||||||
|
|
||||||
if( StartTrace != RealStartLoc )
|
if( StartTrace != RealStartLoc )
|
||||||
{
|
{
|
||||||
@ -8047,5 +8056,7 @@ defaultproperties
|
|||||||
|
|
||||||
bUsesSecondaryAmmoAltHUD=false
|
bUsesSecondaryAmmoAltHUD=false
|
||||||
bForceHandleImpacts=false
|
bForceHandleImpacts=false
|
||||||
|
|
||||||
|
UseFixedPhysicalFireLocation=false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,6 +20,9 @@ var string AttachmentArchtypePath;
|
|||||||
/** Path to the UI thumbnail texture */
|
/** Path to the UI thumbnail texture */
|
||||||
var protected string ImagePath;
|
var protected string ImagePath;
|
||||||
|
|
||||||
|
/** Is Weapong Hidden in PS4 Initial Chunk PlayGO PS4 */
|
||||||
|
var bool IsPlayGoHidden;
|
||||||
|
|
||||||
/** The cost of this weapon ( Sold for .75 this amount ) */
|
/** The cost of this weapon ( Sold for .75 this amount ) */
|
||||||
var(Trader) int BuyPrice;
|
var(Trader) int BuyPrice;
|
||||||
/** Price per magazine */
|
/** Price per magazine */
|
||||||
|
@ -47,7 +47,7 @@ defaultproperties
|
|||||||
GoreDamageGroup=DGT_EMP
|
GoreDamageGroup=DGT_EMP
|
||||||
EffectGroup=FXG_Electricity
|
EffectGroup=FXG_Electricity
|
||||||
|
|
||||||
ForceImpactEffect=ParticleSystem'WEP_HVStormCannon_EMIT.FX_HVStormCannon_Impact'
|
ForceImpactEffect=ParticleSystem'WEP_HVStormCannon_EMIT.FX_HVStormCannon_Impact_Zed'
|
||||||
ForceImpactSound=AkEvent'WW_WEP_HVStormCannon.Play_WEP_HVStormCannon_Impact'
|
ForceImpactSound=AkEvent'WW_WEP_HVStormCannon.Play_WEP_HVStormCannon_Impact'
|
||||||
|
|
||||||
WeaponDef=class'KFWeapDef_HVStormCannon'
|
WeaponDef=class'KFWeapDef_HVStormCannon'
|
||||||
|
@ -31,6 +31,8 @@ struct PerkRoulette_PlayerMessageDelegate
|
|||||||
|
|
||||||
var array<PerkRoulette_PlayerMessageDelegate> PerkRoulette_PlayersDelegateData;
|
var array<PerkRoulette_PlayerMessageDelegate> PerkRoulette_PlayersDelegateData;
|
||||||
|
|
||||||
|
var array<KFPlayerController_WeeklySurvival> PerkRoulette_PlayersDelegateInventory;
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// Statics
|
// Statics
|
||||||
static event class<GameInfo> SetGameType(string MapName, string Options, string Portal)
|
static event class<GameInfo> SetGameType(string MapName, string Options, string Portal)
|
||||||
@ -1177,6 +1179,14 @@ function NotifyKilled(Controller Killer, Controller Killed, Pawn KilledPawn, cla
|
|||||||
SetTimer(1.5f, false, 'OnVIPDiesEndMatch');
|
SetTimer(1.5f, false, 'OnVIPDiesEndMatch');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (MyKFGRI.IsRandomPerkMode())
|
||||||
|
{
|
||||||
|
if (KFPC_WS_Killed != none)
|
||||||
|
{
|
||||||
|
PerkRoulette_PlayersDelegateInventory.AddItem(KFPC_WS_Killed);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function GunGameLevelGrantWeapon(KFPlayerController_WeeklySurvival KFPC_WS, class<KFWeaponDefinition> ToGrantWeaponDefinition)
|
function GunGameLevelGrantWeapon(KFPlayerController_WeeklySurvival KFPC_WS, class<KFWeaponDefinition> ToGrantWeaponDefinition)
|
||||||
@ -1603,8 +1613,79 @@ function ChooseInitialRandomPerk(KFPlayerController_WeeklySurvival KFPC_WS)
|
|||||||
KFPC_WS.InitialRandomPerk = PerkRouletteRandomInitialIndex;
|
KFPC_WS.InitialRandomPerk = PerkRouletteRandomInitialIndex;
|
||||||
PerkRouletteRandomInitialIndex = (PerkRouletteRandomInitialIndex + 1) % PerkRouletteRandomList.Length;
|
PerkRouletteRandomInitialIndex = (PerkRouletteRandomInitialIndex + 1) % PerkRouletteRandomList.Length;
|
||||||
|
|
||||||
`Log("PLAYER : " $KFPC_WS);
|
//`Log("PLAYER : " $KFPC_WS);
|
||||||
`Log("InitialRandomPerk : " $KFPC_WS.InitialRandomPerk);
|
//`Log("InitialRandomPerk : " $KFPC_WS.InitialRandomPerk);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function bool CanAssignDefaultWeaponsToPlayer(Controller NewPlayer)
|
||||||
|
{
|
||||||
|
local KFPlayerController_WeeklySurvival KFPC_WS;
|
||||||
|
local int i;
|
||||||
|
|
||||||
|
// We can't assign default weapons if we have to wait to assign the New Perk
|
||||||
|
|
||||||
|
KFPC_WS = KFPlayerController_WeeklySurvival(NewPlayer);
|
||||||
|
if (KFPC_WS != none)
|
||||||
|
{
|
||||||
|
for (i = 0; i < PerkRoulette_PlayersDelegateInventory.Length ; ++i)
|
||||||
|
{
|
||||||
|
if (KFPC_WS == PerkRoulette_PlayersDelegateInventory[i])
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function PerkRoulette_InventoryCustomDelegate()
|
||||||
|
{
|
||||||
|
local KFPlayerController_WeeklySurvival KFPC_WS;
|
||||||
|
local KFPerk Perk;
|
||||||
|
local int i;
|
||||||
|
local byte NewPerk;
|
||||||
|
|
||||||
|
for (i = PerkRoulette_PlayersDelegateInventory.Length - 1 ; i >= 0 ; --i)
|
||||||
|
{
|
||||||
|
KFPC_WS = PerkRoulette_PlayersDelegateInventory[i];
|
||||||
|
|
||||||
|
if (KFPC_WS == none)
|
||||||
|
{
|
||||||
|
PerkRoulette_PlayersDelegateInventory.Remove(i, 1);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
Perk = KFPC_WS.GetPerk();
|
||||||
|
|
||||||
|
// While the new Perk is not valid, or is not the one we expect continue
|
||||||
|
|
||||||
|
if (Perk == none)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
NewPerk = (KFPC_WS.InitialRandomPerk + PerkRouletteRandomWaveNum) % PerkRouletteRandomList.Length;
|
||||||
|
|
||||||
|
if (KFPC_WS.Perklist[PerkRouletteRandomList[NewPerk]].PerkClass != Perk.Class)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (KFPC_WS.Pawn != none)
|
||||||
|
{
|
||||||
|
AddDefaultInventory(KFPC_WS.Pawn);
|
||||||
|
|
||||||
|
PerkRoulette_PlayersDelegateInventory.Remove(i, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (PerkRoulette_PlayersDelegateInventory.Length == 0)
|
||||||
|
{
|
||||||
|
ClearTimer(nameof(PerkRoulette_InventoryCustomDelegate));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1613,6 +1694,16 @@ function ChooseRandomPerks(bool isEndWave)
|
|||||||
local KFPlayerController_WeeklySurvival KFPC_WS;
|
local KFPlayerController_WeeklySurvival KFPC_WS;
|
||||||
local byte NewPerk;
|
local byte NewPerk;
|
||||||
|
|
||||||
|
if (isEndWave)
|
||||||
|
{
|
||||||
|
ClearTimer(nameof(PerkRoulette_InventoryCustomDelegate));
|
||||||
|
|
||||||
|
if (PerkRoulette_PlayersDelegateInventory.Length > 0)
|
||||||
|
{
|
||||||
|
SetTimer(0.5f, true, nameof(PerkRoulette_InventoryCustomDelegate));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
foreach WorldInfo.AllControllers(class'KFPlayerController_WeeklySurvival', KFPC_WS)
|
foreach WorldInfo.AllControllers(class'KFPlayerController_WeeklySurvival', KFPC_WS)
|
||||||
{
|
{
|
||||||
if (KFPC_WS.InitialRandomPerk == 255 || KFPC_WS.PlayerReplicationInfo.bOnlySpectator || KFPC_WS.IsInState('Spectating'))
|
if (KFPC_WS.InitialRandomPerk == 255 || KFPC_WS.PlayerReplicationInfo.bOnlySpectator || KFPC_WS.IsInState('Spectating'))
|
||||||
|
@ -14,6 +14,8 @@ defaultproperties
|
|||||||
MaxSpeed=22500.0
|
MaxSpeed=22500.0
|
||||||
Speed=22500.0
|
Speed=22500.0
|
||||||
|
|
||||||
|
ProjEffectsFadeOutDuration=0
|
||||||
|
|
||||||
DamageRadius=0
|
DamageRadius=0
|
||||||
|
|
||||||
ProjFlightTemplate = ParticleSystem'WEP_HVStormCannon_EMIT.FX_HVStormCannon_Projectile'
|
ProjFlightTemplate = ParticleSystem'WEP_HVStormCannon_EMIT.FX_HVStormCannon_Projectile'
|
||||||
|
@ -340,6 +340,8 @@ simulated function ProcessBulletTouch(Actor Other, Vector HitLocation, Vector Hi
|
|||||||
|
|
||||||
if ( HitZoneImpactList.length > 0 )
|
if ( HitZoneImpactList.length > 0 )
|
||||||
{
|
{
|
||||||
|
IncrementNumImpacts(Victim);
|
||||||
|
|
||||||
HitZoneImpactList[0].RayDir = Direction;
|
HitZoneImpactList[0].RayDir = Direction;
|
||||||
|
|
||||||
if( Owner != none )
|
if( Owner != none )
|
||||||
@ -351,8 +353,6 @@ simulated function ProcessBulletTouch(Actor Other, Vector HitLocation, Vector Hi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IncrementNumImpacts(Victim);
|
|
||||||
|
|
||||||
BounceNoCheckRepeatingTouch(HitNormal, Other);
|
BounceNoCheckRepeatingTouch(HitNormal, Other);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -363,10 +363,18 @@ simulated function IncrementNumImpacts(Pawn Victim)
|
|||||||
local int i;
|
local int i;
|
||||||
local KFPlayerController KFPC;
|
local KFPlayerController KFPC;
|
||||||
|
|
||||||
|
if (WorldInfo.NetMode != NM_Standalone)
|
||||||
|
{
|
||||||
if (WorldInfo.NetMode == NM_Client)
|
if (WorldInfo.NetMode == NM_Client)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Victim == none)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (Victim.bCanBeDamaged == false || Victim.IsAliveAndWell() == false)
|
if (Victim.bCanBeDamaged == false || Victim.IsAliveAndWell() == false)
|
||||||
{
|
{
|
||||||
|
@ -26,7 +26,7 @@ private event Initialize(string MapName)
|
|||||||
bObjectiveIsValidForMap[0] = 1; // Freeze 500 Zeds using ice arsenal
|
bObjectiveIsValidForMap[0] = 1; // Freeze 500 Zeds using ice arsenal
|
||||||
bObjectiveIsValidForMap[1] = 0; // Complete the Weekly on Crash
|
bObjectiveIsValidForMap[1] = 0; // Complete the Weekly on Crash
|
||||||
bObjectiveIsValidForMap[2] = 0; // Use 4 Boomstick Jumps in a same match on Crash
|
bObjectiveIsValidForMap[2] = 0; // Use 4 Boomstick Jumps in a same match on Crash
|
||||||
bObjectiveIsValidForMap[3] = 1; // Hit 3 Zeds with a shot of HRG Ballistic Bouncer (15 times)
|
bObjectiveIsValidForMap[3] = 1; // Hit 2 Zeds with a shot of HRG Ballistic Bouncer (30 times)
|
||||||
bObjectiveIsValidForMap[4] = 0; // Complete wave 15 on Endless Hard or higher difficulty on Crash
|
bObjectiveIsValidForMap[4] = 0; // Complete wave 15 on Endless Hard or higher difficulty on Crash
|
||||||
|
|
||||||
if (CapsMapName == "KF-CRASH")
|
if (CapsMapName == "KF-CRASH")
|
||||||
|
@ -37,6 +37,8 @@ simulated function StartFire()
|
|||||||
|
|
||||||
if (WeapMesh != none)
|
if (WeapMesh != none)
|
||||||
{
|
{
|
||||||
|
ChargeMIC = ChargeAttachment.CreateAndSetMaterialInstanceConstant(0);
|
||||||
|
|
||||||
WeapMesh.AttachComponentToSocket(ChargeAttachment, 'MuzzleFlash');
|
WeapMesh.AttachComponentToSocket(ChargeAttachment, 'MuzzleFlash');
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -67,6 +69,12 @@ simulated event Tick(float DeltaTime)
|
|||||||
ChargeValue = 1.0f;
|
ChargeValue = 1.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ChargeMIC != none)
|
||||||
|
{
|
||||||
|
// Change Color
|
||||||
|
ChargeMIC.SetScalarParameterValue('Charge', ChargeValue);
|
||||||
|
}
|
||||||
|
|
||||||
if( ChargeAttachment != none)
|
if( ChargeAttachment != none)
|
||||||
{
|
{
|
||||||
ChargeAttachment.SetScale(MinProjPlaceholderScale + (MaxProjPlaceHolderScale - MinProjPlaceholderScale) * ChargeValue);
|
ChargeAttachment.SetScale(MinProjPlaceholderScale + (MaxProjPlaceHolderScale - MinProjPlaceholderScale) * ChargeValue);
|
||||||
|
@ -483,7 +483,6 @@ simulated state MineReconstructorCharge extends WeaponFiring
|
|||||||
NotifyWeaponFinishedFiring(CurrentFireMode);
|
NotifyWeaponFinishedFiring(CurrentFireMode);
|
||||||
|
|
||||||
super.HandleFinishedFiring();
|
super.HandleFinishedFiring();
|
||||||
//`Log("ChargePercentage"@ChargePercentage);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
simulated function PutDownWeapon()
|
simulated function PutDownWeapon()
|
||||||
@ -577,6 +576,7 @@ simulated function KFProjectile SpawnProjectile(class<KFProjectile> KFProjClass,
|
|||||||
BouncingProj.SetInheritedScale(FXScalingFactorByCharge, ChargePercentage);
|
BouncingProj.SetInheritedScale(FXScalingFactorByCharge, ChargePercentage);
|
||||||
return BouncingProj;
|
return BouncingProj;
|
||||||
}
|
}
|
||||||
|
|
||||||
return none;
|
return none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -645,8 +645,8 @@ defaultproperties
|
|||||||
ValueIncreaseTime=0.1
|
ValueIncreaseTime=0.1
|
||||||
|
|
||||||
//FOR LERPING DAMANGE
|
//FOR LERPING DAMANGE
|
||||||
MaxDamageByCharge=200
|
MaxDamageByCharge=300
|
||||||
MinDamageByCharge=10
|
MinDamageByCharge=15
|
||||||
// FOV
|
// FOV
|
||||||
Meshfov=80
|
Meshfov=80
|
||||||
MeshIronSightFOV=65 //52
|
MeshIronSightFOV=65 //52
|
||||||
@ -768,4 +768,6 @@ defaultproperties
|
|||||||
ChargeStaticMesh = StaticMesh'WEP_HRG_BallisticBouncer_EMIT.HRG_BallisticBouncer_ball_MESH'
|
ChargeStaticMesh = StaticMesh'WEP_HRG_BallisticBouncer_EMIT.HRG_BallisticBouncer_ball_MESH'
|
||||||
MinProjPlaceholderScale = 2.0f;
|
MinProjPlaceholderScale = 2.0f;
|
||||||
MaxProjPlaceholderScale = 3.0f;
|
MaxProjPlaceholderScale = 3.0f;
|
||||||
|
|
||||||
|
UseFixedPhysicalFireLocation=true
|
||||||
}
|
}
|
@ -70,10 +70,11 @@ simulated function KFProjectile SpawnAllProjectiles(class<KFProjectile> KFProjCl
|
|||||||
// 0.32 is a value the artists found that was needed to balance the aim in order to match the iron sight with the bullet impact position
|
// 0.32 is a value the artists found that was needed to balance the aim in order to match the iron sight with the bullet impact position
|
||||||
R = QuatFromAxisAndAngle(Y, -0.32f * DegToRad);
|
R = QuatFromAxisAndAngle(Y, -0.32f * DegToRad);
|
||||||
AimDir = QuatRotateVector(R, AimDir);
|
AimDir = QuatRotateVector(R, AimDir);
|
||||||
|
return SpawnProjectile(KFProjClass, RealStartLoc, AimDir);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return SpawnProjectile(KFProjClass, RealStartLoc, AimDir);
|
return super.SpawnAllProjectiles(KFProjClass, RealStartLoc, AimDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
simulated function ProcessInstantHitEx(byte FiringMode, ImpactInfo Impact, optional int NumHits, optional out float out_PenetrationVal, optional int ImpactNum )
|
simulated function ProcessInstantHitEx(byte FiringMode, ImpactInfo Impact, optional int NumHits, optional out float out_PenetrationVal, optional int ImpactNum )
|
||||||
@ -382,7 +383,7 @@ defaultproperties
|
|||||||
FireInterval(DEFAULT_FIREMODE)=0.4 // 150 RPM // 0.8 // 75 RPM
|
FireInterval(DEFAULT_FIREMODE)=0.4 // 150 RPM // 0.8 // 75 RPM
|
||||||
Spread(DEFAULT_FIREMODE)=0.005
|
Spread(DEFAULT_FIREMODE)=0.005
|
||||||
PenetrationPower(DEFAULT_FIREMODE)=0
|
PenetrationPower(DEFAULT_FIREMODE)=0
|
||||||
FireOffset=(X=30,Y=16,Z=-8)
|
//FireOffset=(X=30,Y=16,Z=-8)
|
||||||
|
|
||||||
// BASH_FIREMODE
|
// BASH_FIREMODE
|
||||||
InstantHitDamageTypes(BASH_FIREMODE)=class'KFDT_Bludgeon_HVStormCannon'
|
InstantHitDamageTypes(BASH_FIREMODE)=class'KFDT_Bludgeon_HVStormCannon'
|
||||||
|
Loading…
Reference in New Issue
Block a user