mirror of
https://github.com/genxium/DelayNoMore
synced 2024-12-28 20:48:17 +00:00
70 lines
1.8 KiB
JavaScript
70 lines
1.8 KiB
JavaScript
|
cc.Class({
|
||
|
extends: cc.Component,
|
||
|
|
||
|
properties: {},
|
||
|
|
||
|
setInputControls: function() {
|
||
|
const self = this;
|
||
|
// add keyboard event listener
|
||
|
// When there is a key being pressed down, judge if it's the designated directional button and set up acceleration in the corresponding direction
|
||
|
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN, function(event) {
|
||
|
switch (event.keyCode) {
|
||
|
case cc.macro.KEY.w:
|
||
|
self.activeDirection.dPjY = +1.0;
|
||
|
break;
|
||
|
case cc.macro.KEY.s:
|
||
|
self.activeDirection.dPjY = -1.0;
|
||
|
break;
|
||
|
case cc.macro.KEY.a:
|
||
|
self.activeDirection.dPjX = -2.0;
|
||
|
break;
|
||
|
case cc.macro.KEY.d:
|
||
|
self.activeDirection.dPjX = +2.0;
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
}, self.node);
|
||
|
|
||
|
// when releasing the button, stop acceleration in this direction
|
||
|
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP, function(event) {
|
||
|
switch (event.keyCode) {
|
||
|
case cc.macro.KEY.w:
|
||
|
if (+1.0 == self.activeDirection.dPjY) {
|
||
|
self.activeDirection.dPjY = 0.0;
|
||
|
}
|
||
|
break;
|
||
|
case cc.macro.KEY.s:
|
||
|
if (-1.0 == self.activeDirection.dPjY) {
|
||
|
self.activeDirection.dPjY = 0.0;
|
||
|
}
|
||
|
break;
|
||
|
case cc.macro.KEY.a:
|
||
|
if (-2.0 == self.activeDirection.dPjX) {
|
||
|
self.activeDirection.dPjX = 0.0;
|
||
|
}
|
||
|
break;
|
||
|
case cc.macro.KEY.d:
|
||
|
if (+2.0 == self.activeDirection.dPjX) {
|
||
|
self.activeDirection.dPjX = 0.0;
|
||
|
}
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
}, self.node);
|
||
|
},
|
||
|
|
||
|
// LIFE-CYCLE CALLBACKS:
|
||
|
|
||
|
onLoad() {
|
||
|
// Properties deliberately hidden from GUI panel.
|
||
|
this.activeDirection = {
|
||
|
dPjY: 0.0,
|
||
|
dPjX: 0.0
|
||
|
};
|
||
|
this.setInputControls();
|
||
|
}
|
||
|
});
|
||
|
|