Joystick

Available since LÖVE 0.9.0
This type is not supported in earlier versions.

Represents a physical joystick.

Constructors

love.joystick.getJoysticks Gets a list of connected Joysticks. 0.9.0

Functions

Joystick:getAxes Gets the direction of each axis. 0.9.0
Joystick:getAxis Gets the direction of an axis. 0.9.0
Joystick:getAxisCount Gets the number of axes on the joystick. 0.9.0
Joystick:getButtonCount Gets the number of buttons on the joystick. 0.9.0
Joystick:getGUID Gets a stable GUID unique to the type of the physical joystick. 0.9.0
Joystick:getGamepadAxis Gets the direction of a virtual gamepad axis. 0.9.0
Joystick:getGamepadMapping Gets the button, axis or hat that a virtual gamepad input is bound to. 0.9.0
Joystick:getHat Gets the direction of a hat. 0.9.0
Joystick:getHatCount Gets the number of hats on the joystick. 0.9.0
Joystick:getID Gets the joystick's unique identifier. 0.9.0
Joystick:getName Gets the name of the joystick. 0.9.0
Joystick:getVibration Gets the current vibration motor strengths on a Joystick with rumble support. 0.9.0
Joystick:isConnected Gets whether the Joystick is connected. 0.9.0
Joystick:isDown Checks if a button on the Joystick is pressed. 0.9.0
Joystick:isGamepad Gets whether the Joystick is recognized as a gamepad. 0.9.0
Joystick:isGamepadDown Checks if a virtual gamepad button on the Joystick is pressed. 0.9.0
Joystick:isVibrationSupported Gets whether the Joystick supports vibration. 0.9.0
Joystick:setVibration Sets the vibration motor speeds on a Joystick with rumble support. 0.9.0
Object:type Gets the type of the object as a string.
Object:typeOf Checks whether an object is of a certain type.

Enums

GamepadAxis Virtual gamepad axes. 0.9.0
GamepadButton Virtual gamepad buttons. 0.9.0
JoystickHat Joystick hat positions.
JoystickInputType Types of Joystick inputs. 0.9.0

Supertypes

Examples

Display the last button pressed of a controller on-screen

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

Move a circle with the d-pad of a controller

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

See Also

Joystick:getAxisCount

Joystick:getAxisCount Available since LÖVE 0.9.0 It has been moved from

2017-03-21 15:45:12
Joystick:getAxis

Joystick:getAxis Available since LÖVE 0.9.0 It has been moved from

2017-03-21 15:45:11
Joystick:getGamepadAxis

Joystick:getGamepadAxis Available since LÖVE 0.9.0 This function is not supported in earlier versions. Gets the direction of a virtual gamepad

2017-03-21 15:45:13
Joystick:getName

Joystick:getName Available since LÖVE 0.9.0 It has been moved from

2017-03-21 15:45:19
Joystick:isGamepadDown

Joystick:isGamepadDown Available since LÖVE 0.9.0 This function is not supported in earlier versions. Checks if a virtual gamepad button on

2017-03-21 15:45:23
Joystick:isConnected

Joystick:isConnected Available since LÖVE 0.9.0 This function is not supported in earlier versions. Gets whether the Joystick is connected.

2017-03-21 15:45:20
Joystick:isVibrationSupported

Joystick:isVibrationSupported Available since LÖVE 0.9.0 This function is not supported in earlier versions. Gets whether the Joystick supports

2017-03-21 15:45:24
Joystick:getVibration

Joystick:getVibration Available since LÖVE 0.9.0 This function is not supported in earlier versions. Gets the current vibration motor strengths

2017-03-21 15:45:19