mirror of
https://github.com/pyscript/pyscript.git
synced 2025-12-19 18:27:29 -05:00
62 lines
1.4 KiB
JavaScript
62 lines
1.4 KiB
JavaScript
(function () {
|
|
var pressedKeys = {};
|
|
|
|
function setKey(event, status) {
|
|
var code = event.keyCode;
|
|
var key;
|
|
|
|
switch (code) {
|
|
case 32:
|
|
key = "SPACE";
|
|
break;
|
|
case 37:
|
|
key = "LEFT";
|
|
break;
|
|
case 38:
|
|
key = "UP";
|
|
break;
|
|
case 39:
|
|
key = "RIGHT";
|
|
break;
|
|
case 40:
|
|
key = "DOWN";
|
|
break;
|
|
case 88:
|
|
key = "JUMP";
|
|
break;
|
|
case 90:
|
|
key = "RUN";
|
|
break;
|
|
default:
|
|
key = String.fromCharCode(code);
|
|
}
|
|
|
|
pressedKeys[key] = status;
|
|
}
|
|
|
|
document.addEventListener("keydown", function (e) {
|
|
setKey(e, true);
|
|
});
|
|
|
|
document.addEventListener("keyup", function (e) {
|
|
setKey(e, false);
|
|
});
|
|
|
|
window.addEventListener("blur", function () {
|
|
pressedKeys = {};
|
|
});
|
|
|
|
window.input = {
|
|
isDown: function (key) {
|
|
return pressedKeys[key.toUpperCase()];
|
|
},
|
|
reset: function () {
|
|
pressedKeys["RUN"] = false;
|
|
pressedKeys["LEFT"] = false;
|
|
pressedKeys["RIGHT"] = false;
|
|
pressedKeys["DOWN"] = false;
|
|
pressedKeys["JUMP"] = false;
|
|
},
|
|
};
|
|
})();
|