昨天在写代码时遇到的两个问题
问题一:人物在进行滑动时离开地面
解决:将所有Animation.play的操作换成一个自定义的函数,在此函数中判断人物的动画名称,若为滑动,则调用node.setPosition(x,y)设置节点移动的位置;若为跑,再次调用node.setPosition(x,y)回到原来的位置
问题二:当鼠标移出滑动按钮时人物依然在滑动,没有切换到跑的状态
解决:Node.EventType 类型中有一个TOUCH_CANCEL String 当手指在目标节点区域外离开屏幕时,在此回调函数中操作跑的动作即可
问题三:在起跳动作时仍然可以切换滑动
解决利用Animation.currentClip获取到当前播放的动画,若为跳跃则直接return出去
今天遇到的问题:
问题一:当点击跳跃按钮时,人物还未落下时多次点击按钮会使人物出现异常
解决:这个问题主要是由于不能在跳跃的时候再切换跳跃的动作,否则它会重复执行moveTo的操作,因此要增加一个能否切换动作的判断
问题二:背景图片的移动
1.1要移动背景图片造成人物移动的效果,应将每一部分图片放在一个父节点中,这样操作父节点就可以操作父节点下的所有图片,在代码中也容易获取
1.2要获取到父节点下的每一个子节点(每一张图片),可在代码的属性中以数组的方式定义,此时拖拽要操作的图片到属性检查器中即可
1.3两张图片相连处在移动时有缝隙,选择图片节点,在属性选择器中有如图所示属性