移动CCSprite并获得回调

时间:2012-10-13 20:37:46

标签: cocos2d-iphone callback ccaction

我在基于Cocos2D的iPhone游戏中移动了CCSprite的实例,如下所示:

[mySprite runAction:[CCMoveBy actionWithDuration:1.0 
                                        position:ccp(10, 10)]];

每次精灵移动时如何获得回调?

我想做这样的事情:

[self registerForCallbacksFrom:mySprite 
                      selector:@selector(spriteMovedOneStep)];

每次mySprite移动时都会调用spriteMovedOneStep。很高兴指定回调的频率,以便最大限度地减少CPU使用。

2 个答案:

答案 0 :(得分:1)

一种可能的解决方案是将CCMoveBy子类化并从其更新方法中调用您的回调。您还可以使用此方法设置频率和所需的一切。

答案 1 :(得分:1)

如果我的问题是正确的,那么你想在Sprite移动的时候调用一个方法,对吗? 如果 SpriteIsMoving BOOL 设置为YES,如何安排执行所需的更新方法,我不确定您要尝试实现的目标,但这是我的看法。