怎么设置啊? 就是节点挂载一个脚本,监听MOUSE MOVE, 这个脚本我不会写~~ 求大佬代码 3.0 CC
在脚本监听 touch-move 事件,事件的回调中可以获取实时的触摸位置的坐标,拿到坐标后转为节点的相对坐标然后设置就行了
多谢大佬
这里有一个资源 粽子大作战 | Cocos Store 可以尝试一下
试玩体验:Cocos Creator|粽子大作战(打飞机)
相关文章视频:
飞机大战——背景滚动
飞机大战——花式子弹
飞机大战——碰撞检测
感谢大佬们, 我解决了
onEventTouch(event: EventTouch) {
console.log("从零开始的踩坑日记 ROUND 1 ")
var pos_hero = this.node.getPosition()
var pos_move = event.getDelta()
var pos_end = v3(pos_hero.x + pos_move.x,pos_hero.y + pos_move.y)
this.node.setPosition(pos_end)
}
1赞
这是3.0的 TS 代码, 希望后面的同学能用到。 我这是给2D 用的
3.0后,改了好多api,坑啊。
// 获取触点的位置,屏幕坐标
const location = e.getLocation()
// 利用相机数据对象将屏幕点转换成世界坐标下的值
const pos = this.camera.screenToWorld(v3(location.x, location.y))
this.node.setWorldPosition(pos)
上面的代码就是,要注意坐标转换
上面的代码就能实现你的需求
但是这里有个问题,就是手指移动速度很快,但是应该设计飞机移动速度的,所以不能直接赋值,我需要这种效果(如果你知道请回我)