Exemple #1
0
 public override void OnButton(MenuWidget w)
 {
     if (w == buttonMenu)
     {
         game.ShowEscapeMenu();
     }
     if (w == buttonInventory)
     {
         game.ShowInventory();
     }
     if (w == buttonTalk)
     {
         if (game.GuiTyping == TypingState.None)
         {
             game.StartTyping();
             game.platform.ShowKeyboard(true);
         }
         else
         {
             game.StopTyping();
             game.platform.ShowKeyboard(false);
         }
     }
     if (w == buttonCamera)
     {
         game.CameraChange();
     }
 }
Exemple #2
0
 void MouseUp(int x, int y)
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             w.pressed = false;
         }
     }
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             if (w.type == WidgetType.Button)
             {
                 if (pointInRect(x, y, w.x, w.y, w.sizex, w.sizey))
                 {
                     OnButton(w);
                 }
             }
         }
     }
 }
Exemple #3
0
 public override void OnButton(MenuWidget w)
 {
     if (w == back)
     {
         OnBackPressed();
     }
 }
Exemple #4
0
    public ScreenLogin()
    {
        login = new MenuWidget();
        login.text = "Login";
        login.type = WidgetType.Button;
        login.nextWidget = 9;
        loginUsername = new MenuWidget();
        loginUsername.type = WidgetType.Textbox;
        loginUsername.text = "";
        loginUsername.description = "Username";
        loginUsername.nextWidget = 2;
        loginPassword = new MenuWidget();
        loginPassword.type = WidgetType.Textbox;
        loginPassword.text = "";
        loginPassword.description = "Password";
        loginPassword.password = true;
        loginPassword.nextWidget = 3;
        loginRememberMe = new MenuWidget();
        loginRememberMe.text = "Yes";
        loginRememberMe.type = WidgetType.Button;
        loginRememberMe.description = "Remember me";
        loginRememberMe.nextWidget = 0;

        createAccount = new MenuWidget();
        createAccount.text = "Create account";
        createAccount.type = WidgetType.Button;
        createAccountUsername = new MenuWidget();
        createAccountUsername.text = "";
        createAccountUsername.type = WidgetType.Textbox;
        createAccountUsername.description = "Username";
        createAccountPassword = new MenuWidget();
        createAccountPassword.text = "";
        createAccountPassword.type = WidgetType.Textbox;
        createAccountPassword.description = "Password";
        createAccountPassword.password = true;
        createAccountRememberMe = new MenuWidget();
        createAccountRememberMe.text = "Yes";
        createAccountRememberMe.type = WidgetType.Button;
        createAccountRememberMe.description = "Remember me";
        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;
        back.nextWidget = 1;

        title = "Login";

        widgets[0] = login;
        widgets[1] = loginUsername;
        widgets[2] = loginPassword;
        widgets[3] = loginRememberMe;
        widgets[4] = createAccount;
        widgets[5] = createAccountUsername;
        widgets[6] = createAccountPassword;
        widgets[7] = createAccountRememberMe;
        widgets[9] = back;

        loginUsername.GetFocus();

        loginResult = new LoginResultRef();
    }
