A game's keymap as a browser reads it: Cauldron2D.Input key specs become
KeyboardEvent.code names, and mouse buttons the button numbers cauldron.js takes.
Cauldron2D.Net.Keys.browser_keymap(%{left: [:a, :left], fire: [:" ", {:mouse, :left}]})
#=> %{"KeyA" => "left", "ArrowLeft" => "left", "Space" => "fire", "mouse" => %{"0" => "fire"}}A key with no browser code is left out.
Summary
Functions
A keymap as cauldron.js takes it.
The browser's name for a key spec, or nil when it has none.
Functions
@spec browser_keymap(Cauldron2D.Input.keymap()) :: map()
A keymap as cauldron.js takes it.
@spec code(Cauldron2D.Input.key_spec()) :: String.t() | {:mouse, String.t()} | nil
The browser's name for a key spec, or nil when it has none.