InputManager
Defined in: InputManager.ts:88
Central input state manager. Resolved via DI with InputManagerKey.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new InputManager():
InputManager
Returns
Section titled “Returns”InputManager
Methods
Section titled “Methods”_advanceTime()
Section titled “_advanceTime()”_advanceTime(
dtMs):void
Defined in: InputManager.ts:1823
Internal
Advance the elapsed game-time clock. Called by InputPollSystem.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
_applyKeyDown()
Section titled “_applyKeyDown()”_applyKeyDown(
code):void
Defined in: InputManager.ts:1571
Internal
Synthetic key-down. DOM-originated events must use
_enqueueKeyDown so consumePointer and the UI hit-test fallback
have a chance to run before action edges fire.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_applyKeyUp()
Section titled “_applyKeyUp()”_applyKeyUp(
code):void
Defined in: InputManager.ts:1593
Internal
Synthetic key-up. DOM-originated events must use _enqueueKeyUp.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_applyPointerCancel()
Section titled “_applyPointerCancel()”_applyPointerCancel(
id):void
Defined in: InputManager.ts:1659
Internal
Synthetic pointer cancel. Clears all buttons on the pointer, fires up-listeners, and drops the entry (unless it’s a mouse). Mirrors the drain-time drainPointerCancel logic.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
_applyPointerDown()
Section titled “_applyPointerDown()”_applyPointerDown(
info):void
Defined in: InputManager.ts:1620
Internal
Synthetic pointer down. DOM-originated events must use _enqueuePointerDown. This applies all state (button mutation, mouse-aggregate emit, listener notify) synchronously.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_applyPointerMove()
Section titled “_applyPointerMove()”_applyPointerMove(
info):void
Defined in: InputManager.ts:1609
Internal
Synthetic pointer move. DOM-originated events must use _enqueuePointerMove.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_applyPointerUp()
Section titled “_applyPointerUp()”_applyPointerUp(
info):void
Defined in: InputManager.ts:1637
Internal
Synthetic pointer up. DOM-originated events must use _enqueuePointerUp.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_clearFrameState()
Section titled “_clearFrameState()”_clearFrameState():
void
Defined in: InputManager.ts:1799
Internal
Clear per-frame justPressed/justReleased flags.
Returns
Section titled “Returns”void
_drainInputQueue()
Section titled “_drainInputQueue()”_drainInputQueue():
void
Defined in: InputManager.ts:1448
Internal
Drain queued DOM events at Phase.EarlyUpdate. Each event
applies its deferred state (button mutations, action-map edges,
mouse-aggregate transitions). Consumed pointers are excluded from the
mouse aggregate so UI-claimed presses do not propagate to gameplay
actions. The renderer’s optional hitTestUI(x, y) auto-claims a pointer
whose pointerdown lands on a UI-marked container.
Returns
Section titled “Returns”void
_enqueueKeyDown()
Section titled “_enqueueKeyDown()”_enqueueKeyDown(
code):void
Defined in: InputManager.ts:1372
Internal
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_enqueueKeyUp()
Section titled “_enqueueKeyUp()”_enqueueKeyUp(
code):void
Defined in: InputManager.ts:1377
Internal
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_enqueuePointerCancel()
Section titled “_enqueuePointerCancel()”_enqueuePointerCancel(
id):void
Defined in: InputManager.ts:1425
Internal
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
_enqueuePointerDown()
Section titled “_enqueuePointerDown()”_enqueuePointerDown(
info):void
Defined in: InputManager.ts:1409
Internal
Sync portion: upsert pointer (existence, screenPos, type,
isPrimary, primaryPointerId) and notify pointerDownListeners. Button
mutation, action-map edges, and mouse-aggregate emit are deferred to the
next drain at Phase.EarlyUpdate so consumePointer (or the
renderer’s UI hit-test) can suppress them, AND so a same-frame
down+up that arrives before drain still produces the correct
MouseLeft press/release edges (recomputing aggregate from live state
after sync mutation would silently drop the transient transition).
Listeners therefore observe pointer.buttons BEFORE this event’s edge is
applied — buttons does not yet include the button just pressed. To
filter by button in an onPointerDown listener, read info.button
(the triggering edge, threaded through to PointerInfo.button),
not info.buttons.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_enqueuePointerMove()
Section titled “_enqueuePointerMove()”_enqueuePointerMove(
info):void
Defined in: InputManager.ts:1387
Internal
Sync portion: upsert the pointer entry (existence, screenPos, type, isPrimary, primaryPointerId) and notify pointerMoveListeners so pointer-tracking UIs see live cursor positions. Move events do not carry action-map edges, so they are not queued.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_enqueuePointerUp()
Section titled “_enqueuePointerUp()”_enqueuePointerUp(
info):void
Defined in: InputManager.ts:1417
Internal
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_enqueueWheel()
Section titled “_enqueueWheel()”_enqueueWheel(
dx,dy):void
Defined in: InputManager.ts:1434
Internal
Parameters
Section titled “Parameters”number
number
Returns
Section titled “Returns”void
_onGamepadConnected()
Section titled “_onGamepadConnected()”_onGamepadConnected(
info):void
Defined in: InputManager.ts:1029
Internal
Called by InputPlugin from gamepadconnected event or by
polling when discovering a previously-unknown pad. Idempotent.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
_onGamepadDisconnected()
Section titled “_onGamepadDisconnected()”_onGamepadDisconnected(
info):void
Defined in: InputManager.ts:1042
Internal
Called by InputPlugin from gamepaddisconnected event or by
polling when a pad vanishes silently. Idempotent.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
_onKeyDown()
Section titled “_onKeyDown()”_onKeyDown(
code):void
Defined in: InputManager.ts:1830
Internal
Sync alias — see _applyKeyDown.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_onKeyUp()
Section titled “_onKeyUp()”_onKeyUp(
code):void
Defined in: InputManager.ts:1834
Internal
Sync alias — see _applyKeyUp.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
_onPointerCancel()
Section titled “_onPointerCancel()”_onPointerCancel(
id):void
Defined in: InputManager.ts:1850
Internal
Sync alias — see _applyPointerCancel.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
_onPointerDown()
Section titled “_onPointerDown()”_onPointerDown(
info):void
Defined in: InputManager.ts:1842
Internal
Sync alias — see _applyPointerDown.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_onPointerMove()
Section titled “_onPointerMove()”_onPointerMove(
info):void
Defined in: InputManager.ts:1838
Internal
Sync alias — see _applyPointerMove.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_onPointerUp()
Section titled “_onPointerUp()”_onPointerUp(
info):void
Defined in: InputManager.ts:1846
Internal
Sync alias — see _applyPointerUp.
Parameters
Section titled “Parameters”PointerEventInfo
Returns
Section titled “Returns”void
_pollGamepads()
Section titled “_pollGamepads()”_pollGamepads():
void
Defined in: InputManager.ts:1077
Internal
Poll real gamepads via navigator.getGamepads() and emit
key-down/key-up edges for any aggregate state changes. Called by
InputPollSystem once per frame.
Returns
Section titled “Returns”void
_releaseAllGamepadState()
Section titled “_releaseAllGamepadState()”_releaseAllGamepadState():
void
Defined in: InputManager.ts:1018
Internal
Force-release held gamepad buttons and clear real-pad analog
snapshots. Used on tab-hide (where navigator.getGamepads() returns
stale data) and on disconnect when polling is paused. Synthetic axes
live in their own field, so they’re untouched.
Returns
Section titled “Returns”void
_setRenderer()
Section titled “_setRenderer()”_setRenderer(
renderer):void
Defined in: InputManager.ts:1367
Internal
Stash the renderer adapter so the drain step can call its
optional hitTestUI(x, y) for the auto-consume fallback. Called by
InputPlugin.install.
Parameters
Section titled “Parameters”renderer
Section titled “renderer”RendererAdapter | null
Returns
Section titled “Returns”void
bindKey()
Section titled “bindKey()”bindKey(
action,key):void
Defined in: InputManager.ts:490
Add a key binding to an action. Creates the action if it doesn’t exist.
Parameters
Section titled “Parameters”action
Section titled “action”string
string
Returns
Section titled “Returns”void
cancelListen()
Section titled “cancelListen()”cancelListen():
void
Defined in: InputManager.ts:700
Cancel an active listenForNextKey. Resolves the pending promise with null.
Returns
Section titled “Returns”void
clearAll()
Section titled “clearAll()”clearAll():
void
Defined in: InputManager.ts:1249
Release all synthetic and physical input state.
Returns
Section titled “Returns”void
clearCamera()
Section titled “clearCamera()”clearCamera():
void
Defined in: InputManager.ts:1813
Clear the camera reference (e.g. on scene exit).
Returns
Section titled “Returns”void
clearPointerButtons()
Section titled “clearPointerButtons()”clearPointerButtons():
void
Defined in: InputManager.ts:1278
Drop all tracked pointers and release the aggregate MouseLeft/Middle/Right
codes without touching keyboard or gamepad state. Useful for window-blur
/ page-hide handling.
Returns
Section titled “Returns”void
consumePointer()
Section titled “consumePointer()”consumePointer(
id):void
Defined in: InputManager.ts:353
Mark a pointer as claimed for the rest of its event cycle (down → up).
Subsequent action-map edges for this pointer (e.g. the MouseLeft edge a
pointerdown would normally fire) are suppressed; onPointerDown/Up/Move
listeners still fire because they are explicit user opt-ins.
The mark clears automatically when the pointer’s last button releases or
on pointercancel. Call from a Pixi pointerdown handler that wants to
own the event: manager.consumePointer(e.pointerId).
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
consumeWheel()
Section titled “consumeWheel()”consumeWheel():
void
Defined in: InputManager.ts:366
Suppress wheel action-map edges (WheelUp/Down/Left/Right) for the rest
of the current frame. onWheel listeners still fire.
Returns
Section titled “Returns”void
disableGroup()
Section titled “disableGroup()”disableGroup(
name):void
Defined in: InputManager.ts:649
Disable a group by name. Actions only in disabled groups become inactive.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
enableGroup()
Section titled “enableGroup()”enableGroup(
name):void
Defined in: InputManager.ts:644
Enable a group by name.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
exportBindings()
Section titled “exportBindings()”exportBindings():
ActionMapDefinition
Defined in: InputManager.ts:608
Export the current bindings as a plain object for serialization.
Returns
Section titled “Returns”fireAction()
Section titled “fireAction()”fireAction(
name):void
Defined in: InputManager.ts:1239
Inject a one-frame synthetic action pulse.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
fireGamepadAxis()
Section titled “fireGamepadAxis()”fireGamepadAxis(
side,value):void
Defined in: InputManager.ts:823
Inject a synthetic gamepad axis value. Stored separately from real-pad
axis state and consulted by getStick / getTrigger only when no real
pad is active — matching how a test fixture would use the API.
Trigger axes additionally emit GamepadLT/GamepadRT button edges when
crossing triggerThreshold, mirroring real-pad polling so synthetic
inspector probes drive isPressed the same way as physical hardware.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
fireGamepadButton()
Section titled “fireGamepadButton()”fireGamepadButton(
code,pressed):void
Defined in: InputManager.ts:803
Inject a synthetic gamepad button edge. Routes through the same internal
path as real polling, so action queries (isPressed, isJustPressed),
listenForNextKey, and rebinding all see the synthetic input.
code should be a gamepad code string (e.g. "GamepadA", "GamepadLT").
Used by inspector probes / deterministic tests in lieu of real polling.
Parameters
Section titled “Parameters”string
pressed
Section titled “pressed”boolean
Returns
Section titled “Returns”void
fireKeyDown()
Section titled “fireKeyDown()”fireKeyDown(
code):void
Defined in: InputManager.ts:709
Public wrapper for synthetic key-down injection. Applies sync.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
fireKeyUp()
Section titled “fireKeyUp()”fireKeyUp(
code):void
Defined in: InputManager.ts:714
Public wrapper for synthetic key-up injection. Applies sync.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
firePointerDown()
Section titled “firePointerDown()”firePointerDown(
button?,opts?):void
Defined in: InputManager.ts:736
Public wrapper for synthetic pointer-button presses. Defaults to button 0
on the primary mouse pointer. Pass opts for touch / pen / non-primary
pointers (e.g. { id: 5, type: "touch", isPrimary: false }).
Parameters
Section titled “Parameters”button?
Section titled “button?”0 | 1 | 2
number
isPrimary?
Section titled “isPrimary?”boolean
Returns
Section titled “Returns”void
firePointerMove()
Section titled “firePointerMove()”firePointerMove(
screenX,screenY,opts?):void
Defined in: InputManager.ts:723
Public wrapper for synthetic pointer movement. Defaults to the primary
mouse pointer (id: 1, type: "mouse"); pass opts to drive a specific
touch / pen pointer.
Parameters
Section titled “Parameters”screenX
Section titled “screenX”number
screenY
Section titled “screenY”number
number
isPrimary?
Section titled “isPrimary?”boolean
Returns
Section titled “Returns”void
firePointerUp()
Section titled “firePointerUp()”firePointerUp(
button?,opts?):void
Defined in: InputManager.ts:753
Public wrapper for synthetic pointer-button releases.
Parameters
Section titled “Parameters”button?
Section titled “button?”0 | 1 | 2
number
Returns
Section titled “Returns”void
fireWheel()
Section titled “fireWheel()”fireWheel(
dx,dy):void
Defined in: InputManager.ts:773
Public wrapper for synthetic wheel input. Applies sync, including
action edges and onWheel listener notification — matching the DOM path
so tests and inspector probes drive the full surface.
Parameters
Section titled “Parameters”number
number
Returns
Section titled “Returns”void
gamepads()
Section titled “gamepads()”gamepads(): readonly
GamepadInfo[]
Defined in: InputManager.ts:893
Synchronously poll navigator.getGamepads() for currently-connected pads.
Use this rather than the cached event-driven list when you need ground
truth — gamepadconnected doesn’t fire until the user presses a button.
Returns
Section titled “Returns”readonly GamepadInfo[]
getActionNames()
Section titled “getActionNames()”getActionNames():
string[]
Defined in: InputManager.ts:1818
Get all configured action names.
Returns
Section titled “Returns”string[]
getActionsForKey()
Section titled “getActionsForKey()”getActionsForKey(
key):string[]
Defined in: InputManager.ts:517
Returns all action names that have the given key bound.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”string[]
getActivePad()
Section titled “getActivePad()”getActivePad():
GamepadInfo|null
Defined in: InputManager.ts:937
The pad whose analog input is read by default. Auto-promotes on input
activity (button press or stick/trigger above deadzone) and on first
connect. Returns null when no pad is connected.
Returns
Section titled “Returns”GamepadInfo | null
getAxis()
Section titled “getAxis()”getAxis(
negative,positive):number
Defined in: InputManager.ts:224
Returns -1, 0, or 1 based on negative/positive action states.
Parameters
Section titled “Parameters”negative
Section titled “negative”string
positive
Section titled “positive”string
Returns
Section titled “Returns”number
getBindings()
Section titled “getBindings()”getBindings(
action): readonlystring[]
Defined in: InputManager.ts:512
Returns the current key bindings for an action, or an empty array if unmapped.
Parameters
Section titled “Parameters”action
Section titled “action”string
Returns
Section titled “Returns”readonly string[]
getGroupActions()
Section titled “getGroupActions()”getGroupActions(
name): readonlystring[]
Defined in: InputManager.ts:674
Get the action names belonging to a group. Returns empty array for unknown groups.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”readonly string[]
getGroups()
Section titled “getGroups()”getGroups():
string[]
Defined in: InputManager.ts:669
Get all configured group names.
Returns
Section titled “Returns”string[]
getHoldDuration()
Section titled “getHoldDuration()”getHoldDuration(
action):number
Defined in: InputManager.ts:198
Milliseconds the action has been held. Returns 0 if not held.
Parameters
Section titled “Parameters”action
Section titled “action”string
Returns
Section titled “Returns”number
getPointer()
Section titled “getPointer()”getPointer(
id):PointerInfo|undefined
Defined in: InputManager.ts:283
Direct lookup by pointerId, or undefined if no pointer with that id is tracked.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”PointerInfo | undefined
getPointerPosition()
Section titled “getPointerPosition()”getPointerPosition():
Vec2
Defined in: InputManager.ts:251
Primary pointer’s position in world coordinates (via Camera), or screen
coords if no camera. Returns Vec2.ZERO when no pointer is tracked.
For multi-pointer access (touch UIs etc.) iterate getPointers and
convert each screenPos via the camera as needed.
Returns
Section titled “Returns”Vec2
getPointers()
Section titled “getPointers()”getPointers(): readonly
PointerInfo[]
Defined in: InputManager.ts:274
All currently-tracked pointers (one per active mouse, pen, or finger).
Returns
Section titled “Returns”readonly PointerInfo[]
getPointerScreenPosition()
Section titled “getPointerScreenPosition()”getPointerScreenPosition():
Vec2
Defined in: InputManager.ts:262
Primary pointer’s raw position in screen coordinates, or Vec2.ZERO when no pointer is tracked.
Returns
Section titled “Returns”Vec2
getStick()
Section titled “getStick()”getStick(
side,opts?):Vec2
Defined in: InputManager.ts:846
Returns the deadzoned, magnitude-clamped stick vector for the given side.
By default reads from the active pad (the most recently used controller,
or the first connected one if nothing has been used yet). Pass
{ pad: index } to read from a specific pad — useful for couch-co-op
where each player’s controller is addressed explicitly.
Falls back to synthetic injection (fireGamepadAxis) when no pad is
active — that’s the test/probe path.
Parameters
Section titled “Parameters”"left" | "right"
number
Returns
Section titled “Returns”Vec2
getTrigger()
Section titled “getTrigger()”getTrigger(
side,opts?):number
Defined in: InputManager.ts:875
Returns the deadzoned trigger value (0..1) for the given side.
Reads from the active pad by default; use { pad: index } for explicit
per-pad reads. Falls back to synthetic state when no pad is active.
Parameters
Section titled “Parameters”"left" | "right"
number
Returns
Section titled “Returns”number
getVector()
Section titled “getVector()”getVector(
left,right,up,down):Vec2
Defined in: InputManager.ts:231
Returns a Vec2 from four directional actions. Not normalized.
Parameters
Section titled “Parameters”string
string
string
string
Returns
Section titled “Returns”Vec2
isGroupEnabled()
Section titled “isGroupEnabled()”isGroupEnabled(
name):boolean
Defined in: InputManager.ts:664
Whether a group is currently enabled. Returns true for unknown group names.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”boolean
isHeldFor()
Section titled “isHeldFor()”isHeldFor(
action,minTime):boolean
Defined in: InputManager.ts:217
Whether the action has been held for at least minTime ms.
Parameters
Section titled “Parameters”action
Section titled “action”string
minTime
Section titled “minTime”number
Returns
Section titled “Returns”boolean
isJustPressed()
Section titled “isJustPressed()”isJustPressed(
action):boolean
Defined in: InputManager.ts:175
Whether any key mapped to this action was pressed this frame.
Parameters
Section titled “Parameters”action
Section titled “action”string
Returns
Section titled “Returns”boolean
isJustReleased()
Section titled “isJustReleased()”isJustReleased(
action):boolean
Defined in: InputManager.ts:182
Whether any key mapped to this action was released this frame.
Parameters
Section titled “Parameters”action
Section titled “action”string
Returns
Section titled “Returns”boolean
isPointerConsumed()
Section titled “isPointerConsumed()”isPointerConsumed(
id):boolean
Defined in: InputManager.ts:358
Whether the pointer is currently marked consumed.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”boolean
isPointerDown()
Section titled “isPointerDown()”isPointerDown():
boolean
Defined in: InputManager.ts:268
Whether the primary pointer has any button held.
Returns
Section titled “Returns”boolean
isPollingEnabled()
Section titled “isPollingEnabled()”isPollingEnabled():
boolean
Defined in: InputManager.ts:983
Whether real gamepad polling is currently enabled.
Returns
Section titled “Returns”boolean
isPressed()
Section titled “isPressed()”isPressed(
action):boolean
Defined in: InputManager.ts:168
Whether any key mapped to this action is currently held.
Parameters
Section titled “Parameters”action
Section titled “action”string
Returns
Section titled “Returns”boolean
listenForNextKey()
Section titled “listenForNextKey()”listenForNextKey():
Promise<string|null>
Defined in: InputManager.ts:692
Returns a promise that resolves with the next key code pressed. Intercepts the key.
Returns
Section titled “Returns”Promise<string | null>
loadBindings()
Section titled “loadBindings()”loadBindings(
map):void
Defined in: InputManager.ts:617
Load bindings from a plain object. Resets to defaults first, then overlays the provided map.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
onAction()
Section titled “onAction()”onAction(
name,fn): () =>void
Defined in: InputManager.ts:428
Subscribe to action press edges (rising edge of any key bound to the action). Fires once per press. Returns a disposer.
Parameters
Section titled “Parameters”string
(name) => void
Returns
Section titled “Returns”() => void
onActionReleased()
Section titled “onActionReleased()”onActionReleased(
name,fn): () =>void
Defined in: InputManager.ts:444
Subscribe to action release edges. Returns a disposer.
Parameters
Section titled “Parameters”string
(name) => void
Returns
Section titled “Returns”() => void
onActivePadChanged()
Section titled “onActivePadChanged()”onActivePadChanged(
fn): () =>void
Defined in: InputManager.ts:957
Subscribe to active-pad changes. Replays the current active pad
synchronously on subscribe so callers get the present state without a
separate getActivePad() call. Returns a disposer.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onGamepadConnected()
Section titled “onGamepadConnected()”onGamepadConnected(
fn): () =>void
Defined in: InputManager.ts:912
Subscribe to gamepad-connected events. Replays currently-known pads
synchronously so callers don’t need a separate gamepads() call.
Returns a disposer.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onGamepadDisconnected()
Section titled “onGamepadDisconnected()”onGamepadDisconnected(
fn): () =>void
Defined in: InputManager.ts:922
Subscribe to gamepad-disconnected events. Returns a disposer.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onKeyDown()
Section titled “onKeyDown()”onKeyDown(
code,fn): () =>void
Defined in: InputManager.ts:379
Subscribe to key-down events. Pass a code (e.g. "Space", "GamepadA")
to filter, or "*" for all keys. The listener fires on the same edge
isJustPressed reports — for DOM-originated events that’s the next
Phase.EarlyUpdate after the browser dispatches; for synthetic injection
(fireKeyDown) it’s synchronous. Returns a disposer.
Parameters
Section titled “Parameters”string
(code) => void
Returns
Section titled “Returns”() => void
onKeyUp()
Section titled “onKeyUp()”onKeyUp(
code,fn): () =>void
Defined in: InputManager.ts:402
Subscribe to key-up events. See onKeyDown.
Parameters
Section titled “Parameters”string
(code) => void
Returns
Section titled “Returns”() => void
onPointerDown()
Section titled “onPointerDown()”onPointerDown(
fn): () =>void
Defined in: InputManager.ts:312
Subscribe to pointer-down events (button transitions from up → down on a tracked pointer). Returns a disposer that detaches the listener.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onPointerMove()
Section titled “onPointerMove()”onPointerMove(
fn): () =>void
Defined in: InputManager.ts:333
Subscribe to pointer-move events. Returns a disposer.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onPointerUp()
Section titled “onPointerUp()”onPointerUp(
fn): () =>void
Defined in: InputManager.ts:324
Subscribe to pointer-up events (button transitions from down → up, plus
touch / pen lifecycle ends and pointercancel). Returns a disposer.
Parameters
Section titled “Parameters”(info) => void
Returns
Section titled “Returns”() => void
onWheel()
Section titled “onWheel()”onWheel(
fn): () =>void
Defined in: InputManager.ts:464
Subscribe to scroll-wheel events. Receives raw deltaX/deltaY (already
sign-flipped by InputConfig.wheelInvertY if set). Fires regardless of
consumeWheel — it only gates action edges. Returns a disposer.
Parameters
Section titled “Parameters”(dx, dy) => void
Returns
Section titled “Returns”() => void
rebind()
Section titled “rebind()”rebind(
action,key,opts?):RebindResult
Defined in: InputManager.ts:531
Rebind a key to an action with optional conflict detection. Conflicts are only detected between actions sharing at least one group.
Parameters
Section titled “Parameters”action
Section titled “action”string
string
Returns
Section titled “Returns”resetBindings()
Section titled “resetBindings()”resetBindings(
action?):void
Defined in: InputManager.ts:593
Reset bindings to defaults. If an action name is provided, only reset that action.
Parameters
Section titled “Parameters”action?
Section titled “action?”string
Returns
Section titled “Returns”void
setActionMap()
Section titled “setActionMap()”setActionMap(
actions):void
Defined in: InputManager.ts:480
Replace the entire action map and store it as the default for resetBindings.
Parameters
Section titled “Parameters”actions
Section titled “actions”Returns
Section titled “Returns”void
setActiveGroups()
Section titled “setActiveGroups()”setActiveGroups(
names):void
Defined in: InputManager.ts:654
Set exactly these groups as active; all others are disabled.
Parameters
Section titled “Parameters”string[]
Returns
Section titled “Returns”void
setActivePad()
Section titled “setActivePad()”setActivePad(
index):void
Defined in: InputManager.ts:947
Manually set the active pad. Index must match a currently connected pad
— pass an unknown index and the call is a no-op. Pass null to clear
(analog reads will fall back to synthetic state if any).
Parameters
Section titled “Parameters”number | null
Returns
Section titled “Returns”void
setCamera()
Section titled “setCamera()”setCamera(
camera):void
Defined in: InputManager.ts:1808
Set camera for pointer world-coord conversion.
Parameters
Section titled “Parameters”camera
Section titled “camera”Returns
Section titled “Returns”void
setDeadzones()
Section titled “setDeadzones()”setDeadzones(
opts):void
Defined in: InputManager.ts:992
Update analog deadzones at runtime. Either field may be omitted.
Values are clamped to [0, 0.999] — capping below 1 keeps the rescaling
denominator non-zero. Non-finite values are ignored.
Parameters
Section titled “Parameters”stick?
Section titled “stick?”number
trigger?
Section titled “trigger?”number
Returns
Section titled “Returns”void
setGroups()
Section titled “setGroups()”setGroups(
groups):void
Defined in: InputManager.ts:627
Configure input groups. Group name -> array of action names.
Parameters
Section titled “Parameters”groups
Section titled “groups”Record<string, string[]>
Returns
Section titled “Returns”void
setPollingEnabled()
Section titled “setPollingEnabled()”setPollingEnabled(
enabled):void
Defined in: InputManager.ts:978
Enable or disable real gamepad polling. Synthetic injection still works when disabled.
Parameters
Section titled “Parameters”enabled
Section titled “enabled”boolean
Returns
Section titled “Returns”void
setTriggerThreshold()
Section titled “setTriggerThreshold()”setTriggerThreshold(
value):void
Defined in: InputManager.ts:1005
Set the trigger button-edge threshold (default 0.5). Clamped to [0, 1];
non-finite values are ignored.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
snapshotState()
Section titled “snapshotState()”snapshotState():
object
Defined in: InputManager.ts:1297
Snapshot of current held input state for inspector tooling.
Returns
Section titled “Returns”object
actions
Section titled “actions”actions:
string[]
gamepad
Section titled “gamepad”gamepad:
object
gamepad.axes
Section titled “gamepad.axes”axes:
object[]
gamepad.buttons
Section titled “gamepad.buttons”buttons:
string[]
keys:
string[]
mouse:
object
mouse.buttons
Section titled “mouse.buttons”buttons:
number[]
mouse.down
Section titled “mouse.down”down:
boolean
mouse.x
Section titled “mouse.x”x:
number
mouse.y
Section titled “mouse.y”y:
number
pointers
Section titled “pointers”pointers:
object[]
unbindKey()
Section titled “unbindKey()”unbindKey(
action,key):void
Defined in: InputManager.ts:502
Remove a key binding from an action.
Parameters
Section titled “Parameters”action
Section titled “action”string
string
Returns
Section titled “Returns”void