Exemple #5
0
    public ScreenLogin()
    {
        login = new MenuWidget();
        login.text = "Login";
        login.type = WidgetType.Button;
        login.nextWidget = 9;
        loginUsername = new MenuWidget();
        loginUsername.type = WidgetType.Textbox;
        loginUsername.text = "";
        loginUsername.description = "Username";
        loginUsername.nextWidget = 2;
        loginPassword = new MenuWidget();
        loginPassword.type = WidgetType.Textbox;
        loginPassword.text = "";
        loginPassword.description = "Password";
        loginPassword.password = true;
        loginPassword.nextWidget = 3;
        loginRememberMe = new MenuWidget();
        loginRememberMe.text = "Yes";
        loginRememberMe.type = WidgetType.Button;
        loginRememberMe.description = "Remember me";
        loginRememberMe.nextWidget = 0;

        createAccount = new MenuWidget();
        createAccount.text = "Create account";
        createAccount.type = WidgetType.Button;
        createAccountUsername = new MenuWidget();
        createAccountUsername.text = "";
        createAccountUsername.type = WidgetType.Textbox;
        createAccountUsername.description = "Username";
        createAccountPassword = new MenuWidget();
        createAccountPassword.text = "";
        createAccountPassword.type = WidgetType.Textbox;
        createAccountPassword.description = "Password";
        createAccountPassword.password = true;
        createAccountRememberMe = new MenuWidget();
        createAccountRememberMe.text = "Yes";
        createAccountRememberMe.type = WidgetType.Button;
        createAccountRememberMe.description = "Remember me";
        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;
        back.nextWidget = 1;

        title = "Login";

        widgets[0] = login;
        widgets[1] = loginUsername;
        widgets[2] = loginPassword;
        widgets[3] = loginRememberMe;
        widgets[4] = createAccount;
        widgets[5] = createAccountUsername;
        widgets[6] = createAccountPassword;
        widgets[7] = createAccountRememberMe;
        widgets[9] = back;

        loginUsername.GetFocus();

        loginResult = new LoginResultRef();
    }
    public ScreenSingleplayer()
    {
        play = new MenuWidget();
        play.text = "Play";
        newWorld = new MenuWidget();
        newWorld.text = "New World";
        modify = new MenuWidget();
        modify.text = "Modify";
        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;
        open = new MenuWidget();
        open.text = "Create or open...";
        open.type = WidgetType.Button;

        title = "Singleplayer";

        widgets[0] = play;
        widgets[1] = newWorld;
        widgets[2] = modify;
        widgets[3] = back;
        widgets[4] = open;

        worldButtons = new MenuWidget[10];
        for (int i = 0; i < 10; i++)
        {
            worldButtons[i] = new MenuWidget();
            worldButtons[i].visible = false;
            widgets[5 + i] = worldButtons[i];
        }
    }
    public ScreenSingleplayer()
    {
        play          = new MenuWidget();
        play.text     = "Play";
        newWorld      = new MenuWidget();
        newWorld.text = "New World";
        modify        = new MenuWidget();
        modify.text   = "Modify";
        back          = new MenuWidget();
        back.text     = "Back";
        back.type     = WidgetType.Button;
        open          = new MenuWidget();
        open.text     = "Create or open...";
        open.type     = WidgetType.Button;

        title = "Singleplayer";

        widgets[0] = play;
        widgets[1] = newWorld;
        widgets[2] = modify;
        widgets[3] = back;
        widgets[4] = open;

        worldButtons = new MenuWidget[10];
        for (int i = 0; i < 10; i++)
        {
            worldButtons[i]         = new MenuWidget();
            worldButtons[i].visible = false;
            widgets[5 + i]          = worldButtons[i];
        }
    }
 public override void OnButton(MenuWidget w)
 {
     if (w == back)
     {
         OnBackPressed();
     }
 }
    public ScreenConnectToIp()
    {
        buttonConnect = new MenuWidget();
        buttonConnect.text = "Connect";
        buttonConnect.type = WidgetType.Button;
        buttonConnect.nextWidget = 3;
        textboxIp = new MenuWidget();
        textboxIp.type = WidgetType.Textbox;
        textboxIp.text = "";
        textboxIp.description = "Ip";
        textboxIp.nextWidget = 2;
        textboxPort = new MenuWidget();
        textboxPort.type = WidgetType.Textbox;
        textboxPort.text = "";
        textboxPort.description = "Port";
        textboxPort.nextWidget = 0;

        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;
        back.nextWidget = 1;

        title = "Connect to IP";

        widgets[0] = buttonConnect;
        widgets[1] = textboxIp;
        widgets[2] = textboxPort;
        widgets[3] = back;

        textboxIp.GetFocus();
    }
Exemple #10
0
    public ScreenConnectToIp()
    {
        buttonConnect            = new MenuWidget();
        buttonConnect.text       = "Connect";
        buttonConnect.type       = WidgetType.Button;
        buttonConnect.nextWidget = 3;
        textboxIp               = new MenuWidget();
        textboxIp.type          = WidgetType.Textbox;
        textboxIp.text          = "";
        textboxIp.description   = "Ip";
        textboxIp.nextWidget    = 2;
        textboxPort             = new MenuWidget();
        textboxPort.type        = WidgetType.Textbox;
        textboxPort.text        = "";
        textboxPort.description = "Port";
        textboxPort.nextWidget  = 0;

        back            = new MenuWidget();
        back.text       = "Back";
        back.type       = WidgetType.Button;
        back.nextWidget = 1;

        title = "Connect to IP";

        widgets[0] = buttonConnect;
        widgets[1] = textboxIp;
        widgets[2] = textboxPort;
        widgets[3] = back;

        textboxIp.GetFocus();
    }
 public override void OnButton(MenuWidget w)
 {
     if (w == buttonMenu)
     {
         game.ShowEscapeMenu();
     }
     if (w == buttonInventory)
     {
         game.ShowInventory();
     }
     if (w == buttonTalk)
     {
         if (game.GuiTyping == TypingState.None)
         {
             game.StartTyping();
             game.platform.ShowKeyboard(true);
         }
         else
         {
             game.StopTyping();
             game.platform.ShowKeyboard(false);
         }
     }
     if (w == buttonCamera)
     {
         game.CameraChange();
     }
 }
    public ScreenModifyWorld()
    {
        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;

        widgets[0] = back;
    }
