#iphone #xcode #cocos2d-iphone
#iPhone #xcode #cocos2d-iphone
Вопрос:
Мне нужно показать ccscene при приостановке игры. Но он должен быть прозрачным. Кто-нибудь, пожалуйста, может мне помочь с этим??
Спасибо,
Ответы
Ответ №1:
Я полагаю, вам не следует создавать отдельную сцену для слоя pause. Что вы можете сделать, так это создать слой, аналогичный слою HUD.
Вторым вариантом было бы что-то вроде этого.Просто не устанавливайте цвет фона слоя.
Надеюсь, это поможет.
Комментарии:
1. Вторая ссылка, которую вы предоставили, не работает. Не могли бы вы, пожалуйста, предоставить ссылку еще раз?
Ответ №2:
Я знаю, что у вас уже есть ответ, но хотел поделиться своим решением, потому что я нажал на эту ссылку при исследовании той же проблемы. Я также опубликовал это на форумах cocos2d.
- (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];
}
}
У меня есть одна сцена и два слоя, слой сцены / игрового процесса и слой меню. Мои меню анимируются при входе и выходе, и я хотел, чтобы мое меню паузы также могло анимироваться при входе и выходе. Итак, я просто добавил вышеупомянутые функции в свой уровень сцены / игрового процесса. Затем, когда пользователь нажимает паузу, я вызываю pauseSchedulerAndActionsRecursive: на моем уровне сцены / игрового процесса и добавляю мой слой меню к сцене сверху. Мое меню поглощает все касания, поэтому касание также отключено на уровне сцены / игрового процесса, пока уровень меню включен. Затем просто вызовите resumeSchedulerAndActionsRecursive: метод для возобновления. Надеюсь, это кому-то поможет.