可能な限りお手伝いください。私は、複数のCCSpriteBatchNodeオブジェクトをロードし、座標を変更してフレームを回転させて、アニメーション化されているかのように見えるゲームを構築しています。私はすでに1つの座標から別の座標に1つのCCSpriteBatchNodeオブジェクトを移動することを達成しており、アニメーション化されています。もう1つの非常に異なるアニメーションを実行し、別のスプライトシートファイルを読み込んで別の場所に移動する必要があります。どうすればいいですか?複数のスプライトシートをcocos2Dに追加してスプライトのように見えるようにするにはどうすればいいですか?
これは、これまでの私のコードです:あなたがそれぞれの新しいCCSpriteBatchNodeを作成する必要が
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"PotkaEntry.plist"];
CCSpriteBatchNode *spriteSheet = [CCSpriteBatchNode batchNodeWithFile:@"PotkaEntry.pvr.ccz"];
[self addChild:spriteSheet];
NSMutableArray *entryAnimFrames = [NSMutableArray array];
for(int i = 1; i<=12; i++)
{
[entryAnimFrames addObject:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:[NSString stringWithFormat:@"Potka_entry%d.png", i]]];
}
CCAnimationCache *entryAnim = [CCAnimation animationWithFrames:entryAnimFrames delay:0.08f];
CGSize winSize = [CCDirector sharedDirector].winSize;
self->_body1 = [CCSprite spriteWithSpriteFrameName:@"Potka_entry1.png"];
_body1.position = CGPointMake(winSize.width/2, 0);
self.walkAction = [CCRepeatForever actionWithAction:[CCAnimate actionWithAnimation:entryAnim restoreOriginalFrame:NO]];
[_body1 runAction:_walkAction];
_body1.scale = 0.4;
[spriteSheet addChild:_body1];
id entryAction = [CCMoveTo actionWithDuration:5.0f position:ccp(winSize.width/2,60)];
[_body1 runAction:entryAction];
なぜ別のCCSpriteBatchNodeを作成しないのですか?あなたが持っている問題は何ですか? – FBryant87
同じCCSpriteBatchNodeオブジェクトと同じCCSpriteFrameCacheオブジェクト内の別のスプライトフレーム(.plistファイル)に別のスプライトシート(別の.pvr.cczファイルのように)をロードする方法を聞いていますか? もし私があなたのやり方をすれば、別のものをロードする前に現在のCCSpriteBatchNodeオブジェクトを削除すべきですか?前もって感謝します。 – Shahnawaz