[英]Cocos-2d actions- make them wait before proceeding to the next line in code?
基本上,说我有这个:
[sprite runAction:action];
[sprite2 runAction:action2];
在cocos2d中,这将同时执行。 但是说我希望第一行在完成下一行之前完全完成,我该怎么做?
在第一个sprite上,运行[action,startSprite2]的CCSequence,其中startSprite2是另一个动作(CCCallFunc)。 “操作”完成后,将调用startSprite2例程例程。 将其添加到模块中,然后在该例程中启动sprite2操作。
@YvesLeborg的回答是正确的。 还有其他许多方法可以做到这一点。 一种方法可以像这样。 为每个精灵动作创建两个函数,例如
-(void)runSprite1Action{
[sprite1 runAction:action];
}
-(void)runSprite2Action{
[sprite2 runAction:action2];
}
然后,可以在父场景/图层上添加CCSequence动作,该动作将首先调用第一个动作,然后当第一个动作完成运行时,它将调用第二个动作。 即
CCSequence *sequence = [CCSequence actions:[CCCallFunc actionWithTarget:self selector:@selector(runSprite1Action)],
[CCCallFunc actionWithTarget:self selector:@selector(runSprite2Action)], nil];
[self runAction:sequence];
我希望这有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.