mirror of
https://github.com/pyscript/pyscript.git
synced 2022-05-01 19:47:48 +03:00
55 lines
1.2 KiB
JavaScript
55 lines
1.2 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;
|
|
}
|
|
};
|
|
})();
|