love.joystick.getGamepadMappingString (日本語)
LÖVE 11.3 から使用可能 |
この関数は以前のバージョンでは非対応です。 |
指定された GUID を有する Joystick (ジョイスティック) に関するゲームパッドのマッピング文字列を完全取得します。 nil の場合は指定の GUID でゲームパッドは認識されていません。
マッピング文字列は Joystick のボタン軸における標準ゲームパッドのレイアウト対応表となるバインディング情報であり、作成後に love.joystick.loadGamepadMappings で使用します。
関数
概要
mappingstring = love.joystick.getGamepadMappingString( guid )
引数
返値
string mappingstring (nil)
- Joystick に関するゲームパッドのマッピング文字列、または nil ならば指定の GUID で Joystick はゲームパッドとして認識されていません。
用例: MRU ゲームパッド名の表示
最近使用した (Most Recently Used : MRU) ゲームパッドを追跡することで、変更検出時にゲームパッドの名称を表示できるようにします。
local active_joystick
function love.gamepadpressed(joystick, button)
if joystick == active_joystick then
return
end
active_joystick = joystick
-- CSV 文字列から第二カラムを抽出します。
local name = joystick:getGamepadMappingString():match("^%x*,(.-),")
if not name or name:len() < 3 then
-- "*" などの名前は不便であるため、デバイス名に直します。
name = joystick:getName()
end
local index = joystick:getConnectedIndex()
print(string.format("Changing primary gamepad to #%d '%s'.", index, name))
end
関連
- love.joystick (日本語)
- Joystick:getGamepadMappingString (日本語)
- Joystick:isGamepad (日本語)
- love.joystick.loadGamepadMappings (日本語)
- love.joystick.saveGamepadMappings (日本語)
- love.joystick.setGamepadMapping (日本語)
- Joystick:getGamepadMapping (日本語)