2013年2月5日火曜日

CCSpriteを配列にloop格納するために。(未解決)

arrayにCCSpriteを複数突っ込んでいこうと思って、ググった。

以下が良さそう。
http://www.cocos2d-iphone.org/forum/topic/30297

CCArray *spriteArray = [CCArray arrayWithCapacity:10];

for (int i = 0; i < 10; i++)  {
     [spriteArray addObject:[CCSprite spriteWithFile:@"test.png"]];
}

// Retrieve reference
CCSprite *sprite = (CCSprite*)[spriteArray objectAtIndex:i];
なるほど。

CCArrayを作っておいて、
addObject:していって、
(CCSprite*)でCCSpriteオブジェクトとして配列から取得、と。

それで、
NSString *name = [NSString stringWithFormat:@"sprite%d", i];
[spriteArray addObject:[CCSprite spriteWithFile:name]];
こんな感じで、連番にした名前から配列を生成できるだろうか。

さて、やってみよう。

:::::::::::::::::::::::::::::::

というわけで、小さな丸「comal」を複数突っ込んだspriteAtlasをTexturePackerでつくって、以下のようなコードを書き書き。


        CCSpriteFrameCache *cache = [CCSpriteFrameCache sharedSpriteFrameCache];
        [cache addSpriteFramesWithFile:@"comalAtlas.plist"];
        
        for(int i=1;i<7;i++){
            NSString *name=[NSString stringWithFormat:@"comal%d.png",i];
            CCSprite *comal = [CCSprite spriteWithSpriteFrameName:name];
            comal.position=ccp(100*i,100*i);
            [self addChild:comal];
        }
無事、表示されました。

が、上記を参考にした配列を使ってみると、エラーで止まるので、要調査。
まだ、CCArrayについて、よく分かっていないようです。自分。


0 件のコメント:

コメントを投稿