Joystick (Français)

Disponible depuis LÖVE 0.9.0
Ce-tte type n'est pas supporté-e par des versions plus anciennes.

Représente une manette de jeu (joystick) physique.

Constructeurs

love.joystick.getJoysticks (Français) Gets a list of connected Joysticks.

Fonctions

Joystick:getAxes (Français) Récupère la direction de chaque axe.
Joystick:getAxis (Français) Récupère la direction d'un axe.
Joystick:getAxisCount (Français) Récupère le nombre d'axes d'un joystick.
Joystick:getButtonCount (Français) Récupère le nombre de boutons du joystick.
Joystick:getConnectedIndex (Français) Récupère l'index de joystick connecté.
Joystick:getGUID (Français) Récupère un GUID unique stable du type de joystick matériel.
Joystick:getGamepadMapping (Français) Récupère les boutons axes, ou point de vue (PDV) vers lesquelles les entrées de gamepad virtuel sont converties.
Joystick:getHat (Français) Récupère la direction du bouton point de vue.
Joystick:getID (Français) Récupère l'identifiant unique du joystick.
Joystick:isConnected (Français) Informe si le Joystick est connecté.
Joystick:isDown (Français) Vérifie si un bouton est pressé sur le Joystick.
Joystick:isGamepad (Français) Informe de la reconnaissance du Joystick en tant que gamepad.
Joystick:isGamepadDown (Français) Checks if a virtual gamepad button on the Joystick is pressed.

Enums

GamepadAxis (Français) Axes virtuels des gamepads. Added since 0.9.0
GamepadButton (Français) Virtual gamepad buttons. Added since 0.9.0
JoystickHat (Français) Position du bouton point de vue (PDV) du joystick. Added since 0.5.0
JoystickInputType (Français) Types d'entrées des manettes de jeu. Added since 0.9.0

Super-types

Exemples

Affiche à l'écran le dernier bouton pressé d'un contrôleur

local lastbutton = "none"

function love.gamepadpressed(joystick, button)
    lastbutton = button
end

function love.draw()
    love.graphics.print("Le dernier bouton de manette de jeu pressé est : "..lastbutton, 10, 10)
end

Déplace un cercle avec le pad numérique d'un contrôleur

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

Voir également


Autres langues