我用海雷的代码,但创建为我的作品OK类别:您可以尝试这些方法递归暂停游戏层/恢复活动:像
- (void)pauseSchedulerAndActionsRecursive:(CCNode *)node {
[node pauseSchedulerAndActions];
for (CCNode *child in [node children]) {
[self pauseSchedulerAndActionsRecursive:child];
}
}
- (void)resumeSchedulerAndActionsRecursive:(CCNode *)node {
[node resumeSchedulerAndActions];
for (CCNode *child in [node children]) {
[self resumeSchedulerAndActionsRecursive:child];
}
}
呼叫东西。
CCNode + additions.h
#import "CCNode.h"
@interface CCNode (additions)
-(void)pauseSchedulerAndActionsRecursive;
-(void)resumeSchedulerAndActionsRecursive;
@end
CCNode + additions.m
#import "CCNode+additions.h"
@implementation CCNode (additions)
-(void)pauseSchedulerAndActionsRecursive {
[self pauseSchedulerAndActions];
for (CCNode *child in [self children]) {
[child pauseSchedulerAndActionsRecursive];
}
}
-(void)resumeSchedulerAndActionsRecursive {
[self resumeSchedulerAndActions];
for (CCNode *child in [self children]) {
[child resumeSchedulerAndActionsRecursive];
}
}
@end
所以暂停时,之前调用pauseSchedulerAndActionsRecursive你的游戏节点上添加一个“暂停菜单节点“添加到游戏节点(否则暂停节点也会暂停并因此不可用)。
这是一个非常好的主意。我会试一试。我可能需要一个星期左右才能报告。 – robbpriestley 2012-04-25 15:57:14
哈雷还原本建议如下: – robbpriestley 2012-05-01 18:37:24
“你可以试试这些方法递归暂停/游戏层的恢复活动: 'code' - (空)pauseSchedulerAndActionsRecursive:(CCNode *)节点{ [节点pauseSchedulerAndActions] 为(CCNode *子在[节点儿童]){ [自pauseSchedulerAndActionsRecursive:子]; } } - (无效)resumeSchedulerAndActionsRecursive:(CCNode *)节点{ [节点resumeSchedulerAndActions]; 为(CCNode *子节点] { [self resumeSchedulerAndActionsRecursive:child]; } }'code' – robbpriestley 2012-05-01 18:45:30