我希望一旦我的精灵达到某个旋转就停止动作。例如:
CCAction *rotateUp = [CCRotateTo actionWithDuration:0.3 angle:-35];
[player runAction:rotateUp];
if (player.rotation == -35) {
[player stopAction:rotateUp];
[player runAction:[CCRotateTo actionWithDuration:0.5 angle:65]];
}
一旦玩家达到最大旋转,我希望它能够运行不同的动作。但这不起作用。我该怎么做呢?
答案 0 :(得分:0)
您无法立即获得动作输出。因此,为此提供完成回调是很好的。
代表。 (在c ++中)
CCAction *rotateUp = CCRotateTo::create(0.3f, -35f);
CCCallFuncN *pCall = CCCallFuncN::create(callfunc_selector(<#_SELECTOR#>));
player->runAction(CCSequence::create(rotateUp, pCall, NULL));
这里指定的SELECTOR在旋转操作完成时被调用。只需在Obj C中转换它并尝试。