Exemple #1
0
 internal static void CreateMenu(bool QuitOnly)
 {
     if (QuitOnly) {
         // quit menu only
         CurrentMenu = new MenuEntry[3];
         CurrentMenu[0] = new MenuCaption(Interface.GetInterfaceString("menu_quit_question"));
         CurrentMenu[1] = new MenuCommand(Interface.GetInterfaceString("menu_quit_no"), MenuTag.Back, 0);
         CurrentMenu[2] = new MenuCommand(Interface.GetInterfaceString("menu_quit_yes"), MenuTag.Quit, 0);
         CurrentMenuSelection = new int[] { 1 };
         CurrentMenuOffsets = new double[] { double.NegativeInfinity };
         CurrentMenu[1].Highlight = 1.0;
     } else {
         // full menu
         int n = 0;
         for (int i = 0; i < Stations.Length; i++) {
             if (PlayerStopsAtStation(i) & Stations[i].Stops.Length > 0) {
                 n++;
             }
         }
         MenuEntry[] a = new MenuCommand[n];
         n = 0;
         for (int i = 0; i < Stations.Length; i++) {
             if (PlayerStopsAtStation(i) & Stations[i].Stops.Length > 0) {
                 a[n] = new MenuCommand(Stations[i].Name, MenuTag.JumpToStation, i);
                 n++;
             }
         }
         if (n != 0) {
             CurrentMenu = new MenuEntry[4];
             CurrentMenu[0] = new MenuCommand(Interface.GetInterfaceString("menu_resume"), MenuTag.Back, 0);
             CurrentMenu[1] = new MenuSubmenu(Interface.GetInterfaceString("menu_jump"), a);
             CurrentMenu[2] = new MenuSubmenu(Interface.GetInterfaceString("menu_exit"), new MenuEntry[] {
                                              	new MenuCaption(Interface.GetInterfaceString("menu_exit_question")),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_exit_no"), MenuTag.Back, 0),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_exit_yes"), MenuTag.ExitToMainMenu, 0)
                                              });
             CurrentMenu[3] = new MenuSubmenu(Interface.GetInterfaceString("menu_quit"), new MenuEntry[] {
                                              	new MenuCaption(Interface.GetInterfaceString("menu_quit_question")),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_quit_no"), MenuTag.Back, 0),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_quit_yes"), MenuTag.Quit, 0)
                                              });
         } else {
             CurrentMenu = new MenuEntry[3];
             CurrentMenu[0] = new MenuCommand(Interface.GetInterfaceString("menu_resume"), MenuTag.Back, 0);
             CurrentMenu[1] = new MenuSubmenu(Interface.GetInterfaceString("menu_exit"), new MenuEntry[] {
                                              	new MenuCaption(Interface.GetInterfaceString("menu_exit_question")),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_exit_no"), MenuTag.Back, 0),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_exit_yes"), MenuTag.ExitToMainMenu, 0)
                                              });
             CurrentMenu[2] = new MenuSubmenu(Interface.GetInterfaceString("menu_quit"), new MenuEntry[] {
                                              	new MenuCaption(Interface.GetInterfaceString("menu_quit_question")),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_quit_no"), MenuTag.Back, 0),
                                              	new MenuCommand(Interface.GetInterfaceString("menu_quit_yes"), MenuTag.Quit, 0)
                                              });
         }
         CurrentMenuSelection = new int[] { 0 };
         CurrentMenuOffsets = new double[] { double.NegativeInfinity };
         CurrentMenu[0].Highlight = 1.0;
     }
 }
Exemple #2
0
 public MenuItem(MenuSubmenu parent = null)
 {
     ParentMenu = parent;
 }