first commmit
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
/**
|
||||
* Event constants emitted by the floating control layer and consumed by the
|
||||
* gameplay layer. Centralising them avoids typo-driven wiring bugs and gives
|
||||
* Jest a place to assert against expected strings.
|
||||
*/
|
||||
|
||||
export const InputEvents = {
|
||||
/** payload: `{ dx: number; dy: number; klass: JoystickAngleClass }` */
|
||||
JoystickMove: 'input/joystickMove',
|
||||
/** payload: `{}` — jump button went down (req 2.2). */
|
||||
JumpPressed: 'input/jumpPressed',
|
||||
/** payload: `{ holdMs: number }` — jump button released. */
|
||||
JumpReleased: 'input/jumpReleased',
|
||||
/** payload: `{}` — shuriken button down. */
|
||||
ShurikenPressed: 'input/shurikenPressed',
|
||||
ShurikenReleased: 'input/shurikenReleased',
|
||||
/** payload: `{}` — ninja sword button down. */
|
||||
NinjaSwordPressed: 'input/ninjaSwordPressed',
|
||||
NinjaSwordReleased: 'input/ninjaSwordReleased',
|
||||
/**
|
||||
* payload: `{ id: 'jump' | 'shuriken' | 'ninja_sword'; disabled: boolean; reason?: string }`
|
||||
* — button must repaint (e.g. airborne → jump disabled, req 2.4).
|
||||
*/
|
||||
ButtonVisualChanged: 'input/buttonVisualChanged',
|
||||
} as const;
|
||||
|
||||
export type InputEventName = (typeof InputEvents)[keyof typeof InputEvents];
|
||||
Reference in New Issue
Block a user