152 lines
4.7 KiB
Ucode
152 lines
4.7 KiB
Ucode
// ====================================================================
|
|
// (C) 2002, Epic Games
|
|
// ====================================================================
|
|
|
|
class UT2K4ModsAndDemos extends Ut2K4MainPage;
|
|
|
|
// if _RO_
|
|
// else
|
|
//#exec OBJ LOAD FILE=InterfaceContent.utx
|
|
// end if _RO_
|
|
|
|
var Ut2K4Community tp_Community;
|
|
var UT2K4UserMods tp_UserMods;
|
|
var UT2K4Ownage tp_Ownage;
|
|
var UT2K4Demos tp_Demos;
|
|
var UT2K4Movies tp_Movies;
|
|
|
|
var MasterServerClient MSC;
|
|
|
|
var UT2K4ModFooter MyFooter;
|
|
|
|
var localized string ConnectFailed;
|
|
var localized string ConnectTimeout;
|
|
|
|
var bool bAlreadyNotified;
|
|
|
|
function InitComponent(GUIController MyController, GUIComponent MyOwner)
|
|
{
|
|
local int i;
|
|
|
|
MyFooter = UT2K4ModFooter(t_Footer);
|
|
|
|
Super.InitComponent(MyController, MyOwner);
|
|
|
|
tp_Community = Ut2K4Community( c_Tabs.AddTab(PanelCaption[i],"GUI2K4.Ut2K4Community",, PanelHint[i++]));
|
|
tp_UserMods = UT2K4UserMods( c_Tabs.AddTab(PanelCaption[i],"GUI2K4.UT2K4UserMods",, PanelHint[i++]));
|
|
tp_Ownage = UT2K4Ownage( c_Tabs.AddTab(PanelCaption[i],"GUI2K4.UT2K4Ownage",, PanelHint[i++]));
|
|
tp_Demos = UT2K4Demos( c_Tabs.AddTab(PanelCaption[i],"GUI2K4.UT2K4Demos",, PanelHint[i++]));
|
|
tp_Movies = UT2K4Movies( c_Tabs.AddTab(PanelCaption[i],"GUI2K4.UT2K4Movies",, PanelHint[i++]));
|
|
|
|
if ( tp_Demos.lb_DemoList.List.ItemCount<=0 )
|
|
tp_Demos.MyButton.DisableMe();
|
|
|
|
MSC = PlayerOwner().Level.Spawn( class'MasterServerClient' );
|
|
|
|
MSC.OwnageLevel = tp_Ownage.OwnageLevel;
|
|
MSC.OnReceivedModMOTDData = MyReceivedModMOTDData;
|
|
MSC.OnReceivedOwnageItem = MyReceivedOwnageItem;
|
|
MSC.OnQueryFinished = MyOnQueryFinished;
|
|
|
|
MSC.StartQuery(CTM_GetModMOTD);
|
|
}
|
|
|
|
function MyOnQueryFinished( MasterServerClient.EResponseInfo ResponseInfo, int Info )
|
|
{
|
|
if (ResponseInfo==RI_Success)
|
|
{
|
|
tp_Community.ModRevLevel = MSC.ModRevLevel;
|
|
tp_Community.LastModRevLevel = tp_Community.ModRevLevel;
|
|
tp_Community.saveconfig();
|
|
return;
|
|
}
|
|
|
|
switch (ResponseInfo)
|
|
{
|
|
case RI_AuthenticationFailed: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_AuthenticationFailed","");break;
|
|
case RI_ConnectionFailed:
|
|
tp_Community.CommunityNews.SetContent(ConnectFailed);
|
|
break;
|
|
|
|
case RI_ConnectionTimeout: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_ConnectionTimeout","");break;
|
|
tp_Community.CommunityNews.SetContent(ConnectTimeout);
|
|
break;
|
|
|
|
case RI_MustUpgrade: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_MustUpgrade","");break;
|
|
case RI_DevClient: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_DevClient","");break;
|
|
case RI_BadClient: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_BadClient","");break;
|
|
case RI_BannedClient: Controller.OpenMenu(Controller.NetworkMsgMenu,"RI_BannedClient",MSC.OptionalResult);break;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
function MyReceivedModMOTDData(string data )
|
|
{
|
|
if (Data!="" && tp_Community!=None)
|
|
tp_Community.CommunityNews.SetContent(Data, Chr(13));
|
|
}
|
|
|
|
function MyReceivedOwnageItem(int Level, string ItemName, string ItemDesc, string ItemURL)
|
|
{
|
|
tp_Ownage.AddMap(Level,ItemName,ItemDesc,ItemURL);
|
|
}
|
|
|
|
event Closed(GUIComponent Sender, bool bCancelled)
|
|
{
|
|
if (MSC!=None)
|
|
MSC.Destroy();
|
|
}
|
|
|
|
function HandleClick(int Button)
|
|
{
|
|
}
|
|
|
|
|
|
defaultproperties
|
|
{
|
|
Begin Object class=GUIHeader name=ModHeader
|
|
Caption="The Killing Floor Community"
|
|
RenderWeight=0.3
|
|
End Object
|
|
|
|
Begin Object Class=Ut2K4ModFooter Name=ModFooter
|
|
WinWidth=1.000000
|
|
WinLeft=0.000000
|
|
WinTop=0.957943
|
|
RenderWeight=0.3
|
|
End Object
|
|
|
|
t_Header=ModHeader
|
|
t_Footer=ModFooter
|
|
|
|
WinWidth=1.0
|
|
WinHeight=1.0
|
|
WinTop=0.0
|
|
WinLeft=0.0
|
|
|
|
PanelCaption(0)="News"
|
|
PanelCaption(1)="User Mods"
|
|
PanelCaption(2)="Ownage Maps"
|
|
PanelCaption(3)="Demos"
|
|
PanelCaption(4)="Movies"
|
|
|
|
PanelHint(0)="Get the latest news from the Killing Floor community..."
|
|
PanelHint(1)="Activate a user mod that is already installed..."
|
|
PanelHint(2)="Epic recommends..."
|
|
PanelHint(3)="Replay a pre-recorded demo file..."
|
|
PanelHint(4)="View fan movies created with UnrealEd and Matinee"
|
|
|
|
// Cannot clear references in Closed() if bPersistent
|
|
// so override new default of true, for now
|
|
bPersistent=False
|
|
|
|
// if _RO_
|
|
ConnectFailed="The Killing Floor master server could not be reached. Please try again later."
|
|
ConnectTimeout="Your connection to the Killing Floor master server has timed out."
|
|
// else
|
|
// ConnectFailed="The UT2004 master server could not be reached. Please try again later."
|
|
// ConnectTimeout="Your connection to the UT2004 master server has timed out"
|
|
// end if _RO_
|
|
}
|