UnrealShare
Class UnrealNewGameMenu

source: e:\games\UnrealTournament\UnrealShare\Classes\UnrealNewGameMenu.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Menu
         |
         +--UnrealShare.UnrealMenu
            |
            +--UnrealShare.UnrealLongMenu
               |
               +--UnrealShare.UnrealGameMenu
                  |
                  +--UnrealShare.UnrealNewGameMenu
Direct Known Subclasses:None

class UnrealNewGameMenu
extends UnrealShare.UnrealGameMenu

//============================================================================= // UnrealNewGameMenu //=============================================================================
Variables
 string StartMap


Function Summary
 void Destroyed()
 void DrawMenu(Canvas Canvas)
 void PostBeginPlay()
 bool ProcessSelection()
 void SaveConfigs()



Source Code


00001	//=============================================================================
00002	// UnrealNewGameMenu
00003	//=============================================================================
00004	class UnrealNewGameMenu extends UnrealGameMenu;
00005	
00006	var string StartMap;
00007	
00008	function Destroyed()
00009	{
00010		Super.Destroyed();
00011	}
00012	
00013	function PostBeginPlay()
00014	{
00015		Super.PostBeginPlay();
00016		Selection = Clamp(Level.Game.Difficulty + 1,1,4);
00017	} 
00018	
00019	function bool ProcessSelection()
00020	{
00021		local Menu ChildMenu;
00022	
00023		ChildMenu = spawn(class'UnrealMeshMenu', owner);
00024		HUD(Owner).MainMenu = ChildMenu;
00025		ChildMenu.ParentMenu = self;
00026		ChildMenu.PlayerOwner = PlayerOwner;
00027		StartMap = StartMap$"?Difficulty="$(Selection - 1);
00028		if ( Level.Game != None )
00029			StartMap = StartMap$"?GameSpeed="$Level.Game.GameSpeed;
00030		UnrealMeshMenu(ChildMenu).StartMap = StartMap;
00031		UnrealMeshMenu(ChildMenu).SinglePlayerOnly = true;
00032		return true;
00033	}
00034	
00035	function SaveConfigs();
00036	
00037	
00038	function DrawMenu(canvas Canvas)
00039	{
00040		local int StartX, StartY, Spacing;
00041		
00042		DrawBackGround(Canvas, false);	
00043		
00044		Spacing = Clamp(0.1 * Canvas.ClipY, 16, 48);
00045		StartX = Max(40, 0.5 * Canvas.ClipX - 96);
00046		StartY = Max(8, 0.5 * (Canvas.ClipY - 5 * Spacing - 128));
00047	
00048		DrawList(Canvas, true, Spacing, StartX, StartY); 
00049		DrawHelpPanel(Canvas, StartY + MenuLength * Spacing + 8, 228);
00050	}
00051	
00052	defaultproperties
00053	{
00054	     MenuLength=4
00055	     HelpMessage(1)="Tourist mode."
00056	     HelpMessage(2)="Ready for some action!"
00057	     HelpMessage(3)="Not for the faint of heart."
00058	     HelpMessage(4)="Death wish."
00059	     MenuList(1)="EASY"
00060	     MenuList(2)="MEDIUM"
00061	     MenuList(3)="HARD"
00062	     MenuList(4)="UNREAL"
00063	}

End Source Code