1

我想创建一个模式对话框CCLayer,作为暂停功能,显示人们重试、恢复或退出。

我添加了一个精灵来覆盖主层,并设置触摸不启用。但是主层的按钮也可以触摸。这个怎么做?如何向用户显示一种模式?

4

2 回答 2

0

我通过 HUD 层实现了这一点。我制作的每个游戏层都有一个 HUD 层覆盖。HUD 层有一个CCMenu带有暂停图像的暂停游戏。

当玩家暂停游戏时,HUD 层会显示另一个CCMenu重新启动、退出或恢复游戏。并且 HUD 还存储了一个BOOLisPaused。在ccTouchBegan(在游戏层上)我检查 HUD.isPaused 是否,如果是,则返回NO,否则返回YES。这解决了游戏中任何不必要的触摸。

于 2012-06-11T11:40:30.010 回答
0

setting isTouchEnabled: disables taouches only to the layer, not to it's children. It means, that if your layer has touch delegate methods, they will not be called when isTouchEnabled: is set to NO. If you have CCMenu instance or other touchable child, you must change it's isTouchEnabled: property separately.

于 2012-06-11T11:17:05.003 回答