UTMenu
Class UTLadderDM

source: e:\games\UnrealTournament\UTMenu\Classes\UTLadderDM.uc
Core.Object
   |
   +--UWindow.UWindowBase
      |
      +--UWindow.UWindowWindow
         |
         +--UTMenu.NotifyWindow
            |
            +--UTMenu.UTLadderStub
               |
               +--UTMenu.UTLadder
                  |
                  +--UTMenu.UTLadderDM
Direct Known Subclasses:None

class UTLadderDM
extends UTMenu.UTLadder



Function Summary
 void CheckOpenCondition()
 void Created()
 void EvaluateMatch(optional bool)
 void FillInfoArea(int i)
 void NextPressed()
 void StartMap(string StartMap, int Rung, string GameType)



Source Code


00001	class UTLadderDM extends UTLadder;
00002	
00003	function Created()
00004	{
00005		Super.Created();
00006	
00007		if (LadderObj.DMPosition == -1) {
00008			LadderObj.DMPosition = 1;
00009			SelectedMatch = 0;
00010		} else {
00011			SelectedMatch = LadderObj.DMPosition;
00012		}
00013		SetupLadder(LadderObj.DMPosition, LadderObj.DMRank);
00014	
00015		if (class'UTLadderStub'.Static.IsDemo())
00016			RequiredRungs = 4;
00017	}
00018	
00019	function FillInfoArea(int i)
00020	{
00021		MapInfoArea.Clear();
00022		if ( (LadderObj.CurrentLadder.Default.DemoDisplay[i] == 1) ||
00023			(class'UTLadderStub'.Static.IsDemo() && !class'UTLadderStub'.Static.DemoHasTuts() && i == 0) )
00024			MapInfoArea.AddText(NotAvailableString);
00025		MapInfoArea.AddText(MapText$" "$LadderObj.CurrentLadder.Static.GetMapTitle(i));
00026		MapInfoArea.AddText(FragText$" "$LadderObj.CurrentLadder.Static.GetFragLimit(i));
00027		MapInfoArea.AddText(LadderObj.CurrentLadder.Static.GetDesc(i));
00028	}
00029	
00030	function NextPressed()
00031	{
00032		local EnemyBrowser EB;
00033		local string MapName;
00034	
00035		if (PendingPos > ArrowPos)
00036			return;
00037	
00038		if (SelectedMatch == 0)
00039		{
00040			MapName = LadderObj.CurrentLadder.Default.MapPrefix$Ladder.Static.GetMap(0);
00041			if (class'UTLadderStub'.Static.IsDemo())
00042			{
00043				if (class'UTLadderStub'.Static.DemoHasTuts())
00044				{
00045					CloseUp();
00046					StartMap(MapName, 0, "Botpack.TrainingDM");
00047				}
00048			} else {
00049				CloseUp();
00050				StartMap(MapName, 0, "Botpack.TrainingDM");
00051			}
00052		} else {
00053			HideWindow();
00054			EB = EnemyBrowser(Root.CreateWindow(class'EnemyBrowser', 100, 100, 200, 200, Root, True));
00055			EB.LadderWindow = Self;
00056			EB.Ladder = LadderObj.CurrentLadder;
00057			EB.Match = SelectedMatch;
00058			EB.GameType = GameType;
00059			EB.Initialize();
00060		}
00061	}
00062	
00063	function StartMap(string StartMap, int Rung, string GameType)
00064	{
00065		local Class<GameInfo> GameClass;
00066	
00067		GameClass = Class<GameInfo>(DynamicLoadObject(GameType, Class'Class'));
00068		GameClass.Static.ResetGame();
00069	
00070		StartMap = StartMap
00071					$"?Game="$GameType
00072					$"?Mutator="
00073					$"?Tournament="$Rung
00074					$"?Name="$GetPlayerOwner().PlayerReplicationInfo.PlayerName
00075					$"?Team=255";
00076	
00077		Root.Console.CloseUWindow();
00078		GetPlayerOwner().ClientTravel(StartMap, TRAVEL_Absolute, True);
00079	}
00080	
00081	function EvaluateMatch(optional bool bTrophyVictory)
00082	{
00083		local int Pos;
00084		local string MapName;
00085	
00086		if (LadderObj.PendingPosition > LadderObj.DMPosition)
00087		{
00088			if (class'UTLadderStub'.Static.IsDemo() && LadderObj.PendingPosition > 4)
00089			{
00090				PendingPos = 4;
00091			} else {
00092				PendingPos = LadderObj.PendingPosition;
00093				LadderObj.DMPosition = LadderObj.PendingPosition;
00094			}
00095		}
00096		if (LadderObj.PendingRank > LadderObj.DMRank)
00097		{
00098			LadderObj.DMRank = LadderObj.PendingRank;
00099			LadderObj.PendingRank = 0;
00100		}
00101		LadderPos = LadderObj.DMPosition;
00102		LadderRank = LadderObj.DMRank;
00103		if (LadderObj.DMRank == 6)
00104			Super.EvaluateMatch(True);
00105		else
00106			Super.EvaluateMatch();
00107	}
00108	
00109	function CheckOpenCondition()
00110	{
00111		if (class'UTLadderStub'.Static.IsDemo())
00112		{
00113			if (LadderObj.DMRank == 4)
00114			{
00115				PendingPos = -1;
00116				BackPressed();
00117			}
00118		} else
00119			Super.CheckOpenCondition();
00120	}
00121	
00122	defaultproperties
00123	{
00124	     GameType="Botpack.DeathMatchPlus"
00125	     TrophyMap="EOL_DeathMatch.unr"
00126	     LadderName="Deathmatch"
00127	     Ladder=Class'Botpack.LadderDM'
00128	     DemoLadder=Class'Botpack.LadderDMDemo'
00129	     GOTYLadder=Class'Botpack.LadderDMGOTY'
00130	     LadderTrophy=Texture'UTMenu.Skins.TrophyDM'
00131	}

End Source Code