繁体   English   中英

libgdx如何在角色动作完成/完成之前停止循环

[英]Libgdx how to stop for loop until actor action has finished/completed

我将参与者添加到称为单元的组中,并在for循环中将操作添加到该组中特定单元的集合。

我希望这样,直到单元格的动作完成后才开始循环的下一次迭代。

for (int i = 0; i < cells.length; ++i) {

     cell.addAction(fadeIn(1f));
     // I need to wait here until the action has completed!
}

我可以使用阻止动作还是libgdx中的某些动作? 还是有特定的方法我应该这样做?

显然,我需要libgdx才能在后台继续运行,否则该操作将根本无法完成,我真的不知道如何执行此操作。

我不能将RunnableAction用作执行后的代码调用,我只是想停止循环迭代。

谢谢,

除了阻塞循环,您还可以尝试为每个动作设置一个延迟时间,以计算淡入开始开始运行所需的时间。

像这样:

float delay = 0;
for (int i = 0; i < cells.length; ++i) {
    SequenceAction sa = Actions.sequence(Actions.delay(delay), 
                          Actions.fadeIn(1f));
    cell.addAction(sa);
    delay += 1f; //Increase the delay for the duration of each fadeIn
}

没有测试这个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM