static public void Update(List <ActionKey> keys)
        {
            ActionKey key = keys.Last();

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.confirmString) || key.actionIndentifierString.Equals(Game1.openMenuString)))
            {
                SettingsMenu.HandleConfirmOrClick();
                KeyboardMouseUtility.bPressed = true;
            }

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.moveDownString) || key.actionIndentifierString.Equals(Game1.cameraMoveDownString)))
            {
                SettingsMenu.HandleUpDown(true);
                KeyboardMouseUtility.bPressed = true;
            }

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.moveUpString) || key.actionIndentifierString.Equals(Game1.cameraMoveUpString)))
            {
                SettingsMenu.HandleUpDown(false);
                KeyboardMouseUtility.bPressed = true;
            }

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.moveLeftString) || key.actionIndentifierString.Equals(Game1.cameraMoveLeftString)))
            {
                SettingsMenu.HandleLeftRight(false);
                KeyboardMouseUtility.bPressed = true;
            }

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.moveRightString) || key.actionIndentifierString.Equals(Game1.cameraMoveRightString)))
            {
                SettingsMenu.HandleLeftRight(true);
                KeyboardMouseUtility.bPressed = true;
            }

            if ((!KeyboardMouseUtility.AnyButtonsPressed()) && (key.actionIndentifierString.Equals(Game1.cancelString) || key.actionIndentifierString.Equals(Game1.SettingsMenu)))
            {
                SettingsMenu.HandleCancel();
                KeyboardMouseUtility.bPressed = true;
            }

            if (KeyboardMouseUtility.ScrollingDown())
            {
                LoadFileTab.AddScrollOffSet(4.2f * 10);
            }

            if (KeyboardMouseUtility.ScrollingUp())
            {
                LoadFileTab.AddScrollOffSet(-4.2f * 10);
            }
        }
        private static bool StandardControlsLoad(ActionKey actionKey)
        {
            if (!KeyboardMouseUtility.AnyButtonsPressed() && actionKey.actionIndentifierString.Equals(Game1.cancelString))
            {
                sc.CloseLoadScreen();
                KeyboardMouseUtility.bPressed = true;
                return(false);
            }

            if (actionKey.actionIndentifierString.Equals(Game1.cameraMoveDownString))
            {
                LoadFileTab.AddScrollOffSet(4.2f);
            }

            if (KeyboardMouseUtility.ScrollingDown())
            {
                LoadFileTab.AddScrollOffSet(4.2f * 10);
            }

            if (actionKey.actionIndentifierString.Equals(Game1.cameraMoveUpString))
            {
                LoadFileTab.AddScrollOffSet(-4.2f);
            }

            if (KeyboardMouseUtility.ScrollingUp())
            {
                LoadFileTab.AddScrollOffSet(-4.2f * 10);
            }

            if (!KeyboardMouseUtility.AnyButtonsPressed() && (actionKey.actionIndentifierString.Equals(Game1.moveDownString)))
            {
                sc.lgs.HandleDown();
            }

            if (!KeyboardMouseUtility.AnyButtonsPressed() && actionKey.actionIndentifierString.Equals(Game1.moveUpString))
            {
                sc.lgs.HandleUp();
            }

            if (!KeyboardMouseUtility.AnyButtonsPressed() && !KeyboardMouseUtility.bMouseButtonPressed && actionKey.actionIndentifierString.Equals(Game1.confirmString))
            {
                sc.lgs.HandleConfirm();
            }

            if (!KeyboardMouseUtility.AnyButtonsPressed() && KeyboardMouseUtility.bMouseButtonPressed && actionKey.actionIndentifierString.Equals(Game1.confirmString))
            {
                sc.lgs.HandleMouseClick();
            }
            return(false);
        }
