excalibur 0.26.0-alpha.430 → 0.26.0-alpha.433

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -61,6 +61,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
61
61
 
62
62
  ### Fixed
63
63
 
64
+ - Fixed issue #2263 where keyboard input `wasPressed` was not working in the `onPostUpdate` lifecycle
65
+ - Fixed issue #2263 where there were some keys missing from the `ex.Input.Keys` enum, including `Enter`
64
66
  - Fixed issue where Rectangle line renderer did not respect z order
65
67
 
66
68
  ### Updates
@@ -629,11 +629,11 @@ O|===|* >________________>\n\
629
629
  this._animations = this._animations.filter(function (a) {
630
630
  return !a.animation.isDone();
631
631
  });
632
+ // Publish update event
633
+ this._postupdate(delta);
632
634
  // Update input listeners
633
635
  this.input.keyboard.update();
634
636
  this.input.gamepads.update();
635
- // Publish update event
636
- this._postupdate(delta);
637
637
  }
638
638
  /**
639
639
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/engine/Engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/engine/Engine.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,10 @@ export declare enum Keys {
39
39
  ShiftRight = "ShiftRight",
40
40
  AltLeft = "AltLeft",
41
41
  AltRight = "AltRight",
42
+ ControlLeft = "ControlLeft",
43
+ ControlRight = "ControlRight",
44
+ MetaLeft = "MetaLeft",
45
+ MetaRight = "MetaRight",
42
46
  Key0 = "Digit0",
43
47
  Key1 = "Digit1",
44
48
  Key2 = "Digit2",
@@ -59,6 +63,18 @@ export declare enum Keys {
59
63
  Digit7 = "Digit7",
60
64
  Digit8 = "Digit8",
61
65
  Digit9 = "Digit9",
66
+ F1 = "F1",
67
+ F2 = "F2",
68
+ F3 = "F3",
69
+ F4 = "F4",
70
+ F5 = "F5",
71
+ F6 = "F6",
72
+ F7 = "F7",
73
+ F8 = "F8",
74
+ F9 = "F9",
75
+ F10 = "F10",
76
+ F11 = "F11",
77
+ F12 = "F12",
62
78
  A = "KeyA",
63
79
  B = "KeyB",
64
80
  C = "KeyC",
@@ -131,8 +147,13 @@ export declare enum Keys {
131
147
  ArrowLeft = "ArrowLeft",
132
148
  ArrowRight = "ArrowRight",
133
149
  Space = "Space",
150
+ Backspace = "Backspace",
151
+ Delete = "Delete",
134
152
  Esc = "Escape",
135
- Escape = "Escape"
153
+ Escape = "Escape",
154
+ Enter = "Enter",
155
+ NumpadEnter = "NumpadEnter",
156
+ ContextMenu = "ContextMenu"
136
157
  }
137
158
  /**
138
159
  * Event thrown on a game object for a key event
@@ -164,6 +185,8 @@ export declare class Keyboard extends Class {
164
185
  * Initialize Keyboard event listeners
165
186
  */
166
187
  init(global?: GlobalEventHandlers): void;
188
+ private _handleKeyDown;
189
+ private _handleKeyUp;
167
190
  update(): void;
168
191
  /**
169
192
  * Gets list of keys being pressed down
@@ -184,4 +207,11 @@ export declare class Keyboard extends Class {
184
207
  * @param key Test whether a key was just released
185
208
  */
186
209
  wasReleased(key: Keys): boolean;
210
+ /**
211
+ * Trigger a manual key event
212
+ * @param type
213
+ * @param key
214
+ * @param character
215
+ */
216
+ triggerEvent(type: 'down' | 'up', key: Keys, character?: string): void;
187
217
  }
@@ -45,6 +45,10 @@ export var Keys;
45
45
  Keys["ShiftRight"] = "ShiftRight";
46
46
  Keys["AltLeft"] = "AltLeft";
47
47
  Keys["AltRight"] = "AltRight";
48
+ Keys["ControlLeft"] = "ControlLeft";
49
+ Keys["ControlRight"] = "ControlRight";
50
+ Keys["MetaLeft"] = "MetaLeft";
51
+ Keys["MetaRight"] = "MetaRight";
48
52
  // NUMBERS
49
53
  Keys["Key0"] = "Digit0";
50
54
  Keys["Key1"] = "Digit1";
@@ -66,6 +70,19 @@ export var Keys;
66
70
  Keys["Digit7"] = "Digit7";
