精灵帧动画

时间:2013-01-31 06:05:24

标签: xcode cocos2d-iphone

我试图让我的精灵运行一帧一帧的动画,到目前为止我是这样的。

GameScreen.h

#import "cocos2d.h"
#import <UIKit/UIKit.h> 
#import "GamePad.h"


@interface GameScreen : CCLayer
{
    CCSprite *_character;
    CCAction *_walkAction;
    CCAction *_moveAction;
    BOOL _moving;
}

@property (nonatomic, retain) CCSprite *character;
@property (nonatomic, retain) CCAction *walkAction;
@property (nonatomic, retain) CCAction *moveAction;

+(CCScene *) scene;


@end

GameScreen.m

@implementation GameScreen

@synthesize character = _character;
@synthesize moveAction = _moveAction;
@synthesize walkAction = _walkAction;



+(id) scene
{
    CCScene *scene = [CCScene node];

    GameScreen *layer = [GameScreen node];

    [scene addChild: layer];

    return scene;
}

-(id) init
{

    if( (self=[super init] )) {



        [[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:
         @"Dubstep Dan_default.plist"];
        CCSpriteBatchNode *spriteSheet = [CCSpriteBatchNode
                                          batchNodeWithFile:@"Dubstep Dan_default.png"];
        [self addChild:spriteSheet];

        NSMutableArray *walkAnimFrames = [NSMutableArray array];
        for(int i = 1; i <= 8; ++i) {
            [walkAnimFrames addObject:
             [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:
              [NSString stringWithFormat:@"1-%d.png", i]]];
        }



        CCAnimation *walkAnim = [CCAnimation animationWithFrames:walkAnimFrames delay:0.1f];



        CGSize winSize = [CCDirector sharedDirector].winSize;
        self.character = [CCSprite spriteWithSpriteFrameName:@"1-1.png"];
        _character.position = ccp(winSize.width/2, winSize.height/2);
        self.walkAction = [CCRepeatForever actionWithAction:
                           [CCAnimate actionWithAnimation:walkAnim restoreOriginalFrame:NO]];
        [_character runAction:_walkAction];
        [spriteSheet addChild:_character];

}

当我运行程序时,精灵应该是一个黑色正方形,我在调试器窗口中收到以下消息

2013-01-31 00:00:02.682 Dubstep Dash [428:907] cocos2d:CCTexture2D。无法创建纹理。 cgImage是零 2013-01-31 00:00:02.684 Dubstep Dash [428:907] cocos2d:无法添加图片:CCTextureCache中的Dubstep Dan_default.png

1 个答案:

答案 0 :(得分:0)

更正您的文件名,如Dubstep_Dan_default.plist