2

理由はわかりませんが、アニメーションが機能しません。スプライト シートを使用してアニメーション化されたユニットを追加しようとしていますが、スプライトのセットを使用しています。そして、何かがうまくいかない init メソッドのコードは次のとおりです。

@implementation Enemy
-(id) initAt:(CGPoint)pos
{
    if([super init])
    {
        self.position = pos;
        CCSprite *start_sprite = [CCSprite spriteWithFile:@"unit1_00000.png"];
        start_sprite.position  = ccp(0,0);
        [self addChild:start_sprite z:2];

        const int FRAMES_COUNT = 10;
        NSMutableArray* frames = [[NSMutableArray alloc]initWithCapacity:FRAMES_COUNT];
        for (int i = 0; i < FRAMES_COUNT; i++)
        {
            NSString* file = [NSString stringWithFormat:@"unit1_0000%i.png", i];
            CCTexture2D* texture = [[CCTextureCache sharedTextureCache] addImage:file];
            CGSize texSize = texture.contentSize;
            CGRect texRect = CGRectMake(0, 0, texSize.width, texSize.height);
            CCSpriteFrame* frame = [CCSpriteFrame frameWithTexture:texture rect:texRect];
            [frames addObject:frame];
        }


        _default_animation = [CCAnimation animationWithSpriteFrames:frames delay:0.1f];
        _current_anim_action = [CCAnimate actionWithAnimation:_default_animation];
        CCRepeatForever* repeat = [CCRepeatForever actionWithAction:_current_anim_action];
        [self runAction:repeat];
    }
    return self;
}

エラーは次のとおりです: -[Enemy setDisplayFrame:]: 認識されないセレクターがインスタンス 0x8929bd0 に送信されました

4

1 に答える 1