Exemple #13
0
    public ScreenModifyWorld()
    {
        back      = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;

        widgets[0] = back;
    }
Exemple #14
0
 void KeyPress(KeyPressEventArgs e)
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             if (w.hasKeyboardFocus)
             {
                 if (e.GetKeyChar() == 9 || e.GetKeyChar() == 13) // tab, enter
                 {
                     if (w.type == WidgetType.Button && e.GetKeyChar() == 13)
                     {
                         //Call OnButton when enter is pressed and widget is a button
                         OnButton(w);
                         return;
                     }
                     else if (w.nextWidget != -1)
                     {
                         //Just switch focus otherwise
                         w.LoseFocus();
                         widgets[w.nextWidget].GetFocus();
                         return;
                     }
                 }
             }
             if (w.type == WidgetType.Textbox)
             {
                 if (w.editing)
                 {
                     string s = menu.CharToString(e.GetKeyChar());
                     if (e.GetKeyChar() == 8) // backspace
                     {
                         if (menu.StringLength(w.text) > 0)
                         {
                             w.text = StringTools.StringSubstring(menu.p, w.text, 0, menu.StringLength(w.text) - 1);
                         }
                         return;
                     }
                     if (e.GetKeyChar() == 22) //paste
                     {
                         if (menu.p.ClipboardContainsText())
                         {
                             w.text = StringTools.StringAppend(menu.p, w.text, menu.p.ClipboardGetText());
                         }
                         return;
                     }
                     if (menu.p.IsValidTypingChar(e.GetKeyChar()))
                     {
                         w.text = StringTools.StringAppend(menu.p, w.text, s);
                     }
                 }
             }
         }
     }
 }
Exemple #15
0
 public ScreenMain()
 {
     singleplayer       = new MenuWidget();
     multiplayer        = new MenuWidget();
     exit               = new MenuWidget();
     widgets[0]         = singleplayer;
     widgets[1]         = multiplayer;
     widgets[2]         = exit;
     queryStringChecked = false;
 }
Exemple #16
0
 public ScreenMain()
 {
     singleplayer = new MenuWidget();
     multiplayer = new MenuWidget();
     exit = new MenuWidget();
     widgets[0] = singleplayer;
     widgets[1] = multiplayer;
     widgets[2] = exit;
     queryStringChecked = false;
 }
Exemple #17
0
 void KeyDown(KeyEventArgs e)
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w == null)
         {
             continue;
         }
         if (w.hasKeyboardFocus)
         {
             if (e.GetKeyCode() == GlKeys.Tab || e.GetKeyCode() == GlKeys.Enter)
             {
                 if (w.type == WidgetType.Button && e.GetKeyCode() == GlKeys.Enter)
                 {
                     //Call OnButton when enter is pressed and widget is a button
                     OnButton(w);
                     return;
                 }
                 if (w.nextWidget != -1)
                 {
                     //Just switch focus otherwise
                     w.LoseFocus();
                     widgets[w.nextWidget].GetFocus();
                     return;
                 }
             }
         }
         if (w.type == WidgetType.Textbox)
         {
             if (w.editing)
             {
                 int key = e.GetKeyCode();
                 // pasting text from clipboard
                 if (e.GetCtrlPressed() && key == GlKeys.V)
                 {
                     if (menu.p.ClipboardContainsText())
                     {
                         w.text = StringTools.StringAppend(menu.p, w.text, menu.p.ClipboardGetText());
                     }
                     return;
                 }
                 // deleting characters using backspace
                 if (key == GlKeys.BackSpace)
                 {
                     if (menu.StringLength(w.text) > 0)
                     {
                         w.text = StringTools.StringSubstring(menu.p, w.text, 0, menu.StringLength(w.text) - 1);
                     }
                     return;
                 }
             }
         }
     }
 }
