上面的实现是使用键盘控制主角移动,如果要发布到手机上,就不能使用键盘事件了,通常会使用触摸的方式控制游戏角色的动作

    打开Game脚本,在onLoad函数组后添加触摸事件监听代码:

    1. let winWidth = this.node.width;
    2. let playerComp = this.player.getComponent('Player')
    3. //添加触摸事件
    4. this.node.on(cc.Node.EventType.TOUCH_START, event =>{
    5. let touchX = event.getLocationX();
    6. if(touchX > winWidth/2){
    7. playerComp.accRight = true;
    8. }else{
    9. playerComp.accLeft = true;
    10. }
    11. }, this);
    12. this.node.on(cc.Node.EventType.TOUCH_END, event =>{
    13. let touchX = event.getLocationX();
    14. if(touchX > winWidth/2){
    15. playerComp.accRight = false;
    16. }else{
    17. playerComp.accLeft = false;
    18. }
    19. }, this);

    使用this.node.width获取到屏幕的宽度

    在事件回调中获取到触摸的横坐标

    然后判断触摸位置是在手机屏幕左边,还是在右边,以此决定小猫的移动方向

    保存脚本后,单击预览游戏查看效果

    在浏览器打开预览后,单击游戏画面或者使用A、D键控制小猫左右跳跃