我有一个CCMenuItem
暂停按钮,当我触摸它时,应用程序会进入菜单。我将游戏场景设置为菜单场景中的静态变量,这样当我恢复游戏时,我可以恢复当前的游戏。
当我按下继续按钮时,我重新安排了游戏场景的更新,并用静态游戏场景替换了剧情。暂停按钮位于游戏场景拥有的图层上。
当游戏继续时,暂停按钮就在那里,但不响应我的触摸。我尝试使用onEnter来执行resumeSchedulerAndActions但没有。
我想出了一个感觉很难的解决方案,即在onEnter
中创建我的菜单并在onExit
中将其删除。
我错过了什么吗?有没有办法让我的菜单再次响应触摸?
答案 0 :(得分:1)
您可以使用popScene
CCDirector
来弹出游戏场景中的菜单场景。您可能不必自行安排。为此,暂停按钮必须首先在场景堆栈上推送场景,而不是使用replaceScene
。
答案 1 :(得分:1)
你知道什么是hacky?将场景保存在静态变量中。如果你替换一个场景,你应该放弃它。 Cocos2d不能正确处理对相同对象的replaceScene的多次调用。要么是这个,要么重写onEnter而不是调用[super onEnter]会导致输入问题。
如果你想继续比赛,