Add: keyboard_shortcut to menu_typing_practice
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
function KeyboardShortcut() {
|
||||
console.log("KeyboardShortcut");
|
||||
|
||||
this.keyHandlerMapper = {};
|
||||
console.log(this.keyHandlerMapper[Phaser.KeyCode.ESC]);
|
||||
|
||||
game.input.keyboard.addCallbacks(this, this.keyDown, this.keyUp, null);
|
||||
};
|
||||
|
||||
KeyboardShortcut.prototype.addCallback = function(keyCode, keyDownHandler, keyUpHandler, callerClassName) {
|
||||
if(this.keyHandlerMapper[keyCode] != undefined) {
|
||||
this.keyHandlerMapper[keyCode] = null;
|
||||
}
|
||||
|
||||
this.keyHandlerMapper[keyCode] = {
|
||||
"keyDownHandler": keyDownHandler,
|
||||
"keyUpHandler": keyUpHandler,
|
||||
"callerClassName": callerClassName
|
||||
}
|
||||
|
||||
// console.log(this.keyHandlerMapper);
|
||||
}
|
||||
|
||||
KeyboardShortcut.prototype.keyDown = function(char) {
|
||||
// var keyCode = char.code;
|
||||
var keyCode = char.keyCode;
|
||||
// console.log(keyCode + " is pressed");
|
||||
|
||||
if(this.keyHandlerMapper[keyCode] == undefined)
|
||||
return;
|
||||
|
||||
var keyMapper = this.keyHandlerMapper[keyCode];
|
||||
var keyDownHandler = keyMapper["keyDownHandler"];
|
||||
if(keyDownHandler == undefined)
|
||||
return;
|
||||
|
||||
if(isDebugMode())
|
||||
console.log(keyCode + " key is down (" + keyMapper["callerClassName"] + ")");
|
||||
keyDownHandler();
|
||||
}
|
||||
|
||||
KeyboardShortcut.prototype.keyUp = function(char) {
|
||||
// var keyCode = char.code;
|
||||
var keyCode = char.keyCode;
|
||||
// console.log(keyCode + " is up");
|
||||
|
||||
if(this.keyHandlerMapper[keyCode] == undefined)
|
||||
return;
|
||||
|
||||
var keyMapper = this.keyHandlerMapper[keyCode];
|
||||
var keyUpHandler = keyMapper["keyUpHandler"];
|
||||
if(keyUpHandler == undefined)
|
||||
return;
|
||||
|
||||
if(isDebugMode())
|
||||
console.log(keyCode + " key is up (" + keyMapper["callerClassName"] + ")");
|
||||
keyUpHandler();
|
||||
}
|
||||
Reference in New Issue
Block a user