update readme to show examples of multiple keys on one control

This commit is contained in:
Andrew Minnich
2018-07-20 19:58:14 -04:00
parent d2a01818f8
commit ba11475dd4

View File

@@ -6,10 +6,10 @@ local baton = require 'baton'
local input = baton.new { local input = baton.new {
controls = { controls = {
left = {'key:left', 'axis:leftx-', 'button:dpleft'}, left = {'key:left', 'key:a', 'axis:leftx-', 'button:dpleft'},
right = {'key:right', 'axis:leftx+', 'button:dpright'}, right = {'key:right', 'key:d', 'axis:leftx+', 'button:dpright'},
up = {'key:up', 'axis:lefty-', 'button:dpup'}, up = {'key:up', 'key:w', 'axis:lefty-', 'button:dpup'},
down = {'key:down', 'axis:lefty+', 'button:dpdown'}, down = {'key:down', 'key:s', 'axis:lefty+', 'button:dpdown'},
action = {'key:x', 'button:a'}, action = {'key:x', 'button:a'},
}, },
pairs = { pairs = {
@@ -42,11 +42,11 @@ baton = require 'path.to.baton' -- if it's in subfolders
Controls are defined using a table. Each key should be the name of a control, and each value should be another table. This table contains strings defining what sources should be mapped to the control. For example, this table Controls are defined using a table. Each key should be the name of a control, and each value should be another table. This table contains strings defining what sources should be mapped to the control. For example, this table
```lua ```lua
controls = { controls = {
left = {'key:left', 'axis:leftx-'} left = {'key:left', 'key:a', 'axis:leftx-'}
shoot = {'key:x', 'button:a'} shoot = {'key:x', 'button:a'}
} }
``` ```
will create a control called "left" that responds to the left arrow key and pushing the left analog stick on the controller to the left, and a control called "shoot" that responds to the X key on the keyboard and the A button on the gamepad. will create a control called "left" that responds to the left arrow key, the A key, and pushing the left analog stick on the controller to the left, and a control called "shoot" that responds to the X key on the keyboard and the A button on the gamepad.
Sources are strings with the following format: Sources are strings with the following format:
```lua ```lua
@@ -139,4 +139,4 @@ At any time, only the keyboard/mouse sources or the josytick sources for a playe
You can call `player:getActiveDevice()` to see which input device is currently active. It will return either `'kbm'` (keyboard/mouse) or `'joy'` (joystick) (or `'none'` if no sources have been used yet). This is useful if you need to change what you display on screen based on the controls the player is using (such as instructions). You can call `player:getActiveDevice()` to see which input device is currently active. It will return either `'kbm'` (keyboard/mouse) or `'joy'` (joystick) (or `'none'` if no sources have been used yet). This is useful if you need to change what you display on screen based on the controls the player is using (such as instructions).
## Contributing ## Contributing
This library is still fairly young, so feel free to take it for a spin and suggest additions and changes (especially if you try making a multiplayer game with it!). Issues and pull requests are always welcome. To run the test, run `love .` in the baton folder. Issues and pull requests are always welcome. To run the test, run `love .` in the baton folder.