我基本上希望 Action 能够运行,然后在 Action 中间创建慢 Action 效果,然后再将其退出慢 Action 。是否有人对如何完成此工作有任何好的反馈?我曾考虑过手动创建 Action 并使用更新方法,但是我觉得那可能太过分了。我希望有一个更简单的解决方案。
我的另一个想法是停止操作,然后以较慢的时间重新开始,但是我认为它不会停留在同一条路径上,而且看起来可能很奇怪。
这是我用来创建 Action 的代码。
CGMutablePathRef cgpath = CGPathCreateMutable();
CGPathMoveToPoint(cgpath,NULL, mysprite.position.x, mysprite.position.y);
CGPathAddCurveToPoint(cgpath, NULL, cp1.x, cp1.y, cp2.x, cp2.y, e.x, e.y);
[mysprite runAction:[SKAction sequence:@[[SKAction followPath:cgpath asOffset:NO orientToPath:YES duration:3]]]];
CGPathRelease(cgpath);
最佳答案
每个节点都有一个speed
属性:
您可以将其设置为小于1的值,以使操作运行更慢。您甚至可以设置动画速度以逐渐降低速度:
[mySprite runAction:[SKAction speedTo:0.5 duration:1.0]];