Cocos2d:我可以从ccTouchesEnded事件中提取哪些信息?

时间:2013-06-17 14:42:54

标签: cocos2d-iphone touch multi-touch

愚蠢的问题,但对我来说澄清非常有用。

我正在开发一款游戏,我想识别一系列连续两次滑动(水平和垂直)以触发特殊拍摄。

这就是问题所在。当我处理ccTouchesEnded时,ccTouchesMoved ccTouchesBegan方法在多点触控事件的情况下存在一些并发问题。

问题在于,如果我正在评估一系列触摸(touchBegan在位置(0,0),touchMoved在pos(1,0),touchMoved在pos(2,0),touchEnded at pos(3,0) ))和用户按照新的触摸系列(比如位置(10,40))然后很难区分这两个系列。

有什么建议吗?

Cocos2d提供的功能中的NSSet触摸是否有用?

例如:

-(void) ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
-(void) ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

如何区分各种触摸?我的意思是,什么时候

-(void) ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

1 个答案:

答案 0 :(得分:2)

您可以存储传入的触摸,然后检查它们是否在touches / ccTouchesMoved / ccTouchesEnded的{​​{1}}参数中,并相应地处理它们。不要忘记在ccTouchesCancelled / ccTouchesEnded时删除存储的动画。