示例#1
0
        public void Setup()
        {
            _ui              = MockGame.Menu;
            _main            = _ui.MainOptions;
            _help            = _ui.HelpOptions;
            _settings        = _ui.SettingsOptions;
            _activePanels    = _ui.ActivePanels;
            _selector        = _ui.Player;
            _newGame         = _ui.NewGameOptions;
            _newGameAdvanced = _ui.NewGameAdvancedOptions;

            //Panels = new MenuPanel[] { main, help, settings, newGame, newGameAdvanced };
        }
示例#2
0
        //Actual Drawing Function
        public static void DrawGui()
        {
            if (!GwenInitialized)
            {
                InitGwen();
            }

            ErrorMsgHandler.Update();
            sGameCanvas.RestrictToParent = false;
            if (Globals.GameState == GameStates.Menu)
            {
                MenuUi.Draw();
            }
            else if (Globals.GameState == GameStates.InGame &&
                     ((!Interface.GameUi?.EscapeMenu?.IsHidden ?? true) || !HideUi))
            {
                GameUi.Draw();
            }
        }
示例#3
0
        //Gwen Low Level Functions
        public static void InitGwen()
        {
            //TODO: Make it easier to modify skin.
            if (Skin == null)
            {
                Skin = new TexturedBase(
                    GwenRenderer,
                    Globals.ContentManager.GetTexture(GameContentManager.TextureType.Gui, "defaultskin.png")
                    )
                {
                    DefaultFont = Graphics.UIFont
                };
            }

            MenuUi?.Dispose();

            GameUi?.Dispose();

            // Create a Canvas (it's root, on which all other GWEN controls are created)
            sMenuCanvas = new Canvas(Skin, "MainMenu")
            {
                Scale = 1f //(GameGraphics.Renderer.GetScreenWidth()/1920f);
            };

            sMenuCanvas.SetSize(
                (int)(Graphics.Renderer.GetScreenWidth() / sMenuCanvas.Scale),
                (int)(Graphics.Renderer.GetScreenHeight() / sMenuCanvas.Scale)
                );

            sMenuCanvas.ShouldDrawBackground = false;
            sMenuCanvas.BackgroundColor      = Color.FromArgb(255, 150, 170, 170);
            sMenuCanvas.KeyboardInputEnabled = true;

            // Create the game Canvas (it's root, on which all other GWEN controls are created)
            sGameCanvas = new Canvas(Skin, "InGame");

            //_gameCanvas.Scale = (GameGraphics.Renderer.GetScreenWidth() / 1920f);
            sGameCanvas.SetSize(
                (int)(Graphics.Renderer.GetScreenWidth() / sGameCanvas.Scale),
                (int)(Graphics.Renderer.GetScreenHeight() / sGameCanvas.Scale)
                );

            sGameCanvas.ShouldDrawBackground = false;
            sGameCanvas.BackgroundColor      = Color.FromArgb(255, 150, 170, 170);
            sGameCanvas.KeyboardInputEnabled = true;

            // Create GWEN input processor
            if (Globals.GameState == GameStates.Intro || Globals.GameState == GameStates.Menu)
            {
                GwenInput.Initialize(sMenuCanvas);
            }
            else
            {
                GwenInput.Initialize(sGameCanvas);
            }

            FocusElements         = new List <Framework.Gwen.Control.Base>();
            InputBlockingElements = new List <Framework.Gwen.Control.Base>();
            ErrorMsgHandler       = new ErrorHandler(sMenuCanvas, sGameCanvas);

            if (Globals.GameState == GameStates.Intro || Globals.GameState == GameStates.Menu)
            {
                MenuUi = new MenuGuiBase(sMenuCanvas);
                GameUi = null;
            }
            else
            {
                GameUi = new GameInterface(sGameCanvas);
                MenuUi = null;
            }

            Globals.OnLifecycleChangeState();

            GwenInitialized = true;
        }
示例#4
0
 public void OnEnable()
 {
     Instance = this;
 }