Available since LÖVE 0.9.0 |
This type is not supported in earlier versions. |
Represents a physical joystick.
love.joystick.getJoysticks | Gets a list of connected Joysticks. | ![]() |
Joystick:getAxes | Gets the direction of each axis. | ![]() |
|
Joystick:getAxis | Gets the direction of an axis. | ![]() |
|
Joystick:getAxisCount | Gets the number of axes on the joystick. | ![]() |
|
Joystick:getButtonCount | Gets the number of buttons on the joystick. | ![]() |
|
Joystick:getDeviceInfo | Gets the OS-independent device info of the joystick. | ![]() |
|
Joystick:getGUID | Gets a stable GUID unique to the type of the physical joystick. | ![]() |
|
Joystick:getGamepadAxis | Gets the direction of a virtual gamepad axis. | ![]() |
|
Joystick:getGamepadMapping | Gets the button, axis or hat that a virtual gamepad input is bound to. | ![]() |
|
Joystick:getGamepadMappingString | Gets the full gamepad mapping string of this Joystick, or nil if it's not recognized as a gamepad. | ![]() |
|
Joystick:getHat | Gets the direction of a hat. | ![]() |
|
Joystick:getHatCount | Gets the number of hats on the joystick. | ![]() |
|
Joystick:getID | Gets the joystick's unique identifier. | ![]() |
|
Joystick:getName | Gets the name of the joystick. | ![]() |
|
Joystick:getVibration | Gets the current vibration motor strengths on a Joystick with rumble support. | ![]() |
|
Joystick:isConnected | Gets whether the Joystick is connected. | ![]() |
|
Joystick:isDown | Checks if a button on the Joystick is pressed. | ![]() |
|
Joystick:isGamepad | Gets whether the Joystick is recognized as a gamepad. | ![]() |
|
Joystick:isGamepadDown | Checks if a virtual gamepad button on the Joystick is pressed. | ![]() |
|
Joystick:isVibrationSupported | Gets whether the Joystick supports vibration. | ![]() |
|
Joystick:setVibration | Sets the vibration motor speeds on a Joystick with rumble support. | ![]() |
|
Object:release | Immediately destroys the object's Lua reference. | ![]() |
|
Object:type | Gets the type of the object as a string. | ||
Object:typeOf | Checks whether an object is of a certain type. |
GamepadAxis | Virtual gamepad axes. | ![]() |
|
GamepadButton | Virtual gamepad buttons. | ![]() |
|
JoystickHat | Joystick hat positions. | ||
JoystickInputType | Types of Joystick inputs. | ![]() |
local lastbutton = "none" function love.gamepadpressed(joystick, button) lastbutton = button end function love.draw() love.graphics.print("Last gamepad button pressed: "..lastbutton, 10, 10) end
function love.load() local joysticks = love.joystick.getJoysticks() joystick = joysticks[1] position = {x = 400, y = 300} speed = 300 end function love.update(dt) if not joystick then return end if joystick:isGamepadDown("dpleft") then position.x = position.x - speed * dt elseif joystick:isGamepadDown("dpright") then position.x = position.x + speed * dt end if joystick:isGamepadDown("dpup") then position.y = position.y - speed * dt elseif joystick:isGamepadDown("dpdown") then position.y = position.y + speed * dt end end function love.draw() love.graphics.circle("fill", position.x, position.y, 50) end