85 lines
1.8 KiB
Ucode
85 lines
1.8 KiB
Ucode
//==============================================================================
|
|
// Created on: 11/12/2003
|
|
// Contains controls for administering maps & maplists
|
|
//
|
|
// Written by Ron Prestenback
|
|
// © 2003, Epic Games, Inc. All Rights Reserved
|
|
//==============================================================================
|
|
|
|
class AdminPanelMaps extends AdminPanelBase;
|
|
|
|
var automated GUIListBoxBase lb_Maps;
|
|
var bool bReceivedMaps;
|
|
|
|
function InitComponent(GUIController MyController, GUIComponent MyOwner)
|
|
{
|
|
Super.InitComponent(MyController, MyOwner);
|
|
|
|
lb_Maps.NotifyContextSelect = HandleContextSelect;
|
|
lb_Maps.ContextMenu.ContextItems.Remove(1, lb_Maps.ContextMenu.ContextItems.Length - 1);
|
|
}
|
|
|
|
function ShowPanel()
|
|
{
|
|
Super.ShowPanel();
|
|
if ( !bReceivedMaps )
|
|
RefreshMaplist();
|
|
}
|
|
|
|
function RefreshMaplist()
|
|
{
|
|
bReceivedMaps = False;
|
|
SetTimer(3.0,True);
|
|
Timer();
|
|
}
|
|
|
|
function Timer()
|
|
{
|
|
if ( bReceivedMaps || xPlayer(PlayerOwner()) == None )
|
|
{
|
|
KillTimer();
|
|
return;
|
|
}
|
|
|
|
xPlayer(PlayerOwner()).ProcessMapName = ProcessMapName;
|
|
xPlayer(PlayerOwner()).ServerRequestMapList();
|
|
}
|
|
|
|
function ProcessMapName(string NewMap)
|
|
{
|
|
GUIList(lb_Maps.MyList).Add(NewMap);
|
|
}
|
|
|
|
function bool HandleContextSelect(GUIContextMenu Sender, int Index)
|
|
{
|
|
local string MapName;
|
|
|
|
if ( Sender != None )
|
|
{
|
|
MapName = GUIList(lb_Maps.MyList).Get();
|
|
if (MapName != "")
|
|
Console(Controller.Master.Console).DelayedConsoleCommand("open"@MapName);
|
|
|
|
Controller.CloseAll(False,True);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
defaultproperties
|
|
{
|
|
Begin Object class=MaplistBox Name=Maplist
|
|
WinWidth=1.000000
|
|
WinHeight=0.834375
|
|
WinLeft=0.000000
|
|
WinTop=0.143750
|
|
bVisibleWhenEmpty=True
|
|
bBoundToParent=True
|
|
bScaleToParent=True
|
|
StyleName="NoBackground"
|
|
End Object
|
|
lb_Maps=Maplist
|
|
|
|
PanelCaption="Maps"
|
|
}
|