cocos2d-x v3.x 运行 触摸屏按下不释放的具体代码
coco2d-x v3.x run specific code when touch screen is pressed is not released
我正在使用coco2d-x 框架和C++ 语言开发手机游戏。我的目标平台是 IOS 和 Android.
我想 运行 在用户按下 sprite 时编写一些代码,只要他在不移动手指的情况下不松开按钮即可。我浏览了文档并查看了不同的回调(onTouchBegan、onTouchMoved、onTouchEnded),但找不到解决我的问题的方法。
事实上,我在屏幕上绘制了精灵来模拟方向控制器。只要用户按下方向精灵,我就想移动角色。
有没有办法 运行 只要按下精灵就可以编写一些代码?
我会尝试这样的事情
onTouchBegan(...){
//let player move
//e.g. set some flag moving=true;
}
onTouchMoved(...){
//query x and y distance of finger movement
//cancel player movement if finger moved above a certain treshold
//or alternatively check if the finger is now
//outside of the bounding box of your sprite
//if so then
//moving=false;
}
onTouchEnded(...){
//stop movement if not already stopped before
//moving=false;
}
在您的更新函数中,只要移动为真,您就可以简单地检查移动并执行您的代码。你是这个意思吗?
我正在使用coco2d-x 框架和C++ 语言开发手机游戏。我的目标平台是 IOS 和 Android.
我想 运行 在用户按下 sprite 时编写一些代码,只要他在不移动手指的情况下不松开按钮即可。我浏览了文档并查看了不同的回调(onTouchBegan、onTouchMoved、onTouchEnded),但找不到解决我的问题的方法。
事实上,我在屏幕上绘制了精灵来模拟方向控制器。只要用户按下方向精灵,我就想移动角色。
有没有办法 运行 只要按下精灵就可以编写一些代码?
我会尝试这样的事情
onTouchBegan(...){
//let player move
//e.g. set some flag moving=true;
}
onTouchMoved(...){
//query x and y distance of finger movement
//cancel player movement if finger moved above a certain treshold
//or alternatively check if the finger is now
//outside of the bounding box of your sprite
//if so then
//moving=false;
}
onTouchEnded(...){
//stop movement if not already stopped before
//moving=false;
}
在您的更新函数中,只要移动为真,您就可以简单地检查移动并执行您的代码。你是这个意思吗?