Exemple #18
0
 void MouseMove(MouseEventArgs e)
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             w.hover = pointInRect(e.GetX(), e.GetY(), w.x, w.y, w.sizex, w.sizey);
         }
     }
 }
Exemple #19
0
        public MainScreen(GraphicsDeviceManager graphicsDeviceManager, ContentManager content) : base(graphicsDeviceManager)
        {
            background       = content.Load <Texture2D>("Textures/fish");
            widgetBackground = content.Load <Texture2D>("Textures/water");
            menuFont         = content.Load <SpriteFont>("Fonts/SpriteFont1");
            mWidget          = new MenuWidget(widgetBackground, (graphicsDeviceManager.GraphicsDevice.Viewport.Width / 2) - (graphicsDeviceManager.GraphicsDevice.Viewport.Width / 3), 0, "Main Fish", menuFont);

            mWidget.AddMenuItem(new MenuItem("Play", removeWidget, menuFont));

            widgets.Add(mWidget);
        }
Exemple #20
0
 void AllLoseFocus()
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             w.LoseFocus();
         }
     }
 }
Exemple #21
0
    public void AddMenu(string menuName, MenuWidget menuWidget)
    {
        if (Menus.ContainsKey(menuName))
        {
            Debug.LogError("Menu key already exists.");
            return;
        }

        if (menuWidget != null)
        {
            Menus.Add(menuName, menuWidget);
        }
    }
Exemple #22
0
 public ScreenMain()
 {
     singleplayer       = new MenuWidget();
     multiplayer        = new MenuWidget();
     exit               = new MenuWidget();
     widgets[0]         = singleplayer;
     widgets[1]         = multiplayer;
     widgets[2]         = exit;
     queryStringChecked = false;
     cursorLoaded       = false;
     fontDefault        = new FontCi();
     fontDefault.size   = 20;
 }
    public override void OnButton(MenuWidget w)
    {
        for (int i = 0; i < 10; i++)
        {
            worldButtons[i].selected = false;
        }
        for (int i = 0; i < 10; i++)
        {
            if (worldButtons[i] == w)
            {
                worldButtons[i].selected = true;
            }
        }

        if (w == newWorld)
        {
            menu.StartNewWorld();
        }

        if (w == play)
        {
        }

        if (w == modify)
        {
            menu.StartModifyWorld();
        }

        if (w == back)
        {
            OnBackPressed();
        }

        if (w == open)
        {
            string extension;
            if (menu.p.SinglePlayerServerAvailable())
            {
                extension = "mddbs";
            }
            else
            {
                extension = "mdss";
            }
            string result = menu.p.FileOpenDialog(extension, "Manic Digger Savegame", menu.p.PathSavegames());
            if (result != null)
            {
                menu.ConnectToSingleplayer(result);
            }
        }
    }
Exemple #24
0
 public override void OnButton(MenuWidget w)
 {
     for (int i = 0; i < serverButtonsCount; i++)
     {
         serverButtons[i].selected = false;
         if (serverButtons[i] == w)
         {
             serverButtons[i].selected = true;
             if (serversOnList[i + serversPerPage * page] != null)
             {
                 selectedServerHash = serversOnList[i + serversPerPage * page].hash;
             }
         }
     }
     if (w == pageUp)
     {
         PageUp_();
     }
     if (w == pageDown)
     {
         PageDown_();
     }
     if (w == back)
     {
         OnBackPressed();
     }
     if (w == connect)
     {
         if (selectedServerHash != null)
         {
             menu.StartLogin(selectedServerHash, null, 0);
         }
     }
     if (w == connectToIp)
     {
         menu.StartConnectToIp();
     }
     if (w == refresh)
     {
         loaded  = false;
         loading = true;
     }
     if (w == logout)
     {
         Preferences pref = menu.p.GetPreferences();
         pref.Remove("Username");
         pref.Remove("Password");
         menu.p.SetPreferences(pref);
         loggedInName.text = "";
     }
 }
    public override void OnButton(MenuWidget w)
    {
        for (int i = 0; i < 10; i++)
        {
            worldButtons[i].selected = false;
        }
        for (int i = 0; i < 10; i++)
        {
            if (worldButtons[i] == w)
            {
                worldButtons[i].selected = true;
            }
        }

        if (w == newWorld)
        {
            menu.StartNewWorld();
        }

        if (w == play)
        {
        }

        if (w == modify)
        {
            menu.StartModifyWorld();
        }

        if (w == back)
        {
            OnBackPressed();
        }

        if (w == open)
        {
            string extension;
            if (menu.p.SinglePlayerServerAvailable())
            {
                extension = "mddbs";
            }
            else
            {
                extension = "mdss";
            }
            string result = menu.p.FileOpenDialog(extension, "Manic Digger Savegame", menu.p.PathSavegames());
            if (result != null)
            {
                menu.ConnectToSingleplayer(result);
            }
        }
    }
