Example #1
0
        /// <summary>
        /// Draw
        /// </summary>
        /// <param name="gameTime"></param>
        public override void Draw(GameTime gameTime)
        {
            base.Draw(gameTime);

            //Gestion du Input
            if (ScriptManager.ScriptUserControls)
            {
                #region Gestion souris
                MouseState mouseState = Mouse.GetState();
                if (MouseManager.IsInWindow())
                {
                    if (MouseManager.OnLeftClick)
                    {
                        MouseLeftPress(mouseState);
                    }
                    if (MouseManager.OnRightClick)
                    {
                        MouseRightPress(mouseState);
                    }
                    if (MouseManager.OnLeftReleased)
                    {
                        MouseLeftReleased(mouseState);
                    }
                    if (MouseManager.OnRightReleased)
                    {
                        MouseRightReleased(mouseState);
                    }
                    if (MouseManager.Moved())
                    {
                        MouseMove(mouseState);
                    }
                }
                MouseManager.Update();
                #endregion

                #region Gestion keyboard
                KeyboardManager.Update();
                if (KeyboardManager.StateChanged)
                {
                    KeyPress();
                }
                #endregion
            }

            //Dessiner Screen
            DrawScene(gameTime);

            //Mise à jour de la position souris
            ActionManager.SetPosition(MouseManager.MouseX, MouseManager.MouseY);

            //Gestion curseur
            if (!DebugConsole.Visible && ScriptManager.ScriptUserControls)
            {
                _SpriteBatch.Begin();
                //Curseur
                if (ActionManager.ClickedState)
                {
                    Draw(ActionManager.CurrentActionSprite[2]);
                }
                else
                {
                    Draw(ActionManager.CurrentActionSprite[1]);
                }
                _SpriteBatch.End();
            }

            //Changement de scène
            if (ScriptManager.GoToScreen != null && ScriptManager.CurrentScript == null)
            {
                ChangeScreen(this, ScriptManager.GoToScreen);
            }
        }