public void HandleInput() { CurrentKeyState = Keyboard.GetState(); if (!(CurrentKeyState.IsKeyDown(Keys.Right)) && !(CurrentKeyState.IsKeyDown(Keys.Left))) { //dir = 0; IsLeftPressed = false; IsRightPressed = false; if (PlayerState != PLAYER_STATE.IDLE && PlayerState != PLAYER_STATE.JUMP && PlayerState != PLAYER_STATE.FALLING) { PlayerState = PLAYER_STATE.IDLE; } } if (CurrentKeyState.IsKeyDown(Keys.Right)) { dir = 1; IsLeftPressed = false; IsRightPressed = true; if (Skeleton.FlipX == true) { Skeleton.FlipX = false; } if (PlayerState != PLAYER_STATE.R_RUN && PlayerState != PLAYER_STATE.JUMP && PlayerState != PLAYER_STATE.FALLING) { PlayerState = PLAYER_STATE.R_RUN; } } else if (CurrentKeyState.IsKeyDown(Keys.Left)) { dir = -1; IsLeftPressed = true; IsRightPressed = false; if (Skeleton.FlipX == false) { Skeleton.FlipX = true; } if (PlayerState != PLAYER_STATE.L_RUN && PlayerState != PLAYER_STATE.JUMP && PlayerState != PLAYER_STATE.FALLING) { PlayerState = PLAYER_STATE.L_RUN; } } if (PlayerState != PLAYER_STATE.JUMP && PlayerState != PLAYER_STATE.FALLING && CurrentKeyState.IsKeyDown(Keys.Z) && PrevKeyState.IsKeyUp(Keys.Z)) { IsGrounded = false; PlayerState = PLAYER_STATE.JUMP; IsJumpPressed = true; } if (/*PlayerState == PLAYER_STATE.JUMP && PlayerState != PLAYER_STATE.FALLING * && */CurrentKeyState.IsKeyUp(Keys.Z) && PrevKeyState.IsKeyDown(Keys.Z)) { IsJumpPressed = false; } PrevKeyState = CurrentKeyState; }
public static bool WasButtonPressed(Keys key) { bool pressed = false; if (CurrentKeyState.IsKeyUp(key) && PreviousKeyState.IsKeyDown(key)) { pressed = true; } return(pressed); }
public static bool GetKeyUp(Keys Key, KeyboardFlags keyboardFlags = KeyboardFlags.ANY) { bool BaseCond = CurrentKeyState.IsKeyUp(Key) && LastKeyState.IsKeyDown(Key); switch (keyboardFlags) { case KeyboardFlags.ANY: return(BaseCond); case KeyboardFlags.SOLO: return(BaseCond && Keyboard.GetState().IsKeyUp(Keys.LeftAlt) && Keyboard.GetState().IsKeyUp(Keys.LeftShift) && Keyboard.GetState().IsKeyUp(Keys.LeftControl)); case KeyboardFlags.SHIFT: return(BaseCond && Keyboard.GetState().IsKeyDown(Keys.LeftShift)); case KeyboardFlags.ALT: return(BaseCond && Keyboard.GetState().IsKeyDown(Keys.LeftAlt)); default: return(BaseCond && Keyboard.GetState().IsKeyDown(Keys.LeftControl)); } }
static bool IsKeyReleased(QKeyStates keyState) { return(CurrentKeyState.IsKeyUp((Keys)keyState) && PreviousKeyState.IsKeyDown((Keys)keyState)); }
public static bool IsKeyReleased(Keys key) { return(PreviousKeyState.IsKeyDown(key) && CurrentKeyState.IsKeyUp(key)); }
public static bool IsKeyUp(Keys key) { return(CurrentKeyState.IsKeyUp(key)); }