0

CCSpriteCocos2D ベースの iPhone ゲームでのインスタンスを次のように移動します。

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

スプライトが移動するたびにコールバックを取得するにはどうすればよいですか?

私はこのようなことをしたいと思います:

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

mySpritespriteMovedOneStepが移動するたびに呼び出されます。コールバックの頻度も指定して、CPU 使用率を最小限に抑えるとよいでしょう。

4

2 に答える 2

1

考えられる解決策の1つは、CCMoveByをサブクラス化し、そのupdateメソッドからコールバックを呼び出すことです。このアプローチでは、頻度や必要なものすべてを設定することもできます。

于 2012-10-14T08:51:24.563 に答える
1

質問が正しければ、スプライトが動いているときにメソッドを呼び出す必要がありますよね?SpriteIsMoving BOOLが YES に設定されている場合に、必要なことを実行する更新メソッドをスケジュールするのはどうですか。何を達成しようとしているのかわかりませんが、これは私の見解です。

于 2012-10-14T20:52:23.717 に答える