예제 #1
0
파일: Menu.cs 프로젝트: samoteph/Sugoi
        /// <summary>
        /// Mise à jour
        /// </summary>

        public void Update()
        {
            // retour en arrière
            if (gamepad.IsPressed(GamepadKeys.ButtonB))
            {
                gamepad.WaitForRelease(() =>
                {
                    BackCallback?.Invoke();
                });
            }

            var verticalController = gamepad.VerticalController;

            if (verticalController == GamepadKeys.Down)
            {
                MenuPosition++;

                this.CursorMoveCallback?.Invoke(MenuPosition);

                gamepad.WaitForRelease(30);
            }
            else if (verticalController == GamepadKeys.Up)
            {
                MenuPosition--;

                this.CursorMoveCallback?.Invoke(MenuPosition);

                gamepad.WaitForRelease(30);
            }

            if (gamepad.IsPressed(GamepadKeys.ButtonA))
            {
                gamepad.WaitForRelease(() =>
                {
                    this.MenuSelectedCallback?.Invoke(this.MenuPosition);
                });
            }
        }
예제 #2
0
 /// <summary>
 /// Callback to back button.
 /// </summary>
 /// <param name="sender"></param>
 private void BackCallbackHandler(object sender)
 {
     BackCallback?.Invoke(sender);
 }