67
71
  Keys["Digit8"] = "Digit8";
68
72
  Keys["Digit9"] = "Digit9";
73
+ // FUNCTION KEYS
74
+ Keys["F1"] = "F1";
75
+ Keys["F2"] = "F2";
76
+ Keys["F3"] = "F3";
77
+ Keys["F4"] = "F4";
78
+ Keys["F5"] = "F5";
79
+ Keys["F6"] = "F6";
80
+ Keys["F7"] = "F7";
81
+ Keys["F8"] = "F8";
82
+ Keys["F9"] = "F9";
83
+ Keys["F10"] = "F10";
84
+ Keys["F11"] = "F11";
85
+ Keys["F12"] = "F12";
69
86
  // LETTERS
70
87
  Keys["A"] = "KeyA";
71
88
  Keys["B"] = "KeyB";
@@ -142,8 +159,13 @@ export var Keys;
142
159
  Keys["ArrowRight"] = "ArrowRight";
143
160
  // OTHER
144
161
  Keys["Space"] = "Space";
162
+ Keys["Backspace"] = "Backspace";
163
+ Keys["Delete"] = "Delete";
145
164
  Keys["Esc"] = "Escape";
146
165
  Keys["Escape"] = "Escape";
166
+ Keys["Enter"] = "Enter";
167
+ Keys["NumpadEnter"] = "NumpadEnter";
168
+ Keys["ContextMenu"] = "ContextMenu";
147
169
  })(Keys || (Keys = {}));
148
170
  /**
149
171
  * Event thrown on a game object for a key event
@@ -170,6 +192,26 @@ export class Keyboard extends Class {
170
192
  this._keys = [];
171
193
  this._keysUp = [];
172
194
  this._keysDown = [];
195
+ this._handleKeyDown = (ev) => {
196
+ const code = ev.code;
197
+ if (this._keys.indexOf(code) === -1) {
198
+ this._keys.push(code);
199
+ this._keysDown.push(code);
200
+ const keyEvent = new KeyEvent(code, ev.key, ev);
201
+ this.eventDispatcher.emit('down', keyEvent);
202
+ this.eventDispatcher.emit('press', keyEvent);
203
+ }
204
+ };
205
+ this._handleKeyUp = (ev) => {
206
+ const code = ev.code;
207
+ const key = this._keys.indexOf(code);
208
+ this._keys.splice(key, 1);
209
+ this._keysUp.push(code);
210
+ const keyEvent = new KeyEvent(code, ev.key, ev);
211
+ // alias the old api, we may want to deprecate this in the future
212
+ this.eventDispatcher.emit('up', keyEvent);
213
+ this.eventDispatcher.emit('release', keyEvent);
214
+ };
173
215
  }
174
216
  on(eventName, handler) {
175
217
  super.on(eventName, handler);
@@ -205,27 +247,9 @@ export class Keyboard extends Class {
205
247
  this._keys.length = 0; // empties array efficiently
206
248
  });
207
249
  // key up is on window because canvas cannot have focus
208
- global.addEventListener('keyup', (ev) => {
209
- const code = ev.code;
210
- const key = this._keys.indexOf(code);
211
- this._keys.splice(key, 1);
212
- this._keysUp.push(code);
213
- const keyEvent = new KeyEvent(code, ev.key, ev);
214
- // alias the old api, we may want to deprecate this in the future
215
- this.eventDispatcher.emit('up', keyEvent);
216
- this.eventDispatcher.emit('release', keyEvent);
217
- });
250
+ global.addEventListener('keyup', this._handleKeyUp);
218
251
  // key down is on window because canvas cannot have focus
219
- global.addEventListener('keydown', (ev) => {
220
- const code = ev.code;
221
- if (this._keys.indexOf(code) === -1) {
222
- this._keys.push(code);
223
- this._keysDown.push(code);
224
- const keyEvent = new KeyEvent(code, ev.key, ev);
225
- this.eventDispatcher.emit('down', keyEvent);
226
- this.eventDispatcher.emit('press', keyEvent);
227
- }
228
- });
252
+ global.addEventListener('keydown', this._handleKeyDown);
229
253
  }
230
254
  update() {
231
255
  // Reset keysDown and keysUp after update is complete
@@ -263,5 +287,25 @@ export class Keyboard extends Class {
263
287
  wasReleased(key) {
264
288
  return this._keysUp.indexOf(key) > -1;
265
289
  }
290
+ /**
291
+ * Trigger a manual key event
292
+ * @param type
293
+ * @param key
294
+ * @param character
295
+ */
296
+ triggerEvent(type, key, character) {
297
+ if (type === 'down') {
298
+ this._handleKeyDown(new KeyboardEvent('keydown', {
299
+ code: key,
300
+ key: character !== null && character !== void 0 ? character : null
301
+ }));
302
+ }
303
+ if (type === 'up') {
304
+ this._handleKeyUp(new KeyboardEvent('keyup', {
305
+ code: key,
306
+ key: character !== null && character !== void 0 ? character : null
307
+ }));
308
+ }
309
+ }
266
310
  }