Exemple #26
0
    public void EnableMenu(string menuName)
    {
        if (Menus.ContainsKey(menuName))
        {
            DisableActiveMenu();

            ActiveMenu = Menus[menuName];
            ActiveMenu.gameObject.SetActive(true);
        }
        else
        {
            Debug.LogError("Menu not available in dictionary.");
        }
    }
Exemple #27
0
    public override void OnButton(MenuWidget w)
    {
        if (w == login)
        {
            loginResultData = new LoginData();
            if (serverHash != null)
            {
                // Connect to server hash, through main game menu. Do login.
                menu.Login(loginUsername.text, loginPassword.text, serverHash, "", loginResult, loginResultData);
            }
            else
            {
                // Connect to IP. Don't login

                // Save username
                if (loginRememberMe.text == menu.lang.Get("MainMenu_ChoiceYes"))
                {
                    Preferences preferences = menu.p.GetPreferences();
                    preferences.SetString("Username", loginUsername.text);
                    menu.p.SetPreferences(preferences);
                }

                ConnectData connectdata = new ConnectData();
                connectdata.Ip = serverIp;
                connectdata.Port = serverPort;
                connectdata.Username = loginUsername.text;
                menu.StartGame(false, null, connectdata);
            }
        }
        if (w == createAccount)
        {
            menu.CreateAccount(createAccountUsername.text, createAccountPassword.text, loginResult);
        }
        if (w == loginRememberMe || w == createAccountRememberMe)
        {
            if (w.text == menu.lang.Get("MainMenu_ChoiceYes"))
            {
                w.text = menu.lang.Get("MainMenu_ChoiceNo");
            }
            else
            {
                w.text = menu.lang.Get("MainMenu_ChoiceYes");
            }
        }
        if (w == back)
        {
            OnBackPressed();
        }
    }
    public void AddMenu(string menuName, MenuWidget menuWidget)
    {
        if (Menus.ContainsKey(menuName))
        {
            Debug.LogError("Tried to add existing menu widget into dictionary");
            return;
        }

        if (menuWidget == null)
        {
            return;
        }

        Menus.Add(menuName, menuWidget);
    }
Exemple #29
0
 void MouseMove(MouseEventArgs e)
 {
     if (e.GetEmulated() && !e.GetForceUsage())
     {
         return;
     }
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             w.hover = pointInRect(e.GetX(), e.GetY(), w.x, w.y, w.sizex, w.sizey);
         }
     }
 }
Exemple #30
0
 public override void OnButton(MenuWidget w)
 {
     if (w == singleplayer)
     {
         menu.StartSingleplayer();
     }
     if (w == multiplayer)
     {
         menu.StartMultiplayer();
     }
     if (w == exit)
     {
         menu.Exit();
     }
 }
Exemple #31
0
 public override void OnButton(MenuWidget w)
 {
     if (w == singleplayer)
     {
         menu.StartSingleplayer();
     }
     if (w == multiplayer)
     {
         menu.StartMultiplayer();
     }
     if (w == exit)
     {
         menu.Exit();
     }
 }
Exemple #32
0
 public override void OnButton(MenuWidget w)
 {
     if (w == buttonConnect)
     {
         FloatRef ret = new FloatRef();
         if (!Game.StringEquals(textboxIp.text, "") &&
             menu.p.FloatTryParse(textboxPort.text, ret))
         {
             menu.StartLogin(null, textboxIp.text, menu.p.IntParse(textboxPort.text));
         }
     }
     if (w == back)
     {
         OnBackPressed();
     }
 }
 public override void OnButton(MenuWidget w)
 {
     if (w == buttonConnect)
     {
         FloatRef ret = new FloatRef();
         if (!Game.StringEquals(textboxIp.text, "")
             && menu.p.FloatTryParse(textboxPort.text, ret))
         {
             menu.StartLogin(null, textboxIp.text, menu.p.IntParse(textboxPort.text));
         }
     }
     if (w == back)
     {
         OnBackPressed();
     }
 }
