2011-09-17 13 views
0

私はリーフをアニメーション化すると同時に、画面の上部から下部にドロップするコードを使用しています。ランダムな位置から始まる複数のインスタンスを作成したい。それについての最善の方法は何ですか?CCスプライトのアニメーションと位置をランダムにコピーする

leaf1Sprite = [CCSprite spriteWithFile:@"LeafBrown0000.png"]; 
    leaf1Sprite.position = ccp(screenSize.width * 0.5f - 40.0f, screenSize.height); 
    leaf1Sprite.contentSize = CGSizeMake([leaf1Sprite boundingBox].size.width, [leaf1Sprite boundingBox].size.height); 
    [self addChild:leaf1Sprite z:10 tag:30]; 

CCAnimation *leaf1Ani = [CCAnimation animation]; 

[leaf1Ani addFrameWithFilename:@"LeafBrown0000.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0001.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0002.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0003.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0004.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0005.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0006.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0007.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0008.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0009.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0010.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0011.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0012.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0013.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0014.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0015.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0016.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0017.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0018.png"]; 
[leaf1Ani addFrameWithFilename:@"LeafBrown0019.png"]; 

id leaf1AniANIMATION = [CCAnimate actionWithDuration:1.9f animation:leaf1Ani restoreOriginalFrame:YES]; 

id repeatLeaf1Animation = [CCRepeatForever actionWithAction:leaf1AniANIMATION]; 

[leaf1Sprite runAction:repeatLeaf1Animation]; 

[leaf1Sprite runAction:[CCMoveTo actionWithDuration:5.0f position:ccp(screenSize.width * 0.5f + 10.0f, -100.0f)]]; 

答えて

2

Postion:

float screenWidth = screenSize.width * 0.5f; 
randomX = arc4random() % (int)screenWidth; 
1

パーティクルシステムのサンプルをご覧ください。特に、あなたが求めているのと同じような "Rain"というものがあります。私はパーティクルシステム内でアニメーションを行っていません。うまくいけばそれは可能です。画面上にランダムに

+0

葉悲しいアニメーションは、パーティクルシステムでは不可能です。 – daidai

関連する問題