1
SKAction *ghostAnimationAction = 
[SKAction animateWithTextures:ghostFrames timePerFrame:0.1];

SKAction *ghostDelayAction = 
[SKAction animateWithTextures:@[[SKTexture textureWithImageNamed:@"Ghost_"]]     
timePerFrame:1.0];

SKAction *ghostAnimationSequence = 
[SKAction sequence:@[ghostAnimationAction, ghostDelayAction]];

SKAction *repeatGhostAnimationSequence = 
[SKAction repeatActionForever:ghostAnimationSequence];

我有一个由对象组成的动画帧NSMutableArray序列SKTexture。播放完该序列后,我想在静止帧上折叠一秒钟,然后再重复所有内容。上面的代码有效,但我能找到指定在帧上保持一段时间的唯一方法是使用animateWithTextures:timePerFrame:和提供单个纹理数组。是否有另一种方法可以在SKAction我丢失的持续时间内显示单个图像。

4

1 回答 1

2

您可以创建一个包含这两个操作的新 SKAction。请参阅此处名为“创建运行其他操作的操作”的 Sprite Kit 编程指南部分向节点添加操作

看一下 SKAction 成员 waitForDuration: 也可以避免以这种方式传入单个纹理。让第一个 SKAction 运行您的动画,然后让第二个 SKAction waitForDuration。然后,您的封闭 SKAction 将永远或根据需要运行这两个操作。

于 2013-09-26T12:43:13.743 回答