示例#3
0
        private static void SpecificCharactersPageControls(ActionKey key)
        {
            bool bChangeMatrix = false;

            if (GameMenuHandler.charTabList.Count > 2 && key.actionIndentifierString.Equals(Game1.cameraMoveDownString) && -GameMenuHandler.characterTabVerticalModifier <= GameMenuHandler.charTabList[GameMenuHandler.charTabList.Count - 2].tabLocation.Y - 25)
            {
                GameMenuHandler.characterTabVerticalModifier -= 4.2f;
                bChangeMatrix = true;
            }

            if (GameMenuHandler.charTabList.Count > 2 && key.actionIndentifierString.Equals(Game1.cameraMoveUpString) && GameMenuHandler.characterTabVerticalModifier < 0)
            {
                GameMenuHandler.characterTabVerticalModifier += 4.2f;
                bChangeMatrix = true;
            }

            if (GameMenuHandler.CharacterTabContainsMouse())
            {
                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.confirmString))
                {
                    var selectedTab = GameMenuHandler.selectedCharacterTab();
                    if (!selectedTab.Equals(default(GameMenuHandler.CharacterTabdisplay)))
                    {
                        GameMenuHandler.selectedCharacterContext = new CharacterContextMenu(GameMenuHandler.characterTabVerticalModifier, new Point(100, 50), new Point(100, 150), selectedTab);
                    }
                }
            }

            if (GameMenuHandler.charTabList.Count > 2 && KeyboardMouseUtility.ScrollingDown() && -GameMenuHandler.characterTabVerticalModifier <= GameMenuHandler.charTabList[GameMenuHandler.charTabList.Count - 2].tabLocation.Y - 25)
            {
                GameMenuHandler.characterTabVerticalModifier -= 4.2f * 4;
                bChangeMatrix = true;
            }

            if (GameMenuHandler.charTabList.Count > 2 && KeyboardMouseUtility.ScrollingUp() && GameMenuHandler.characterTabVerticalModifier < 0)
            {
                GameMenuHandler.characterTabVerticalModifier += 4.2f * 4;
                bChangeMatrix = true;
            }

            if (bChangeMatrix)
            {
                GameMenuHandler.characterTabAdjustedMatrix = Matrix.CreateTranslation(new Vector3(0, GameMenuHandler.characterTabVerticalModifier, 1));
            }
        }
示例#4
0
        private void ObjectLayerAddingControls(GameTime gt, Vector2 editorCursorPos)
        {
            if (MapBuilder.objAddition != null && MapBuilder.objAddition.IsCorrect())
            {
                if (Mouse.GetState().LeftButton == ButtonState.Pressed && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    KeyboardMouseUtility.bMouseButtonPressed = true;
                    MapBuilder.objAddition.HandleCopyAtMousePos(editorCursorPos);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && KeyboardMouseUtility.ScrollingUp())
                {
                    MapBuilder.objAddition.Scale(0.05f);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && KeyboardMouseUtility.ScrollingDown())
                {
                    MapBuilder.objAddition.Scale(-0.05f);
                }
            }
        }
        static public void Update(GameTime gt)
        {
            CheckMouse();
            // selectedSprite.position = new Vector2(400,300);
            anyButtonsPressed = false;
            mouseState        = Mouse.GetState();
            keyboardState     = Keyboard.GetState();
            //var wot = keyboardState.GetPressedKeys();
            //String test = "";
            //foreach (var item in wot)
            //{
            //    test += item;
            //    test += " + ";
            //}
            //Console.WriteLine(test);

            if (!KeyboardMouseUtility.AnyButtonsPressed() && Keyboard.GetState().IsKeyDown(Keys.LeftAlt) && Keyboard.GetState().IsKeyDown(Keys.Enter))
            {
                // ResolutionUtility.AdjustResolution(Game1.monitorSize.X, Game1.monitorSize.Y, Game1.graphics);
                ResolutionUtility.toggleFullscreen();
                KeyboardMouseUtility.bPressed = true;
            }



            if (keyboardState.GetPressedKeys().Length > 1)
            {
                foreach (var key in Game1.actionKeyList)
                {
                    if (keyboardState.GetPressedKeys()[keyboardState.GetPressedKeys().Length - 1] == (key.assignedActionKey))
                    {
                        lastPressedKey = key;
                    }
                }
            }
            else
            {
                foreach (var key in Game1.actionKeyList)
                {
                    if (keyboardState.IsKeyDown(key.assignedActionKey))
                    {
                        lastPressedKey = key;
                        //selectedSprite.MoverMustUpdateHitboxes = true;
                    }
                }
            }

            if (Keyboard.GetState().IsKeyDown(Keys.NumPad8))
            {
            }

            //if (keyboardState.GetPressedKeys().Length >= 1)
            //{
            //    foreach (var key in Game1.actionKeyList)
            //    {
            //        if (keyboardState.IsKeyDown(key.assignedActionKey))
            //        {
            //            lastPressedKey = key;
            //            break;
            //        }

            //    }
            //}



            List <Actions.ActionKey> pressedKeys = new List <Actions.ActionKey>();

            foreach (var key in Game1.actionKeyList)
            {
                if (keyboardState.IsKeyDown(key.assignedActionKey))
                {
                    #region EDITOR PLAYTEST FUNCTION
                    if (MapBuilder.bPlayTest && Game1.bIsDebug)
                    {
                        if (key.actionIndentifierString.Equals(Game1.cancelString) && Keyboard.GetState().IsKeyDown(Keys.LeftShift) && MapBuilder.bPlayTest)
                        {
                            ReturnToEditorAction();
                            break;
                        }
                    }
                    #endregion

                    pressedKeys.Add(key);
                }
            }


            if (Mouse.GetState().LeftButton == ButtonState.Pressed)
            {
                // KeyboardMouseUtility.bPressed = true;
                pressedKeys.Add(Game1.actionKeyList.Find(key => key.actionIndentifierString.Equals(Game1.confirmString, StringComparison.OrdinalIgnoreCase)));
                KeyboardMouseUtility.bMouseButtonPressed = true;
            }


            if (Mouse.GetState().RightButton == ButtonState.Pressed)
            {
                // KeyboardMouseUtility.bPressed = true;
                pressedKeys.Add(Game1.actionKeyList.Find(key => key.actionIndentifierString.Equals(Game1.cancelString, StringComparison.OrdinalIgnoreCase)));
                KeyboardMouseUtility.bMouseButtonPressed = true;
            }

            if (Mouse.GetState().RightButton != ButtonState.Pressed && Mouse.GetState().LeftButton != ButtonState.Pressed)
            {
                KeyboardMouseUtility.bMouseButtonPressed = false;
            }

            if (KeyboardMouseUtility.ScrollingDown() || KeyboardMouseUtility.ScrollingUp())
            {
                pressedKeys.Add(new Actions.ActionKey());
                pressedKeys.Last().actionIndentifierString = "Scroll";
            }

            #region NON EDITOR PLAYER CONTROLS
            if (pressedKeys.Count != 0)
            {
                // GameProcessor.bUpdateShadows = true;
                GameProcessor.bUpdateOnceMore = true;
                anyButtonsPressed             = true;
                //  GameProcessor.GenerateCamera(GameProcessor.cameraFollowTarget, .06f, GameProcessor.zoom);
                if (LUA.LuaExecutionList.DemandOverride())
                {
                    LUA.LuaExecutionList.ControlOverride(pressedKeys);
                }

                switch (currentController)
                {
                case Controllers.NonCombat:
                    NonCombatCtrl.Update(pressedKeys);
                    break;

                case Controllers.Combat:
                    CombatCtrl.Update(pressedKeys);
                    break;

                case Controllers.Menu:
                    MenuCtrl.Update(pressedKeys);
                    break;

                case Controllers.Dialogue:
                    DialogueCtrl.Update(pressedKeys);
                    break;

                case Controllers.SoloCombat:
                    SoloCombatCtrl.Update(pressedKeys);
                    break;

                case Controllers.EXPGainScreen:
                    ExpGainCtrl.Update(pressedKeys);
                    break;

                case Controllers.StartScreen:
                    ContextControllers.StartScreenCtrl.Update(pressedKeys);
                    break;

                case Controllers.ScriptProcessor:
                    ScriptProcessorCtrl.Update(pressedKeys);
                    break;

                case Controllers.GameSettingsMenu:
                    if (!SettingsMenu.bIsRunning)
                    {
                        currentController = Controllers.NonCombat;
                    }
                    GameSettingsMenuCtrl.Update(pressedKeys);
                    break;

                case Controllers.GameOptions:
                    if (!OptionsMenu.bIsRunning)
                    {
                        currentController = Controllers.NonCombat;
                    }
                    GameOptionsMenuCtrl.Update(pressedKeys);
                    break;

                default:
                    break;
                }
            }
            else if (KeyboardMouseUtility.bMouseMoved)
            {
                switch (currentController)
                {
                case Controllers.NonCombat:
                    break;

                case Controllers.Combat:
                    break;

                case Controllers.Menu:
                    MenuCtrl.MouseMove();
                    break;

                case Controllers.Dialogue:
                    break;

                case Controllers.SoloCombat:
                    break;

                case Controllers.EXPGainScreen:
                    break;

                case Controllers.StartScreen:
                    ContextControllers.StartScreenCtrl.MouseMove();
                    break;

                case Controllers.ScriptProcessor:
                    ScriptProcessorCtrl.HandleMouseMove();
                    break;

                case Controllers.GameSettingsMenu:
                    GameSettingsMenuCtrl.HandleMouseMove();
                    break;

                case Controllers.GameOptions:
                    GameOptionsMenuCtrl.HandleMouseMove();
                    break;

                default:
                    break;
                }
            }
            else if (selectedSprite != null && !CombatProcessor.bIsRunning)
            {
                selectedSprite.animationIndex = (int)BaseCharacter.CharacterAnimations.Idle;
            }

            #endregion
            if (selectedSprite != null && (!CombatProcessor.bStartPhase1 && !CombatProcessor.bMainCombat && !CombatProcessor.bIsRunning) && !ScriptProcessor.bIsRunning)
            {
                selectedSprite.Update(gt);
            }

            stop : { }
        }
