rott/kf_sources/GUI2K4/Classes/UT2K4InternetSettingsPage.uc
2026-07-14 20:27:09 +07:00

150 lines
3.6 KiB
Ucode

//==============================================================================
// Created on: 02/06/2004
// Allows player to quickly change playername & netspeed from internet page
//
// Written by Ron Prestenback
// © 2003, Epic Games, Inc. All Rights Reserved
//==============================================================================
class UT2K4InternetSettingsPage extends MessageWindow;
var automated GUIButton b_OK, b_Cancel;
var automated moEditbox ed_PlayerName;
var automated moComboBox co_Netspeed;
function InitComponent(GUIController InController, GUIComponent InOwner)
{
Super.InitComponent(InController, InOwner);
//SetupPlayerName();
SetupNetspeedCombo();
}
function SetupPlayerName()
{
local PlayerController PC;
ed_PlayerName.MyEditBox.bConvertSpaces = True;
PC = PlayerOwner();
if ( PC.PlayerReplicationInfo != None )
ed_PlayerName.SetText(PC.PlayerReplicationInfo.PlayerName);
else ed_PlayerName.SetText( PC.GetURLOption("Name") );
}
function SetupNetspeedCombo()
{
local int i;
for ( i = 0; i < ArrayCount(class'UT2K4Tab_GameSettings'.default.NetspeedText); i++ )
co_Netspeed.AddItem( class'UT2K4Tab_GameSettings'.default.NetspeedText[i], , GetNetspeedValue(i) );
co_Netspeed.SetIndex( GetNetspeedIndex(class'Player'.default.ConfiguredInternetSpeed) );
}
function bool InternalOnClick( GUIComponent Sender )
{
Controller.CloseMenu( Sender == b_Cancel );
return True;
}
event Closed( GUIComponent Sender, bool bCancelled )
{
//local string NewName;
if ( !bCancelled )
{
//NewName = Repl(ed_PlayerName.GetText(), "\"", "");
//NewName = Repl(NewName, " ", "_");
//if ( NewName == "" )
//NewName = "Player";
//PlayerOwner().ConsoleCommand("SetName"@NewName);
PlayerOwner().ConsoleCommand("NetSpeed"@co_Netspeed.GetExtra());
}
Super.Closed(Sender,bCancelled);
}
function string GetNetspeedValue( int i )
{
switch ( i )
{
case 0: return "2600";
case 1: return "5000";
case 2: return "10000";
case 3: return "15000";
}
return "10000";
}
function int GetNetspeedIndex( int Netspeed )
{
if ( NetSpeed < 3500 )
return 0;
if ( NetSpeed < 7500 )
return 1;
if ( Netspeed < 12500 )
return 2;
return 3;
}
defaultproperties
{
Begin Object Class=moEditBox Name=PlayerNameEditbox
bVerticalLayout=True
LabelJustification=TXTA_Center
ComponentJustification=TXTA_Center
Caption="Player Name: "
WinWidth=0.381250
WinHeight=0.090000
WinLeft=0.085000
WinTop=0.401666
bStandardized=False
End Object
ed_PlayerName=none
Begin Object Class=moComboBox Name=NetspeedComboBox
bVerticalLayout=True
LabelJustification=TXTA_Center
ComponentJustification=TXTA_Center
Caption="Netspeed: "
WinWidth=0.50000
WinHeight=0.090000
WinLeft=0.2500
WinTop=0.401666
bStandardized=False
bReadOnly=true
End Object
co_Netspeed=NetspeedComboBox
Begin Object Class=GUIButton Name=InternetSettingsOKButton
Caption="OK"
OnClick=InternalOnClick
WinWidth=0.136250
WinHeight=0.045000
WinLeft=0.741251
WinTop=0.556666
// if _RO_
//StyleName="SelectButton"
// end if _RO_
End Object
b_OK=InternetSettingsOKButton
Begin Object Class=GUIButton Name=InternetSettingsCancelButton
Caption="CANCEL"
OnClick=InternalOnClick
WinWidth=0.130000
WinHeight=0.045000
WinLeft=0.595000
WinTop=0.556666
// if _RO_
// StyleName="SelectButton"
// end if _RO_
End Object
b_Cancel=InternetSettingsCancelButton
}