KF2-Server-Extension/ServerExt/Classes/ExtPerksContainer_Selection.uc
2017-10-19 21:00:49 -05:00

49 lines
1.4 KiB
Ucode

class ExtPerksContainer_Selection extends KFGFxPerksContainer_Selection;
function UpdatePerkSelection(byte SelectedPerkIndex)
{
local int i;
local GFxObject DataProvider;
local GFxObject TempObj;
local ExtPlayerController KFPC;
local Ext_PerkBase PerkClass;
KFPC = ExtPlayerController( GetPC() );
if ( KFPC!=none && KFPC.ActivePerkManager!=None )
{
DataProvider = CreateArray();
for (i = 0; i < KFPC.ActivePerkManager.UserPerks.Length; i++)
{
PerkClass = KFPC.ActivePerkManager.UserPerks[i];
TempObj = CreateObject( "Object" );
TempObj.SetInt( "PerkLevel", PerkClass.CurrentLevel );
TempObj.SetString( "Title", PerkClass.PerkName );
TempObj.SetString( "iconSource", PerkClass.GetPerkIconPath(PerkClass.CurrentLevel) );
TempObj.SetBool("bTierUnlocked", true);
DataProvider.SetElementObject( i, TempObj );
}
SetObject( "perkData", DataProvider );
SetInt("SelectedIndex", SelectedPerkIndex);
UpdatePendingPerkInfo(SelectedPerkIndex);
}
}
function UpdatePendingPerkInfo(byte SelectedPerkIndex)
{
local ExtPlayerController KFPC;
local Ext_PerkBase PerkClass;
KFPC = ExtPlayerController( GetPC() );
if( KFPC != none )
{
PerkClass = KFPC.ActivePerkManager.UserPerks[SelectedPerkIndex];
SetPendingPerkChanges(PerkClass.PerkName, PerkClass.GetPerkIconPath(PerkClass.CurrentLevel), "Perk changes will be applied when you die.");
}
}
function SavePerk(int PerkID);