我有一个从 spritesheet 运行的动画。在动画的最后一帧,图像似乎移动到精灵边界的右下角。这里有一个视频:
我找不到我的代码有什么问题;问题可能出在我用 Zwoptex 制作的 spritesheet 属性列表上。以下是房产清单:
https://gist.github.com/1128291
以及相关来源:
//initialize
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:[images objectForKey:@"elephantPlist"]];
elephantSpritesheet = [CCSpriteBatchNode batchNodeWithFile:[images objectForKey:@"elephantSpritesheet"]];
elephant = [TouchableSprite spriteWithSpriteFrameName:@"elephant_1.png"];
elephant.delegate = self;
[self addChild:elephantSpritesheet];
[elephantSpritesheet addChild:elephant];
.
- (void)animateElephant{
NSArray *frames = [self makeFrameNames:@"elephant" numFrames:15];
CCAnimation *animation = [CCAnimation animationWithFrames:frames delay:0.05f];
CCAnimate *animate = [CCAnimate actionWithAnimation:animation];
[elephant runAction:animate];
}
还有一件事,改变动画停止的帧并不能解决问题。也就是说,如果我只使用第 1 到第 10 帧而不是第 15 帧,第 10 帧将向下和向左跳跃,就像第 15 帧一样。