Exemple #34
0
 public override void OnButton(MenuWidget w)
 {
     if (w.isbutton)
     {
         string[] textValues = new string[WidgetCount];
         for (int i = 0; i < WidgetCount; i++)
         {
             string s = widgets[i].text;
             if (s == null)
             {
                 s = "";
             }
             textValues[i] = s;
         }
         game.SendPacketClient(ClientPackets.DialogClick(w.id, textValues, WidgetCount));
     }
 }
Exemple #35
0
 void DrawServerWidgets()
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             if (!w.visible)
             {
                 continue;
             }
             string text = w.text;
             if (w.selected)
             {
                 text = StringTools.StringAppend(menu.p, "&2", text);
             }
             if (w.type == WidgetType.Button)
             {
                 if (w.buttonStyle == ButtonStyle.ServerEntry)
                 {
                     string[] strings = menu.p.StringSplit(w.text, "\n", new IntRef());
                     if (w.selected)
                     {
                         //Highlight text if selected
                         strings[0] = StringTools.StringAppend(menu.p, "&2", strings[0]);
                         strings[1] = StringTools.StringAppend(menu.p, "&2", strings[1]);
                         strings[2] = StringTools.StringAppend(menu.p, "&2", strings[2]);
                         strings[3] = StringTools.StringAppend(menu.p, "&2", strings[3]);
                     }
                     DrawServerButton(strings[0], strings[1], strings[2], strings[3], w.x, w.y, w.sizex, w.sizey, w.image);
                     if (w.description != null)
                     {
                         //Display a warning sign, when server does not respond to queries
                         menu.Draw2dQuad(menu.GetTexture("serverlist_entry_noresponse.png"), w.x - 38 * menu.GetScale(), w.y, w.sizey / 2, w.sizey / 2);
                     }
                     if (strings[4] != menu.p.GetGameVersion())
                     {
                         //Display an icon if server version differs from client version
                         menu.Draw2dQuad(menu.GetTexture("serverlist_entry_differentversion.png"), w.x - 38 * menu.GetScale(), w.y + w.sizey / 2, w.sizey / 2, w.sizey / 2);
                     }
                 }
             }
         }
     }
 }
    public void DisableMenu(string menuName)
    {
        if (string.IsNullOrEmpty(menuName))
        {
            return;
        }
        if (Menus.ContainsKey(menuName))
        {
            DisableActiveMenu();

            ActiveMenu = Menus[menuName];
            Menus[menuName].DisableWidget();
        }
        else
        {
            Debug.LogError("Menu Is Not Available");
        }
    }
 public ModGuiTouchButtons()
 {
     touchButtonsEnabled = false;
     buttonMenu = new MenuWidget();
     buttonMenu.image = "TouchMenu.png";
     buttonInventory = new MenuWidget();
     buttonInventory.image = "TouchInventory.png";
     buttonTalk = new MenuWidget();
     buttonTalk.image = "TouchTalk.png";
     buttonCamera = new MenuWidget();
     buttonCamera.image = "TouchCamera.png";
     widgets[0] = buttonMenu;
     widgets[1] = buttonInventory;
     widgets[2] = buttonTalk;
     widgets[3] = buttonCamera;
     touchIdMove = -1;
     touchIdRotate = -1;
 }
Exemple #38
0
    public void AddMenu(string menuName, MenuWidget menuWidget)
    {
        if (string.IsNullOrEmpty(menuName))
        {
            return;
        }

        if (Menus.ContainsKey(menuName))
        {
            Debug.LogError("Menu already exist in Dictionary");
            return;
        }
        if (menuWidget == null)
        {
            return;
        }
        Menus.Add(menuName, menuWidget);
    }
 public ModGuiTouchButtons()
 {
     touchButtonsEnabled   = false;
     buttonMenu            = new MenuWidget();
     buttonMenu.image      = "TouchMenu.png";
     buttonInventory       = new MenuWidget();
     buttonInventory.image = "TouchInventory.png";
     buttonTalk            = new MenuWidget();
     buttonTalk.image      = "TouchTalk.png";
     buttonCamera          = new MenuWidget();
     buttonCamera.image    = "TouchCamera.png";
     widgets[0]            = buttonMenu;
     widgets[1]            = buttonInventory;
     widgets[2]            = buttonTalk;
     widgets[3]            = buttonCamera;
     touchIdMove           = -1;
     touchIdRotate         = -1;
 }
    public void EnableMenu(string menuName)
    {
        if (string.IsNullOrEmpty(menuName))
        {
            return;
        }

        if (Menus.ContainsKey(menuName))
        {
            DisableActiveMenu();

            ActiveWidget = Menus[menuName];
            ActiveWidget.EnableWidget();
        }
        else
        {
            Debug.LogError("Menu is not available in Dictionary!");
        }
    }
