Added wasPressed as well as wasReleased

This commit is contained in:
Nathan Kunicki 2016-04-16 15:56:08 +01:00
parent bf1f590d20
commit d8b1411a3e
2 changed files with 20 additions and 2 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "momentumengine", "name": "momentumengine",
"version": "0.5.1", "version": "0.6.0",
"description": "An ES6 game and animation engine.", "description": "An ES6 game and animation engine.",
"main": "src/es6.js", "main": "src/es6.js",
"repository": { "repository": {

View File

@ -99,7 +99,8 @@ const KeyConsts = {
}; };
let wasReleased = {}; let wasReleased = {},
wasPressed = {};
class KeyboardInput { class KeyboardInput {
@ -125,14 +126,29 @@ class KeyboardInput {
console.log("[MomentumEngine] WARNING: MomentumEngine.Classes.KeyboardInput.isPressed is deprecated. Use isDown instead.") console.log("[MomentumEngine] WARNING: MomentumEngine.Classes.KeyboardInput.isPressed is deprecated. Use isDown instead.")
return !!this._keyState[keyCode]; return !!this._keyState[keyCode];
} }
isDown (keyCode) { isDown (keyCode) {
return !!this._keyState[keyCode]; return !!this._keyState[keyCode];
} }
wasPressed (keyCode) { wasPressed (keyCode) {
let pressed = !!wasPressed[keyCode];
if (pressed) {
wasPressed[keyCode] = false;
}
return pressed;
}
wasReleased (keyCode) {
let pressed = !!wasReleased[keyCode]; let pressed = !!wasReleased[keyCode];
if (pressed) { if (pressed) {
@ -145,12 +161,14 @@ class KeyboardInput {
_keyDownHandler (event) { _keyDownHandler (event) {
wasReleased[event.keyCode] = false; wasReleased[event.keyCode] = false;
wasPressed[event.keyCode] = true;
this._keyState[event.keyCode] = true; this._keyState[event.keyCode] = true;
} }
_keyUpHandler (event) { _keyUpHandler (event) {
wasReleased[event.keyCode] = true; wasReleased[event.keyCode] = true;
wasPressed[event.keyCode] = false;
this._keyState[event.keyCode] = false; this._keyState[event.keyCode] = false;
} }