【发布时间】:2018-06-18 23:28:17
【问题描述】:
这是我的代码:
if (sprite != NULL)
{
delay1 = CCDelayTime::create(1.5f);
delay2 = CCDelayTime::create(3.0f);
brickdelete = CallFunc::create([this]()
{
sprite->setOpacity(0);
sprite->getPhysicsBody()->removeFromWorld();
});
brickcreate = CallFunc::create([this]()
{
sprite->setOpacity(255);
sprite->setPhysicsBody(brickbody);
});
disintegratefunction = CallFunc::create([this]() {
sprite->runAction(disintegrateAnim);
});
appearfunction = CallFunc::create([this]() {
sprite->runAction(appearAnim);
});
runAction(Sequence::create(disintegratefunction, delay1, brickdelete, delay2, appearfunction, brickcreate, NULL));
}
我希望同时发生多个 runAction 实例。目前,如果我在另一个正在进行时启动一个 runAction,我会收到多个断言失败,并且第一个序列中的剩余操作被添加到第二个 runAction 序列中(因此第一个主体在序列的某个阶段仍然不完整)。
我希望它们彼此独立。这可能吗?我也尝试了targetedaction,但我不确定代码是否良好,因为它具有相同的结果。
【问题讨论】: