我正在开发一款涉及移动令牌的游戏。
用户进行一次移动,并且令牌根据预定规则移动。我用sprite-kit开发了这个。
我的问题是,一旦用户进行一次移动,该算法会删除令牌SKSpriteNodes
并根据需要添加令牌SKSpriteNodes
,但用户只能看到最终结果。
我希望他们能够以用户选择的速度(快速动画或慢动画)单独看到每个标记移动。我有它的工作,但我觉得必须有一个更好的解决方案。
我的解决方案是跟踪延迟删除令牌所需的秒数,并将其传递给函数,以便第一个令牌.5
第二次延迟调用该函数{{ 1}}延迟第二个,1
为第三个,依此类推。
removeToken代码如下所示,addToken代码类似。
1.5
有更好的解决方案吗?
答案 0 :(得分:0)
您可以在单个SKAction中执行此操作,该代码更简洁,更易于调试,并且可以轻松扩展以添加更复杂的效果:
使用一个sequence SKAction,其中包含:waitForDuration SKAction 和 a removeFromParent SKAction。
然后你可以考虑添加让它们淡出而不是消失(添加fadeOutWithDuration SKAction),声音效果(play SKAction)等等。