2010-09-08 79 views
0

我有一個包含CCSprite對象的數組randomAphabets。我需要在這些對象上開始動畫。 randomAlphabets數組(NSMutable)可以包含最多4個元素。我正在運行一個循環,然後開始動畫。這是正確的方法嗎?啓動多個Sprite的Cocos2d動畫的最佳方式是什麼?

-(void) startAnimation:(CCSprite *) sprite 
{ 

    [self generateRandomCoordinates]; 

    id actionMove = [CCMoveTo actionWithDuration:3.0 position:ccp(x,y)]; 
    id actionRotate = [CCRotateBy actionWithDuration:0.0 angle:rotateBy]; 

    id actionMoveDone = [CCCallFuncN actionWithTarget:self selector:@selector(finishedMoving:)]; 

    [sprite runAction:[CCSequence actions:actionMove,actionRotate, actionMoveDone, nil]]; 

} 

-(void) addAlphabetsOnScreen 
{ 
    for (int i=0; i<=randomAlphabets.count -1; i++) { 

     CCSprite *sprite = [randomAlphabets objectAtIndex:i]; 

     [self generateRandomCoordinates];  

     sprite.position = ccp(x,y); 
     [self addChild:sprite]; 

     [self startAnimation:sprite]; 
    } 

} 

回答

2

當然,爲什麼不呢?

如果有性能問題,或精靈不能同時開始他們anims,你可能想在一個步驟每個精靈「準備」序列(加載水平之後,也許),然後就在另一步揭開這一切。雖然4個同時開始的精靈似乎並不難。

相關問題