cc.Class({
extends: cc.Component,
onLoad: function () {
// add key down and key up event
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN, this.onKeyDown, this);
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP, this.onKeyUp, this);
},
onDestroy () {
cc.systemEvent.off(cc.SystemEvent.EventType.KEY_DOWN, this.onKeyDown, this);
cc.systemEvent.off(cc.SystemEvent.EventType.KEY_UP, this.onKeyUp, this);
},
onKeyDown: function (event) {
switch(event.keyCode) {
case cc.KEY.a:
console.log('Press a key');
break;
}
},
onKeyUp: function (event) {
switch(event.keyCode) {
case cc.KEY.a:
console.log('release a key');
break;
}
}
});
和
setInputControl: function() {
var self = this;
// 添加键盘事件监听
cc.eventManager.addListener({
event: cc.EventListener.KEYBOARD,
// 有按键按下时,判断是否是我们指定的方向控制键,并设置向对应方向加速
onKeyPressed: function(keyCode, event) {
switch (keyCode) {
case cc.KEY.a:
self.ba = 1;
break;
case cc.KEY.s:
self.bs = 1;
break;
case cc.KEY.d:
self.bd = 1;
break;
case cc.KEY.w:
self.bw = 1;
break;
}
},
// 松开按键时,停止向该方向的加速
onKeyReleased: function(keyCode, event) {
switch (keyCode) {
case cc.KEY.a:
self.ba = 0;
break;
case cc.KEY.s:
self.bs = 0;
break;
case cc.KEY.d:
self.bd = 0;
break;
case cc.KEY.w:
self.bw = 0;
break;
}
}
}, self.node);
},
跟
有啥区别?做PC游戏哪种效率更好?