我有一个cocos2d-x-3.15.1的游戏,我有一个项目,我正在移动。我希望在操作完成时调用回调。 为此,我使用了以下代码结构。
TargetedAction* const targetedAction = TargetedAction::create(item, action);
CallFunc* const dispatchEvent = CallFunc::create([this]()
{
_eventDispatcher->dispatchCustomEvent(EVENT);
});
auto itemsMoveAction = Sequence::createWithTwoActions(targetedAction, dispatchEvent);
runAction(itemsMoveAction);
但我的代码,有时无法执行正确,我怀疑这是因为这个
https://github.com/cocos2d/cocos2d-x/issues/18046序列无法完成。 #18046错误。
如何在不使用Sequence
的情况下实现相同的功能?
编辑: 我已经应用了解决方法
ActionEase* const action = MoveTo::create(timeToStop, destinationPoint);
item->runAction(action);
CallFunc* const dispatchEvent = CallFunc::create([this]()
{
_eventDispatcher->dispatchCustomEvent(EVENT);
});
auto delayAction = Sequence::createWithTwoActions(DelayTime::create(timeToStop), dispatchEvent);
runAction(delayAction);
我想完全避免使用Sequence,但似乎没有办法。
答案 0 :(得分:0)
// demo
<button ng-if="status == 'new' || status == 'enable'">Install</button>