// September 2015 // Levee Patroller / Dijk Patrouille // This source file is (c) by Deltares. This source file is open source but only available to select users. Do not redistribute without written permission of Stichting Deltares, Delft, The Netherlands. // This header has been automatically generated. //============================================================================= // Menu that shows up when you are close to a marker // And Whant to take actions on that marker // ------------------------------------------------------------ // Created by Rui Guimaraes // © 2006, Geodelft // // Date Id Modification // 2006-09-04 The Formatted code // 2006-09-04 The Implemented scoreboard for statistics // 2006-09-16 Gui Pause in menus // 2007-09-19 wsl Changed all occurrences of 'afstands-' to 'meet-' //============================================================================= class MenuInventory extends GUIPage; var globalconfig string EN_RedMarker, EN_YellowMarker, EN_Map, EN_Handbook, EN_Notebook, EN_Statistic, EN_Topic, NL_RedMarker, NL_YellowMarker, NL_Map, NL_Handbook, NL_Notebook, NL_Statistic, NL_Topic; var int OptionSelected; var GeoPlayerController GeoPC; var bool bIgnoreEsc; var float ButtonWidth; var float ButtonHeight; var float ButtonHGap; var float ButtonVGap; var float BarHeight; var float BarVPos; var float SButtonSize; var float SButtonVGap; var float SButtonHGap; //============================================================================= // Date Id Modification // 2006-09-04 The Created this header //============================================================================= function InitComponent(GUIController MyController, GUIComponent MyOwner) { local int i; Super.InitComponent(MyController, MyOwner); OnKeyEvent = InternalOnKeyEvent; OnClose = InternalOnClose; // ************************* // Consider buttons: // -2- -1- // -1- -2- -3- // -5- -6- -7- // -3- // ************************* // BUTTON 1 Controls[1].WinTop = 0.25 + SButtonVGap; Controls[1].WinLeft = 0.5 + (0.7 / 2) - (SButtonSize) - SButtonHGap; Controls[1].WinWidth = SButtonSize; Controls[1].WinHeight = SButtonSize; // BUTTON 2 Controls[2].WinTop = Controls[1].WinTop; Controls[2].WinLeft = Controls[1].WinLeft - (SButtonSize) - SButtonHGap;; Controls[2].WinWidth = SButtonSize; Controls[2].WinHeight = SButtonSize; // BUTTON 3 Controls[3].WinTop = 0.75 - SButtonSize - SButtonVGap; Controls[3].WinLeft = 0.5 + (0.7 / 2) - (SButtonSize * 1.2) - SButtonHGap; Controls[3].WinWidth = SButtonSize * 1.2; Controls[3].WinHeight = SButtonSize; // BUTTON 5 Controls[5].WinTop = 0.53 - (0.5 * ButtonVGap) - (1.0 * ButtonHeight); Controls[5].WinLeft = 0.5 - (1.5 * ButtonWidth) - (1 * ButtonHGap); // BUTTON 6 Controls[6].WinTop = Controls[5].WinTop; Controls[6].WinLeft = Controls[5].WinLeft + ButtonWidth + ButtonHGap; // BUTTON 7 Controls[7].WinTop = Controls[5].WinTop; Controls[7].WinLeft = Controls[6].WinLeft + ButtonWidth + ButtonHGap; // BUTTON 8 Controls[8].WinTop = Controls[5].WinTop + ButtonVGap + ButtonHeight; Controls[8].WinLeft = Controls[5].WinLeft; // BUTTON 9 Controls[9].WinTop = Controls[8].WinTop; Controls[9].WinLeft = Controls[8].WinLeft + ButtonWidth + ButtonHGap; // BUTTON 10 Controls[10].WinTop = Controls[8].WinTop; Controls[10].WinLeft = Controls[9].WinLeft + ButtonWidth + ButtonHGap; for(i=5; i<11; i++) { Controls[i].WinWidth = ButtonWidth; Controls[i].WinHeight = ButtonHeight; } GeoPC=GeoPlayerController(PlayerOwner()); if(GeoPC!=None) UpdateLanguage(); else log("ERROR WITH TYPE OF GAME"); Controls[0].SetFocus(none); } //============================================================================= // Date Id Modification // 2006-09-04 The Created this header //============================================================================= function bool InternalOnKeyEvent(out byte Key, out byte State, float delta) { local GeoPlayerController pc; pc = GeoPlayerController(PlayerOwner()); // Swallow first escape key event (key up from key down that opened menu) if(Key == 0x1B||Key ==0x49) { if(bIgnoreEsc) { bIgnoreEsc = false; } else { pc.InMenu(false); Controller.CloseMenu(); } } return true; } //============================================================================= // Date Id Modification // 2006-09-04 The Created this header //============================================================================= function InternalOnClose(optional Bool bCanceled) { Super.OnClose(bCanceled); } //============================================================================= // Date Id Modification // 2006-09-04 The Created this header // 2006-09-04 The Implemented scoreboard for statistics //============================================================================= function bool InternalOnClick(GUIComponent Sender) { local int i; local GeoPlayerController pc; pc = GeoPlayerController(PlayerOwner()); for(i=0; i<11; i++) { if(Sender==Controls[i]) { switch(i) { case 1: pc.InMenu(false); Controller.CloseMenu(); // Close _all_ menus break; case 2: //HELP Controller.ReplaceMenu("GeoSimulator.HelpMenuInventory"); break; case 3: Controller.OpenMenu("GeoInterface.NotAvailable"); break; case 4: Controller.OpenMenu("GeoInterface.NotAvailable"); break; case 5: pc.ConsoleCommand("PlaceMarker MK_Red"); pc.InMenu(false); Controller.CloseMenu(); break; case 6: pc.ConsoleCommand("PlaceMarker MK_Yellow"); pc.InMenu(false); Controller.CloseMenu(); break; case 7: Controller.ReplaceMenu("GeoSimulator.MenuMap"); break; case 8: Controller.ReplaceMenu("GeoSimulator.MenuHandbook"); break; case 9: Controller.ReplaceMenu("GeoSimulator.MenuNotebook"); break; case 10: Controller.ReplaceMenu("GeoSimulator.MenuScore"); break; } } } return true; } //============================================================================= // Date Id Modification // 2006-09-04 The Created this header //============================================================================= function UpdateLanguage() { if(GeoPC.Dutch) { GUILabel(Controls[4]).Caption=NL_Topic; GUIButton(Controls[5]).Caption=NL_RedMarker; GUIButton(Controls[6]).Caption=NL_YellowMarker; GUIButton(Controls[7]).Caption=NL_Map; GUIButton(Controls[8]).Caption=NL_Handbook; GUIButton(Controls[9]).Caption=NL_Notebook; GUIButton(Controls[10]).Caption=NL_Statistic; } else { GUILabel(Controls[4]).Caption=EN_Topic; GUIButton(Controls[5]).Caption=EN_RedMarker; GUIButton(Controls[6]).Caption=EN_YellowMarker; GUIButton(Controls[7]).Caption=EN_Map; GUIButton(Controls[8]).Caption=EN_Handbook; GUIButton(Controls[9]).Caption=EN_Notebook; GUIButton(Controls[10]).Caption=EN_Statistic; } } //============================================================================= // Date Id Modification // 2006-09-04 The Created this header //============================================================================= defaultproperties { Begin Object Class=GUIButton name=QuitBackground WinWidth=0.7 WinLeft=0.15 WinTop=0.25 WinHeight=0.5 bAcceptsInput=false bNeverFocus=true StyleName="GeoCallBar" End Object Controls(0)=GUIButton'QuitBackground' Begin Object Class=GUIGFxButton Name=NoReport Caption="" Graphic=Material'InGameMenuImagesT.NoBackgroundButtons.Closed' Position="ICP_Scaled" StyleName="MidGameButton" OnClick=InternalOnClick End Object Controls(1)=GUIButton'NoReport' Begin Object Class=GUIGFxButton Name=HelpButton Caption="" Graphic=Material'InGameMenuImagesT.NoBackgroundButtons.Questionmark' Position="ICP_Scaled" StyleName="MidGameButton" bNeverFocus=true OnClick=InternalOnClick End Object Controls(2)=GUIButton'HelpButton' Begin Object Class=GUIGFxButton Name=NextPage Caption="" Graphic=Material'InGameMenuImagesT.NoBackgroundButtons.Next' Position="ICP_Scaled" StyleName="MidGameButton" bNeverFocus=true bVisible=false OnClick=InternalOnClick End Object Controls(3)=GUIButton'NextPage' Begin Object class=GUILabel Name=TopicDesc Caption="***" TextALign=TXTA_Center TextColor=(R=255,G=120,B=0,A=255) TextFont="HeaderFont" WinWidth=1 WinLeft=0 WinTop=0.3 WinHeight=32 End Object Controls(4)=GUILabel'TopicDesc' // ************************************************************** // BUTTONS FOR OPTIONS // // ************************************************************** Begin Object Class=GUIGFxButton Name=RedButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalFailureMarker' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(5)=GUIButton'RedButton' Begin Object Class=GUIGFxButton Name=YelButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalMeasureMarker' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(6)=GUIButton'YelButton' Begin Object Class=GUIGFxButton Name=MapButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalMap' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(7)=GUIButton'MapButton' Begin Object Class=GUIGFxButton Name=HandButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalHandbook' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(8)=GUIButton'HandButton' Begin Object Class=GUIGFxButton Name=NoteButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalNotebook' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(9)=GUIButton'NoteButton' Begin Object Class=GUIGFxButton Name=StatButton Graphic=Material'InGameMenuImagesT.ImageButtons.FinalStats' Position="ICP_Scaled" Caption="***" StyleName="MidGameButton_Orange" OnClick=InternalOnClick End Object Controls(10)=GUIButton'StatButton' ButtonWidth=0.17 ButtonHeight=0.12 ButtonHGap=0.02 ButtonVGap=0.037 BarHeight=0.21 BarVPos=0.5 SButtonSize=0.06 SButtonHGap=0.02 SButtonVGap=0.02 OptionSelected=0 OpenSound=sound'RuntimeInterfaceSounds.SelectDshort' bIgnoreEsc=true bRequire640x480=false bAllowedAsLast=true EN_RedMarker="Report Marker" EN_YellowMarker="Measurement Marker" EN_Map="Map" EN_Handbook="Handbook" EN_Notebook="Note book" EN_Statistic="Statistic" EN_Topic="Inventory Menu" NL_RedMarker="Rapportpiket" NL_YellowMarker="Meetpiket" NL_Map="Kaart" NL_Handbook="Handboek" NL_Notebook="Notitieblok" NL_Statistic="Statistiek" NL_Topic="Inventaris Menu" }