From 8909d199d14d8cb60119e04e1bebf69aeeeb7140 Mon Sep 17 00:00:00 2001 From: zergon321 Date: Mon, 20 Apr 2020 21:46:15 +0300 Subject: [PATCH] Revert "Gamepad API added." This reverts commit 484c1775b099df4b6b3ddab1108e2a2e6b2c5107. --- pixelgl/joystick.go | 70 +++++++-------------------------------------- 1 file changed, 11 insertions(+), 59 deletions(-) diff --git a/pixelgl/joystick.go b/pixelgl/joystick.go index 0c4c5c4..8ff361b 100644 --- a/pixelgl/joystick.go +++ b/pixelgl/joystick.go @@ -4,7 +4,7 @@ import ( "github.com/go-gl/glfw/v3.3/glfw" ) -// Joystick is a joystick or controller (gamepad). +// Joystick is a joystick or controller. type Joystick int // List all of the joysticks. @@ -29,47 +29,6 @@ const ( JoystickLast = Joystick(glfw.JoystickLast) ) -// GamepadAxis corresponds to a gamepad axis. -type GamepadAxis int - -// Gamepad axis IDs. -const ( - AxisLeftX = GamepadAxis(glfw.AxisLeftX) - AxisLeftY = GamepadAxis(glfw.AxisLeftY) - AxisRightX = GamepadAxis(glfw.AxisRightX) - AxisRightY = GamepadAxis(glfw.AxisRightY) - AxisLeftTrigger = GamepadAxis(glfw.AxisLeftTrigger) - AxisRightTrigger = GamepadAxis(glfw.AxisRightTrigger) - AxisLast = GamepadAxis(glfw.AxisLast) -) - -// GamepadButton corresponds to a gamepad button. -type GamepadButton int - -// Gamepad button IDs. -const ( - ButtonA = GamepadButton(glfw.ButtonA) - ButtonB = GamepadButton(glfw.ButtonB) - ButtonX = GamepadButton(glfw.ButtonX) - ButtonY = GamepadButton(glfw.ButtonY) - ButtonLeftBumper = GamepadButton(glfw.ButtonLeftBumper) - ButtonRightBumper = GamepadButton(glfw.ButtonRightBumper) - ButtonBack = GamepadButton(glfw.ButtonBack) - ButtonStart = GamepadButton(glfw.ButtonStart) - ButtonGuide = GamepadButton(glfw.ButtonGuide) - ButtonLeftThumb = GamepadButton(glfw.ButtonLeftThumb) - ButtonRightThumb = GamepadButton(glfw.ButtonRightThumb) - ButtonDpadUp = GamepadButton(glfw.ButtonDpadUp) - ButtonDpadRight = GamepadButton(glfw.ButtonDpadRight) - ButtonDpadDown = GamepadButton(glfw.ButtonDpadDown) - ButtonDpadLeft = GamepadButton(glfw.ButtonDpadLeft) - ButtonLast = GamepadButton(glfw.ButtonLast) - ButtonCross = GamepadButton(glfw.ButtonCross) - ButtonCircle = GamepadButton(glfw.ButtonCircle) - ButtonSquare = GamepadButton(glfw.ButtonSquare) - ButtonTriangle = GamepadButton(glfw.ButtonTriangle) -) - // JoystickPresent returns if the joystick is currently connected. // // This API is experimental. @@ -103,32 +62,32 @@ func (w *Window) JoystickAxisCount(js Joystick) int { // If the button index is out of range, this will return false. // // This API is experimental. -func (w *Window) JoystickPressed(js Joystick, button GamepadButton) bool { - return w.currJoy.getButton(js, int(button)) +func (w *Window) JoystickPressed(js Joystick, button int) bool { + return w.currJoy.getButton(js, button) } // JoystickJustPressed returns whether the joystick Button has just been pressed down. // If the button index is out of range, this will return false. // // This API is experimental. -func (w *Window) JoystickJustPressed(js Joystick, button GamepadButton) bool { - return w.currJoy.getButton(js, int(button)) && !w.prevJoy.getButton(js, int(button)) +func (w *Window) JoystickJustPressed(js Joystick, button int) bool { + return w.currJoy.getButton(js, button) && !w.prevJoy.getButton(js, button) } // JoystickJustReleased returns whether the joystick Button has just been released up. // If the button index is out of range, this will return false. // // This API is experimental. -func (w *Window) JoystickJustReleased(js Joystick, button GamepadButton) bool { - return !w.currJoy.getButton(js, int(button)) && w.prevJoy.getButton(js, int(button)) +func (w *Window) JoystickJustReleased(js Joystick, button int) bool { + return !w.currJoy.getButton(js, button) && w.prevJoy.getButton(js, button) } // JoystickAxis returns the value of a joystick axis at the last call to Window.Update. // If the axis index is out of range, this will return 0. // // This API is experimental. -func (w *Window) JoystickAxis(js Joystick, axis GamepadAxis) float64 { - return w.currJoy.getAxis(js, int(axis)) +func (w *Window) JoystickAxis(js Joystick, axis int) float64 { + return w.currJoy.getAxis(js, axis) } // Used internally during Window.UpdateInput to update the state of the joysticks. @@ -139,15 +98,8 @@ func (w *Window) updateJoystickInput() { w.tempJoy.connected[js] = joystickPresent if joystickPresent { - if glfw.Joystick(js).IsGamepad() { - gamepadInputs := glfw.Joystick(js).GetGamepadState() - - w.tempJoy.buttons[js] = gamepadInputs.Buttons[:] - w.tempJoy.axis[js] = gamepadInputs.Axes[:] - } else { - w.tempJoy.buttons[js] = glfw.Joystick(js).GetButtons() - w.tempJoy.axis[js] = glfw.Joystick(js).GetAxes() - } + w.tempJoy.buttons[js] = glfw.Joystick(js).GetButtons() + w.tempJoy.axis[js] = glfw.Joystick(js).GetAxes() if !w.currJoy.connected[js] { // The joystick was recently connected, we get the name