Esempio n. 1
0
        private static bool HandleInputs(CKeys keys, CMouse Mouse)
        {
            KeyEvent   KeyEvent   = new KeyEvent();
            MouseEvent MouseEvent = new MouseEvent();

            bool Resume = true;

            while (keys.PollEvent(ref KeyEvent))
            {
                if (KeyEvent.Key == Keys.Left || KeyEvent.Key == Keys.Right || KeyEvent.Key == Keys.Up || KeyEvent.Key == Keys.Down)
                {
                    CSettings.MouseInacive();
                    _Cursor.FadeOut();
                }

                if (KeyEvent.ModSHIFT && (KeyEvent.Key == Keys.F1))
                {
                    CSettings.GameState = EGameState.EditTheme;
                }
                else if (KeyEvent.ModALT && (KeyEvent.Key == Keys.Enter))
                {
                    CSettings.bFullScreen = !CSettings.bFullScreen;
                }
                else if (KeyEvent.ModALT && (KeyEvent.Key == Keys.P))
                {
                    CDraw.MakeScreenShot();
                }
                else
                {
                    if (!_Fading)
                    {
                        Resume &= Screens[(int)ActualScreen].HandleInput(KeyEvent);
                    }
                }
            }

            while (Mouse.PollEvent(ref MouseEvent))
            {
                if (MouseEvent.Wheel != 0)
                {
                    CSettings.MouseActive();
                    _Cursor.FadeIn();
                }

                UpdateMousePosition(MouseEvent.X, MouseEvent.Y);

                if (!_Fading && (_Cursor.IsActive || MouseEvent.LB || MouseEvent.RB))
                {
                    Resume &= Screens[(int)ActualScreen].HandleMouse(MouseEvent);
                }
            }
            return(Resume);
        }