267
311
  //# sourceMappingURL=Keyboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Keyboard.js","sourceRoot":"","sources":["../../../src/engine/Input/Keyboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Keyboard.js","sourceRoot":"","sources":["../../../src/engine/Input/Keyboard.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * excalibur - 0.26.0-alpha.430+5744340 - 2022-2-24
2
+ * excalibur - 0.26.0-alpha.433+0142834 - 2022-3-12
3
3
  * https://github.com/excaliburjs/Excalibur
4
4
  * Copyright (c) 2022 Excalibur.js <https://github.com/excaliburjs/Excalibur/graphs/contributors>
5
5
  * Licensed BSD-2-Clause
@@ -25663,6 +25663,10 @@ var Keys;
25663
25663
  Keys["ShiftRight"] = "ShiftRight";
25664
25664
  Keys["AltLeft"] = "AltLeft";
25665
25665
  Keys["AltRight"] = "AltRight";
25666
+ Keys["ControlLeft"] = "ControlLeft";
25667
+ Keys["ControlRight"] = "ControlRight";
25668
+ Keys["MetaLeft"] = "MetaLeft";
25669
+ Keys["MetaRight"] = "MetaRight";
25666
25670
  // NUMBERS
25667
25671
  Keys["Key0"] = "Digit0";
25668
25672
  Keys["Key1"] = "Digit1";
@@ -25684,6 +25688,19 @@ var Keys;
25684
25688
  Keys["Digit7"] = "Digit7";
25685
25689
  Keys["Digit8"] = "Digit8";
25686
25690
  Keys["Digit9"] = "Digit9";
25691
+ // FUNCTION KEYS
25692
+ Keys["F1"] = "F1";
25693
+ Keys["F2"] = "F2";
25694
+ Keys["F3"] = "F3";
25695
+ Keys["F4"] = "F4";
25696
+ Keys["F5"] = "F5";
25697
+ Keys["F6"] = "F6";
25698
+ Keys["F7"] = "F7";
25699
+ Keys["F8"] = "F8";
25700
+ Keys["F9"] = "F9";
25701
+ Keys["F10"] = "F10";
25702
+ Keys["F11"] = "F11";
25703
+ Keys["F12"] = "F12";
25687
25704
  // LETTERS
25688
25705
  Keys["A"] = "KeyA";
25689
25706
  Keys["B"] = "KeyB";
@@ -25760,8 +25777,13 @@ var Keys;
25760
25777
  Keys["ArrowRight"] = "ArrowRight";
25761
25778
  // OTHER
25762
25779
  Keys["Space"] = "Space";
25780
+ Keys["Backspace"] = "Backspace";
25781
+ Keys["Delete"] = "Delete";
25763
25782
  Keys["Esc"] = "Escape";
25764
25783
  Keys["Escape"] = "Escape";
25784
+ Keys["Enter"] = "Enter";
25785
+ Keys["NumpadEnter"] = "NumpadEnter";
25786
+ Keys["ContextMenu"] = "ContextMenu";
25765
25787
  })(Keys || (Keys = {}));
