openfrontio / openfrontio/OpenFrontIO
Refactor & simplify InputHandler.ts
Open
approved
Refactor
- Dominant language
- TypeScript
- Stars
- 2.7k
- Forks
- 1.4k
- Avg merge
- 17h 43m
- Merged PRs (30d)
- 310
Description
Refactor it into a "binding" system to simplify mapping of key => action.
example:
```
{
inputs: [ Keyboard.ButtonDown('A') ],
event: {
type: FooBarGameEvent,
factory: (manager, input, binding) => new FooBarGameEvent(input.value),
},
labelKey: 'user_setting.foobar',
descriptionKey: 'user_setting.foobar_desc',
isEnabled: false,
isConfigurable: true,
}
```
Discord thread: https://discord.com/channels/1359946986937258015/1456342312668893308
Contributor guide
Assessment
This issue has not been assessed yet.