Merge pull request #389 from YonKuma/suppressmouse

add code to suppress mouse clicks
This commit is contained in:
Jesse Plamondon-Willard 2017-11-26 14:56:20 -05:00 committed by GitHub
commit c0c65ec6dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 30 additions and 2 deletions

View File

@ -56,11 +56,11 @@ namespace StardewModdingAPI.Events
public void SuppressButton(SButton button) public void SuppressButton(SButton button)
{ {
// keyboard // keyboard
if (this.Button.TryGetKeyboard(out Keys key)) if (button.TryGetKeyboard(out Keys key))
Game1.oldKBState = new KeyboardState(Game1.oldKBState.GetPressedKeys().Union(new[] { key }).ToArray()); Game1.oldKBState = new KeyboardState(Game1.oldKBState.GetPressedKeys().Union(new[] { key }).ToArray());
// controller // controller
else if (this.Button.TryGetController(out Buttons controllerButton)) else if (button.TryGetController(out Buttons controllerButton))
{ {
var newState = GamePad.GetState(PlayerIndex.One); var newState = GamePad.GetState(PlayerIndex.One);
var thumbsticks = Game1.oldPadState.ThumbSticks; var thumbsticks = Game1.oldPadState.ThumbSticks;
@ -127,6 +127,34 @@ namespace StardewModdingAPI.Events
Game1.oldPadState = new GamePadState(thumbsticks, triggers, buttons, dpad); Game1.oldPadState = new GamePadState(thumbsticks, triggers, buttons, dpad);
} }
// mouse
else if (button == SButton.MouseLeft)
{
Game1.oldMouseState = new MouseState(
Game1.oldMouseState.X,
Game1.oldMouseState.Y,
Game1.oldMouseState.ScrollWheelValue,
ButtonState.Pressed,
Game1.oldMouseState.MiddleButton,
Game1.oldMouseState.RightButton,
Game1.oldMouseState.XButton1,
Game1.oldMouseState.XButton2
);
}
else if (button == SButton.MouseRight)
{
Game1.oldMouseState = new MouseState(
Game1.oldMouseState.X,
Game1.oldMouseState.Y,
Game1.oldMouseState.ScrollWheelValue,
Game1.oldMouseState.LeftButton,
Game1.oldMouseState.MiddleButton,
ButtonState.Pressed,
Game1.oldMouseState.XButton1,
Game1.oldMouseState.XButton2
);
}
} }
} }
} }