Core.Object | +--Engine.Actor | +--Engine.Menu | +--UnrealShare.UnrealMenu | +--UnrealShare.UnrealLongMenu | +--UnrealShare.UnrealGameMenu | +--UnrealShare.UnrealNewGameMenu
string
StartMap
void
Destroyed()
DrawMenu(Canvas Canvas)
PostBeginPlay()
bool
ProcessSelection()
SaveConfigs()
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 }