1

現在、スプライトを従わせたいタイル座標を含む NSArray があります。スプライトは各座標に「ジャンプ」し、配列内の次の座標に移動する前に CCAction を実行します。これにアプローチする方法がわかりません。何か案は?

4

1 に答える 1

1

CCSequence を使用すると、到達するすべてのポイントに対してアクションを生成できます。私の例では、あなたが CGPoint をラップしていると仮定しています。

// I suppose that you wrapped CGPoint with an object able to return the x and y coordinates.
// points contains all these coordinate objects.
NSMutableArray* actions= [[NSMutableArray alloc]initWithCapacity: points.count];
for(NSUInteger i=0; i<points.count; i++)
{
    id coordinate= points[i];
    CGPoint point= CGPointMake(coordinate.x, coordinate.y);
    // Change this code to whatever is needed to initialize the point.
    CCMoveTo* move= [CCMoveTo actionWithDuration: duration position: point];
    // I suggest to compute duration in a way that it depends from the speed, so
    // that the sprite moves with constant speed.
    [actions addObject: move];      
}
CCSequence* sequence= [CCSequence actionsWithArray: actions];
[sprite runAction: sequence];

ブラウザに直接入力しましたが、構文エラーがないことを願っています。その場合はお知らせください。

于 2013-02-16T22:23:48.147 に答える