2012-08-09 97 views
0

我有一个场景,其中包含一个GamePlay图层和一个包含我的暂停菜单的HUDLayer。我想知道是否有人在场景中暂停一层,这样我可以暂停GamePlay层,但仍然可以访问并在HUDLayer中的暂停菜单中单击。我试过使用如何暂停cocos2d 2.0中的图层

[[CCDirector sharedDirector] pause]; 

但暂停一切,并不接受我的暂停菜单中的触摸。如果无法暂停单个图层,将暂停菜单合并到游戏中的最佳方式是什么?谢谢。

P.S.我使用的是cocos2d 2.0的最新版本的cocos2d。

回答

0

This教程应该有所帮助。 但基本上你想要做的是不计划你的场景,然后在简历上重新安排它。 这是我在HUD层做的。

-(void)pause:(id)sender 
{ 
    if(paused) 
    { 
     [gamescene scheduleUpdate]; 
    } 
    else { 
     [gamescene unscheduleUpdate]; 
    } 
    paused =!paused; 
} 
+0

我没有使用Box2D,所以我没有打勾方法。我应该创建一个还是不是我应该做什么?谢谢 – sbru 2012-08-09 15:24:44

+0

你有没有类似的方法?如果不是,你如何进行游戏? – m1sk 2012-08-09 17:41:51

+0

我每0.75秒就以init方法调用gameLogic。 – sbru 2012-08-09 17:49:08

-1

您不应该“暂停”所需的图层,除非我遗漏了某些东西。为什么你不能在停止层显示时禁用除暂停图层之外的其他所有内容?这似乎是你想要的最终结果?

+1

如果它在该图层上运行的动画会怎么样?而不是回应触摸? – 2012-08-10 15:50:31

+1

你有几个选项。您可以将所有正在运行的动画的速度设置为0,以有效地使用CCSpeed暂停它们,然后在您暂停时将速度设置为1。请参阅CCSpeed上的cocos2d文档,网址为http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:actions_ease?s[]=ccspeed#speed_action,或者您可以一起停止动画,然后再次启动它们。 – 2012-08-10 16:01:44

+0

@JamesWebster是正确的。我在我的游戏层上有动画,我想暂停,既暂停触摸动画,但我想保持暂停层上的触摸和动画活动,以便我可以与它交互。 – sbru 2012-08-10 17:22:59

相关问题