Exemple #41
0
 void KeyPress(KeyPressEventArgs e)
 {
     for (int i = 0; i < WidgetCount; i++)
     {
         MenuWidget w = widgets[i];
         if (w != null)
         {
             if (w.type == WidgetType.Textbox)
             {
                 if (w.editing)
                 {
                     if (menu.p.IsValidTypingChar(e.GetKeyChar()))
                     {
                         w.text = StringTools.StringAppend(menu.p, w.text, menu.CharToString(e.GetKeyChar()));
                     }
                 }
             }
         }
     }
 }
 public override void OnButton(MenuWidget w)
 {
     for (int i = 0; i < serverButtonsCount; i++)
     {
         serverButtons[i].selected = false;
         if (serverButtons[i] == w)
         {
             serverButtons[i].selected = true;
             if (serversOnList[i + serversPerPage * page] != null)
             {
                 selectedServerHash = serversOnList[i + serversPerPage * page].hash;
             }
         }
     }
     if (w == pageUp)
     {
         PageUp_();
     }
     if (w == pageDown)
     {
         PageDown_();
     }
     if (w == back)
     {
         OnBackPressed();
     }
     if (w == connect)
     {
         if (selectedServerHash != null)
         {
             menu.StartLogin(selectedServerHash, null, 0);
         }
     }
     if (w == connectToIp)
     {
         menu.StartConnectToIp();
     }
     if (w == refresh)
     {
         loaded = false;
         loading = true;
     }
     if (w == logout)
     {
         Preferences pref = menu.p.GetPreferences();
         pref.Remove("Username");
         pref.Remove("Password");
         menu.p.SetPreferences(pref);
         loggedInName.text = "";
     }
 }
Exemple #43
0
 GameScreen ConvertDialog(Game game, Packet_Dialog p)
 {
     DialogScreen s = new DialogScreen();
     s.widgets = new MenuWidget[p.WidgetsCount];
     s.WidgetCount = p.WidgetsCount;
     for (int i = 0; i < p.WidgetsCount; i++)
     {
         Packet_Widget a = p.Widgets[i];
         MenuWidget b = new MenuWidget();
         if (a.Type == Packet_WidgetTypeEnum.Text)
         {
             b.type = WidgetType.Label;
         }
         if (a.Type == Packet_WidgetTypeEnum.Image)
         {
             b.type = WidgetType.Button;
         }
         if (a.Type == Packet_WidgetTypeEnum.TextBox)
         {
             b.type = WidgetType.Textbox;
         }
         b.x = a.X;
         b.y = a.Y;
         b.sizex = a.Width;
         b.sizey = a.Height_;
         b.text = a.Text;
         if (b.text != null)
         {
             b.text = game.platform.StringReplace(b.text, "!SERVER_IP!", game.ServerInfo.connectdata.Ip);
         }
         if (b.text != null)
         {
             b.text = game.platform.StringReplace(b.text, "!SERVER_PORT!", game.platform.IntToString(game.ServerInfo.connectdata.Port));
         }
         b.color = a.Color;
         if (a.Font != null)
         {
             b.font = new FontCi();
             b.font.family = game.ValidFont(a.Font.FamilyName);
             b.font.size = game.DeserializeFloat(a.Font.SizeFloat);
             b.font.style = a.Font.FontStyle;
         }
         b.id = a.Id;
         b.isbutton = a.ClickKey != 0;
         if (a.Image == "Solid")
         {
             b.image = null;
         }
         else if (a.Image != null)
         {
             b.image = StringTools.StringAppend(game.platform, a.Image, ".png");
         }
         s.widgets[i] = b;
     }
     for (int i = 0; i < s.WidgetCount; i++)
     {
         if (s.widgets[i] == null) { continue; }
         if (s.widgets[i].type == WidgetType.Textbox)
         {
             s.widgets[i].editing = true;
             break;
         }
     }
     return s;
 }
    public ScreenMultiplayer()
    {
        WidgetCount = 64 + serverButtonsCount;
        widgets = new MenuWidget[WidgetCount];
        back = new MenuWidget();
        back.text = "Back";
        back.type = WidgetType.Button;
        back.nextWidget = 1;
        connect = new MenuWidget();
        connect.text = "Connect";
        connect.type = WidgetType.Button;
        connect.nextWidget = 3;
        connectToIp = new MenuWidget();
        connectToIp.text = "Connect to IP";
        connectToIp.type = WidgetType.Button;
        connectToIp.nextWidget = 2;
        refresh = new MenuWidget();
        refresh.text = "Refresh";
        refresh.type = WidgetType.Button;
        refresh.nextWidget = 0;

        page = 0;
        pageUp = new MenuWidget();
        pageUp.text = "";
        pageUp.type = WidgetType.Button;
        pageUp.buttonStyle = ButtonStyle.Text;
        pageUp.visible = false;
        pageDown = new MenuWidget();
        pageDown.text = "";
        pageDown.type = WidgetType.Button;
        pageDown.buttonStyle = ButtonStyle.Text;
        pageDown.visible = false;

        loggedInName = new MenuWidget();
        loggedInName.text = "";
        loggedInName.type = WidgetType.Button;
        loggedInName.buttonStyle = ButtonStyle.Text;

        logout = new MenuWidget();
        logout.text = "";
        logout.type = WidgetType.Button;
        //logout.image = "serverlist_entry_background.png";
        logout.buttonStyle = ButtonStyle.Button;

        title = "Multiplayer";

        widgets[0] = back;
        widgets[1] = connect;
        widgets[2] = refresh;
        widgets[3] = connectToIp;
        widgets[4] = pageUp;
        widgets[5] = pageDown;
        widgets[6] = loggedInName;
        widgets[7] = logout;

        serverListAddress = new HttpResponseCi();
        serverListCsv = new HttpResponseCi();
        serversOnList = new ServerOnList[serversOnListCount];
        thumbResponses = new ThumbnailResponseCi[serversOnListCount];

        serverButtons = new MenuWidget[serverButtonsCount];
        for (int i = 0; i < serverButtonsCount; i++)
        {
            MenuWidget b = new MenuWidget();
            b = new MenuWidget();
            b.text = "Invalid";
            b.type = WidgetType.Button;
            b.visible = false;
            b.image = "serverlist_entry_noimage.png";
            serverButtons[i] = b;
            widgets[8 + i] = b;
        }
        loading = true;
    }