示例#6
0
        private void ObjectLayerControls(GameTime gt, Vector2 editorCursorPos)
        {
            //Console.WriteLine(editorCursorPos);

            if (MapBuilder.objSelection != null && MapBuilder.objSelection.IsCorrect() && currentObjectEditType != objectLayerType.MultiSelect)
            {
                if (Keyboard.GetState().IsKeyDown(Keys.Space) && !KeyboardMouseUtility.AnyButtonsPressed() && currentObjectEditType != objectLayerType.ObjectGroup)
                {
                    MapBuilder.objSelection.OpenEditWindow();
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Up) && Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    MapBuilder.objSelection.Move(new Vector2(0, -1));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Down) && Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    MapBuilder.objSelection.Move(new Vector2(0, 1));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Left) && Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    MapBuilder.objSelection.Move(new Vector2(-1, 0));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Right) && Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    MapBuilder.objSelection.Move(new Vector2(1, 0));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Up) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift))
                {
                    MapBuilder.objSelection.Move(new Vector2(0, -objectMoveSpeed));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Down) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift))
                {
                    MapBuilder.objSelection.Move(new Vector2(0, objectMoveSpeed));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Left) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift))
                {
                    MapBuilder.objSelection.Move(new Vector2(-objectMoveSpeed, 0));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Right) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift))
                {
                    MapBuilder.objSelection.Move(new Vector2(objectMoveSpeed, 0));
                }

                if (Keyboard.GetState().IsKeyDown(Keys.Q) && !KeyboardMouseUtility.AnyButtonsPressed() && currentObjectEditType != objectLayerType.ObjectGroup)
                {
                    MapBuilder.objSelection.HandleCopyAtMousePos(editorCursorPos);
                }

                if (Keyboard.GetState().IsKeyDown(Keys.E))
                {
                    MapBuilder.objSelection.HandleMoveToMousePos(editorCursorPos);
                }


                if (Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingUp())
                {
                    objectMoveSpeed++;
                }

                if (Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingDown() && objectMoveSpeed > 1)
                {
                    objectMoveSpeed--;
                }
            }

            //if (MapBuilder.objSelection != null && MapBuilder.objSelection.IsCorrect() && MapBuilder.objSelection.selectedType == typeof(ObjectGroup))
            //{
            //    if (Keyboard.GetState().IsKeyDown(Keys.Tab) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed() && currentObjectEditType != objectLayerType.ObjectGroup)
            //    {
            //        currentObjectEditType = objectLayerType.ObjectGroup;
            //        KeyboardMouseUtility.bPressed = true;
            //        MapBuilder.objSelection.extraArg = MapBuilder.objSelection.selectedObject;
            //    }
            //}

            //if (Keyboard.GetState().IsKeyDown(Keys.Tab) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed() && currentObjectEditType == objectLayerType.ObjectGroup)
            //{
            //    currentObjectEditType = objectLayerType.normal;
            //    KeyboardMouseUtility.bPressed = true;
            //}

            if (Keyboard.GetState().IsKeyDown(Keys.Tab) && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && !KeyboardMouseUtility.AnyButtonsPressed())
            {
                //MapBuilder.objSelection = new Utilities.Sprite.EditorObjectSelection();
                KeyboardMouseUtility.bPressed = true;
                currentObjectEditType++;
                if ((int)currentObjectEditType >= Enum.GetNames(typeof(objectLayerType)).Length)
                {
                    currentObjectEditType = 0;
                }

                switch (currentObjectEditType)
                {
                case objectLayerType.normal:
                    break;

                case objectLayerType.ObjectGroup:
                    MapBuilder.objSelection.extraArg = MapBuilder.objSelection.selectedObject;
                    if (MapBuilder.objSelection.extraArg == null)
                    {
                        currentObjectEditType++;
                    }
                    break;

                case objectLayerType.MultiSelect:
                    break;

                default:
                    break;
                }
                // currentObjectEditType = objectLayerType.normal;
                KeyboardMouseUtility.bPressed = true;
            }

            switch (currentObjectEditType)
            {
            case objectLayerType.normal:
                if (Mouse.GetState().LeftButton == ButtonState.Pressed && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    var tempList = MapBuilder.loadedMap.allObjectsAtLocation(editorCursorPos);
                    if (tempList.Count == 1)
                    {
                        MapBuilder.objSelection = new Utilities.Sprite.EditorObjectSelection();
                        MapBuilder.objSelection.Assign(tempList.First());
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                    else if (tempList.Count > 1)
                    {
                        int index = tempList.IndexOf(MapBuilder.objSelection.selectedObject);
                        index++;
                        if (index >= tempList.Count)
                        {
                            index = 0;
                        }

                        MapBuilder.objSelection = new Utilities.Sprite.EditorObjectSelection();
                        MapBuilder.objSelection.Assign(tempList[index]);
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingUp())
                {
                    MapBuilder.objSelection.Scale(0.05f);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingDown())
                {
                    MapBuilder.objSelection.Scale(-0.05f);
                }

                break;

            case objectLayerType.ObjectGroup:
                if (Mouse.GetState().LeftButton == ButtonState.Pressed && !KeyboardMouseUtility.AnyButtonsPressed() && (MapBuilder.objSelection.extraArg is ObjectGroup) && MapBuilder.objSelection.extraArg != null)
                {
                    var tempList = (MapBuilder.objSelection.extraArg as ObjectGroup).groupItems.Cast <Object>().ToList();
                    if (tempList.Count == 1)
                    {
                        MapBuilder.objSelection.Assign(tempList.First());
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                    else if (tempList.Count > 1)
                    {
                        int index = tempList.IndexOf(MapBuilder.objSelection.selectedObject);
                        index++;
                        if (index >= tempList.Count)
                        {
                            index = 0;
                        }

                        MapBuilder.objSelection.Assign(tempList[index]);
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingUp())
                {
                    MapBuilder.objSelection.Scale(0.05f);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && KeyboardMouseUtility.ScrollingDown())
                {
                    MapBuilder.objSelection.Scale(-0.05f);
                }

                break;

            case objectLayerType.MultiSelect:
                if (Mouse.GetState().LeftButton == ButtonState.Pressed && !KeyboardMouseUtility.AnyButtonsPressed())
                {
                    var tempList = MapBuilder.loadedMap.allObjectsAtLocation(editorCursorPos);
                    if (tempList.Count == 1)
                    {
                        // MapBuilder.objSelection = new Utilities.Sprite.EditorObjectSelection();
                        MapBuilder.objSelection.Assign(tempList.First());
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                    else if (tempList.Count > 1)
                    {
                        int index = tempList.IndexOf(MapBuilder.objSelection.selectedObject);
                        index++;
                        if (index >= tempList.Count)
                        {
                            index = 0;
                        }

                        // MapBuilder.objSelection = new Utilities.Sprite.EditorObjectSelection();
                        MapBuilder.objSelection.Assign(tempList[index]);
                        Form1.MakeSureFormClosed(MapBuilder.oiw);
                    }
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && !Keyboard.GetState().IsKeyDown(Keys.LeftShift) && Keyboard.GetState().IsKeyDown(Keys.O))
                {
                    MapBuilder.objSelection.CreateObjectGroupFromMultiSelect();
                }
                break;

            default:
                break;
            }
        }
示例#7
0
        private static void SpecificCharacterContextPageControls(ActionKey key)
        {
            switch (GameMenuHandler.selectedCharacterContext.currentCharContext)
            {
            case CharacterContextMenu.CharacterContextMenuType.None:
                break;

            case CharacterContextMenu.CharacterContextMenuType.Select:
                #region

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.confirmString))
                {
                    GameMenuHandler.selectedCharacterContext.HandleConfirm();
                    KeyboardMouseUtility.bPressed = true;
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cancelString))
                {
                    GameMenuHandler.selectedCharacterContext = null;
                    KeyboardMouseUtility.bPressed            = true;
                }
                #endregion
                break;

            case CharacterContextMenu.CharacterContextMenuType.AbilityLineUp:
                #region
                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cancelString))
                {
                    GameMenuHandler.selectedCharacterContext.Close();
                    KeyboardMouseUtility.bPressed = true;
                }

                switch (GameMenuHandler.selectedCharacterContext.abilityLineupInfo.currentType)
                {
                case AbilityLineupInfo.controlType.Normal:
                    #region
                    if (!KeyboardMouseUtility.AnyButtonsPressed() && (key.actionIndentifierString.Equals(Game1.moveLeftString) || key.actionIndentifierString.Equals(Game1.moveRightString)))
                    {
                        GameMenuHandler.selectedCharacterContext.abilityLineupInfo.SwitchLeftRight();

                        KeyboardMouseUtility.bPressed = true;
                    }

                    if (!KeyboardMouseUtility.AnyButtonsPressed() && KeyboardMouseUtility.bMouseButtonPressed && key.actionIndentifierString.Equals(Game1.confirmString))
                    {
                        GameMenuHandler.selectedCharacterContext.abilityLineupInfo.HandleMouseClick();
                    }
                    else if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.confirmString))
                    {
                        GameMenuHandler.selectedCharacterContext.abilityLineupInfo.HandleConfirm();
                    }


                    if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.moveDownString))
                    {
                        GameMenuHandler.selectedCharacterContext.abilityLineupInfo.HandleUpDown(true);
                    }

                    if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.moveUpString))
                    {
                        GameMenuHandler.selectedCharacterContext.abilityLineupInfo.HandleUpDown(false);
                    }

                    if (GameMenuHandler.selectedCharacterContext.abilityLineupInfo.bCursorFocusRight)
                    {
                        if (key.actionIndentifierString.Equals(Game1.cameraMoveDownString))
                        {
                            AbilitySelectTab.AddScrollOffSetRight(-4.2f);
                        }

                        if (key.actionIndentifierString.Equals(Game1.cameraMoveUpString))
                        {
                            AbilitySelectTab.AddScrollOffSetRight(4.2f);
                        }
                    }
                    else
                    {
                        if (key.actionIndentifierString.Equals(Game1.cameraMoveDownString))
                        {
                            AbilitySelectTab.AddScrollOffSetLeft(-4.2f);
                        }

                        if (key.actionIndentifierString.Equals(Game1.cameraMoveUpString))
                        {
                            AbilitySelectTab.AddScrollOffSetLeft(4.2f);
                        }
                    }
                    #endregion
                    break;

                default:
                    break;
                }

                #endregion
                break;

            case CharacterContextMenu.CharacterContextMenuType.ClassLineUp:
                #region
                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cancelString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.Close();
                    KeyboardMouseUtility.bPressed = true;
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.moveDownString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleUpDown(false);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.moveUpString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleUpDown(true);
                }

                if (key.actionIndentifierString.Equals(Game1.cameraMoveDownString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleScrollUpDown(4.2f);
                }

                if (key.actionIndentifierString.Equals(Game1.cameraMoveUpString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleScrollUpDown(-4.2f);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && KeyboardMouseUtility.bMouseButtonPressed && key.actionIndentifierString.Equals(Game1.confirmString))
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleMouseButtonPress(KeyboardMouseUtility.uiMousePos);
                    KeyboardMouseUtility.bPressed = true;
                }

                if (KeyboardMouseUtility.ScrollingDown())
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleScrollUpDown(4.2f * 4);
                }

                if (KeyboardMouseUtility.ScrollingUp())
                {
                    GameMenuHandler.selectedCharacterContext.classLineupInfo.HandleScrollUpDown(-4.2f * 4);
                }
                #endregion
                break;

            case CharacterContextMenu.CharacterContextMenuType.ClassPointLineUp:
                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cancelString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.Close();
                    KeyboardMouseUtility.bPressed = true;
                }

                if (key.actionIndentifierString.Equals(Game1.moveDownString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.HandleUpDown(false);
                }

                if (key.actionIndentifierString.Equals(Game1.moveUpString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.HandleUpDown(true);
                }

                if (key.actionIndentifierString.Equals(Game1.moveLeftString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.HandleLeft(false);
                }

                if (key.actionIndentifierString.Equals(Game1.moveRightString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.HandleRight(true);
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cameraMoveDownString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.SelectUpTalentNode();
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cameraMoveUpString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.SelectDownTalentNode();
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cameraMoveLeftString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.SelectLeftTalentNode();
                }

                if (!KeyboardMouseUtility.AnyButtonsPressed() && key.actionIndentifierString.Equals(Game1.cameraMoveRightString))
                {
                    GameMenuHandler.selectedCharacterContext.classPointLineupInfo.SelectRightTalentNode();
                }
                break;

            default:
                break;
            }
        }