在Sprite Kit中依次淡化SKSpriteNodes

时间:2014-06-03 01:33:18

标签: objective-c sprite-kit skaction

我有N个不同的精灵节点,我希望在(慢)序列中逐个淡出。淡化我正在做的节点[node runAction:[SKAction fadeAlphaTo:0.5 duration:1.0]]。但是,如何最好地将此操作应用于序列中的N个不同节点?

我知道有一个[SKAction序列:]方法可能有用,但我不确定如何在不同节点上执行此操作。

非常感谢任何帮助! :)

1 个答案:

答案 0 :(得分:1)

你是对的,SKAction sequence:会做到这一点:

// assume you have the count of sprites to fade as spritesToFadeCount

SKAction *fadeSprites = [SKAction sequence: @[
    [SKAction performSelector:@selector(fadeSprite) onTarget:self],
    [SKAction waitForDuration:1.0 withRange:0.0]]];
[self runAction: [SKAction repeatAction:fadeSprites count:spritesToFadeCount]];

然后你的fadeSprite方法应该进行淡入淡出,然后从它的父节点中删除它(如果你保持一个可变的精灵数组来淡化,那就从那里删除它。)

相关问题