Exemple #45
0
    public override void OnButton(MenuWidget w)
    {
        if (w == login)
        {
            loginResultData = new LoginData();
            if (serverHash != null)
            {
                // Connect to server hash, through main game menu. Do login.
                menu.Login(loginUsername.text, loginPassword.text, serverHash, "", loginResult, loginResultData);
            }
            else
            {
                // Connect to IP. Don't login

                // Save username
                if (loginRememberMe.text == menu.lang.Get("MainMenu_ChoiceYes"))
                {
                    Preferences preferences = menu.p.GetPreferences();
                    preferences.SetString("Username", loginUsername.text);
                    menu.p.SetPreferences(preferences);
                }

                ConnectData connectdata = new ConnectData();
                connectdata.Ip = serverIp;
                connectdata.Port = serverPort;
                connectdata.Username = loginUsername.text;
                menu.StartGame(false, null, connectdata);
            }
        }
        if (w == createAccount)
        {
            menu.CreateAccount(createAccountUsername.text, createAccountPassword.text, loginResult);
        }
        if (w == loginRememberMe || w == createAccountRememberMe)
        {
            if (w.text == menu.lang.Get("MainMenu_ChoiceYes"))
            {
                w.text = menu.lang.Get("MainMenu_ChoiceNo");
            }
            else
            {
                w.text = menu.lang.Get("MainMenu_ChoiceYes");
            }
        }
        if (w == back)
        {
            OnBackPressed();
        }
    }
Exemple #46
0
 public virtual void OnButton(MenuWidget w)
 {
 }
 public GameScreen()
 {
     WidgetCount = 64;
     widgets = new MenuWidget[WidgetCount];
 }
Exemple #48
0
 public override void OnButton(MenuWidget w)
 {
     if (w.isbutton)
     {
         string[] textValues = new string[WidgetCount];
         for (int i = 0; i < WidgetCount; i++)
         {
             string s = widgets[i].text;
             if (s == null)
             {
                 s = "";
             }
             textValues[i] = s;
         }
         game.SendPacketClient(ClientPackets.DialogClick(w.id, textValues, WidgetCount));
     }
 }