| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- class InputHandler {
- constructor() {
- this.keys = {
- a: false,
- A: false,
- d: false,
- D: false,
- w: false,
- W: false,
- Shift: false,
- ArrowLeft: false,
- ArrowRight: false,
- ArrowUp: false
- };
-
- this.init();
- }
-
- init() {
- window.addEventListener('keydown', (e) => {
- if (this.keys.hasOwnProperty(e.key)) {
- e.preventDefault();
- this.keys[e.key] = true;
- }
- });
-
- window.addEventListener('keyup', (e) => {
- if (this.keys.hasOwnProperty(e.key)) {
- e.preventDefault();
- this.keys[e.key] = false;
- }
- });
- }
-
- isMovingLeft() {
- return this.keys.a || this.keys.A || this.keys.ArrowLeft;
- }
-
- isMovingRight() {
- return this.keys.d || this.keys.D || this.keys.ArrowRight;
- }
-
- isJumping() {
- return this.keys.w || this.keys.W || this.keys.ArrowUp;
- }
-
- isShiftPressed() {
- return this.keys.Shift;
- }
- }
- const input = new InputHandler();
|