25766
25788
  /**
25767
25789
  * Event thrown on a game object for a key event
@@ -25788,6 +25810,26 @@ class Keyboard extends Class {
25788
25810
  this._keys = [];
25789
25811
  this._keysUp = [];
25790
25812
  this._keysDown = [];
25813
+ this._handleKeyDown = (ev) => {
25814
+ const code = ev.code;
25815
+ if (this._keys.indexOf(code) === -1) {
25816
+ this._keys.push(code);
25817
+ this._keysDown.push(code);
25818
+ const keyEvent = new KeyEvent(code, ev.key, ev);
25819
+ this.eventDispatcher.emit('down', keyEvent);
25820
+ this.eventDispatcher.emit('press', keyEvent);
25821
+ }
25822
+ };
25823
+ this._handleKeyUp = (ev) => {
25824
+ const code = ev.code;
25825
+ const key = this._keys.indexOf(code);
25826
+ this._keys.splice(key, 1);
25827
+ this._keysUp.push(code);
25828
+ const keyEvent = new KeyEvent(code, ev.key, ev);
25829
+ // alias the old api, we may want to deprecate this in the future
25830
+ this.eventDispatcher.emit('up', keyEvent);
25831
+ this.eventDispatcher.emit('release', keyEvent);
25832
+ };
25791
25833
  }
25792
25834
  on(eventName, handler) {
25793
25835
  super.on(eventName, handler);
@@ -25823,27 +25865,9 @@ class Keyboard extends Class {
25823
25865
  this._keys.length = 0; // empties array efficiently
25824
25866
  });
25825
25867
  // key up is on window because canvas cannot have focus
25826
- global.addEventListener('keyup', (ev) => {
25827
- const code = ev.code;
25828
- const key = this._keys.indexOf(code);
25829
- this._keys.splice(key, 1);
25830
- this._keysUp.push(code);
25831
- const keyEvent = new KeyEvent(code, ev.key, ev);
25832
- // alias the old api, we may want to deprecate this in the future
25833
- this.eventDispatcher.emit('up', keyEvent);
25834
- this.eventDispatcher.emit('release', keyEvent);
25835
- });
25868
+ global.addEventListener('keyup', this._handleKeyUp);
25836
25869
  // key down is on window because canvas cannot have focus
25837
- global.addEventListener('keydown', (ev) => {
25838
- const code = ev.code;
25839
- if (this._keys.indexOf(code) === -1) {
25840
- this._keys.push(code);
25841
- this._keysDown.push(code);
25842
- const keyEvent = new KeyEvent(code, ev.key, ev);
25843
- this.eventDispatcher.emit('down', keyEvent);
25844
- this.eventDispatcher.emit('press', keyEvent);
25845
- }
25846
- });
25870
+ global.addEventListener('keydown', this._handleKeyDown);
25847
25871
  }
25848
25872
  update() {
25849
25873
  // Reset keysDown and keysUp after update is complete
@@ -25881,6 +25905,26 @@ class Keyboard extends Class {
25881
25905
  wasReleased(key) {
25882
25906
  return this._keysUp.indexOf(key) > -1;
25883
25907
  }
25908
+ /**
25909
+ * Trigger a manual key event
25910
+ * @param type
25911
+ * @param key
25912
+ * @param character
25913
+ */
25914
+ triggerEvent(type, key, character) {
25915
+ if (type === 'down') {
25916
+ this._handleKeyDown(new KeyboardEvent('keydown', {
25917
+ code: key,
25918
+ key: character !== null && character !== void 0 ? character : null
25919
+ }));
25920
+ }
25921
+ if (type === 'up') {
25922
+ this._handleKeyUp(new KeyboardEvent('keyup', {
25923
+ code: key,
25924
+ key: character !== null && character !== void 0 ? character : null
25925
+ }));
25926
+ }
25927
+ }
25884
25928
  }
25885
25929
 
25886
25930
  ;// CONCATENATED MODULE: ./Input/Gamepad.ts
@@ -27999,11 +28043,11 @@ O|===|* >________________>\n\
27999
28043
  this._animations = this._animations.filter(function (a) {
28000
28044
  return !a.animation.isDone();
28001
28045
  });
28046
+ // Publish update event
28047
+ this._postupdate(delta);
28002
28048
  // Update input listeners
28003
28049
  this.input.keyboard.update();
28004
28050
  this.input.gamepads.update();
28005
- // Publish update event
28006
- this._postupdate(delta);
28007
28051
  }
28008
28052
  /**
28009
28053
  * @internal
@@ -30962,7 +31006,7 @@ Promises_Promise = Promise_1 = Promises_decorate([
30962
31006
  * The current Excalibur version string
30963
31007
  * @description `process.env.__EX_VERSION` gets replaced by Webpack on build
30964
31008
  */
30965
- const EX_VERSION = "0.26.0-alpha.430+5744340";
31009
+ const EX_VERSION = "0.26.0-alpha.433+0142834";
30966
31010
 
30967
31011
  polyfill();
30968
31012
  // This file is used as the bundle entry point and exports everything