首先,我是 Cocos2D 和 Obj-C 的新手,所以我确实遇到过这样的简单问题。我的问题看起来像这样:屏幕上有一个精灵,用户必须触摸它的顶部,在仍然按下的同时向上移动一点,然后释放触摸。想象一个戴着帽子的玩家精灵,你必须触摸帽子并将手指稍微向上移动,以使他的帽子飞向那个方向。实现这一点的最佳方法是什么?
到目前为止我得到的是:
- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:[touch view]];
location = [[CCDirector sharedDirector] convertToGL:location];
//other stuff
}
我是否需要创建另一种方法来确定 CCTouchesBegan 位置,然后将该值提供给 CCTouchesEnded 方法,然后我在其中计算角度并使帽子飞走?或者我可以在上述方法本身中确定触摸开始的位置吗?
非常感谢您的任何回答:)