1

私はcocos2dでプログラムを行っています。NSDateを使用して、アニメーションの開始の現在の時刻を取得しています。そして、私のアニメーションには3秒かかることを知っています。したがって、NSIntervalを使用し、前の時間とアニメーション時間を使用することで、アニメーションの完了時間を取得できます。しかし、アニメーションの時間間隔が固定されていない場合、アニメーションの時間間隔とアニメーションの完了時の時間をどのように計算できますか?スプライトをアニメートしています。どうすれば作れるのか手伝ってください。ありがとうございました。

4

1 に答える 1

1

CCIntervalActionクラスには、アクションがccTimeとして開始されてから経過した秒数を示す、lapsedというプロパティがあります。CCAnimateアクションはCCIntervalActionから派生するため、このプロパティにアクセスできる必要があります。

CCAnimation *myAnimation = [CCAnimation animationWithName:@"my animation" delay:0.1f];
CCAnimate *myAnimateAction = [CCAnimate actionWithAnimation:myAnimation];
[sprite runAction:myAnimateAction];
...
ccTime interval = myAnimateAction.elapsed;
于 2010-04-12T04:21:42.887 に答える