0

Cocoa2Ds を使用して iOS 用のゲームを作成しています。おそらく簡単だと思いますが、CCFile のスプライト画像をプログラムで変更する方法はありますか?

ヒーロー スプライト オブジェクトを作成し、SpriteBuilder を使用してメイン シーンにドラッグしました。

最終的には、ヒーロー スプライト オブジェクトをアニメーション化 (移動) する別の画像に変更したいと考えています。

4

1 に答える 1

1

「CCFile」イメージの変更について質問されましたが、「CCSprite」イメージを意味していたと思います。その場合、スプライト イメージを変更するには、最初にスプライト フレームを作成し、それをスプライトに割り当てます。

CCSpriteFrame * frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"NameOfFrame"];
[mySprite setDisplayFrame:frame];

これが機能するには、参照している画像が、スプライト シートなどを介してメモリに読み込まれている必要があります。

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"SpriteSheetFileName.plist"];

あなたはアニメーションについて言及しました。スプライトをアニメーション化しようとしていて、すべての画像がメモリにロードされていて、連番が追加されていることを除いて同じ名前が付いている場合、次のようにスプライトをこれらの画像間で移動させてアニメーション化することができます。

NSString * animateCycle = [NSString stringWithFormat:@"ImageName 00%%02d.png"];

画像の名前は、「ImageName 0001.png」、「ImageName 0002.png」などのようになります。

CCActionInterval * action = [CCAnimate actionWithSpriteSequence:animateCycle numFrames:8 delay:.1 restoreOriginalFrame:YES];
[mySprite runAction:action];

これにより、指定された遅延に基づいて画像が循環します。

これが役立つことを願っています。

于 2014-02-27T23:54:18.947 に答える