gpt4 book ai didi

iphone - Cocos2D iPhone - 在多个目标上运行 Action +回调

转载 作者:行者123 更新时间:2023-12-01 18:30:45 25 4
gpt4 key购买 nike

我有一个对象数组(objArray)和一个 Action 数组(actArray)。两个数组都是有序的,我的意思是,objArray 索引 0 处的对象必须对 actArray 执行操作 0。

为了解释清楚,让我们假设两个数组都有 3 个对象,obj0、obj1 和 obj2。

obj0 has to perform action 0 on actArray
obj1 has to perform action 1 on actArray
obj2 has to perform action 2 on actArray

这 3 个操作(或 n,在数组的情况下)必须同时发生。

当所有动画结束时,我需要调用方法 animationsFinished 。

我怎么做?

我从 Cocos 开始。我用谷歌搜索并没有找到任何实际的例子。我找到了 CCSpan,但我不明白它如何与多个对象一起使用,每个对象都有自己的 Action 。谢谢。

最佳答案

您可以按顺序执行这些操作,它们将同时发生。

int yourAnimationDuration; //this needs to be set to whatever your animation speed is
for(int idx = 0; idx < 3; idx++) {
[[objArray objectAtIndex:idx] runAction:[actArray objectAtIndex:idx]];
[self performSelector:@selector(someMethodToBeExecutedWhenAnimationFinishes) withObject:nil afterDelay:yourAnimationDuration];
}

或者,如果您希望动画完成方法只执行一次,只需将其从 for 循环中取出即可。

编辑:
id finalAnimation = [CCSequence actionOne:[actArray objectAtIndex:idx] two:someMethod];

这(我相信)将在第一个操作完成后执行您的方法。

关于iphone - Cocos2D iPhone - 在多个目标上运行 Action +回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com