Как переход между слоями в cocos2d?

У меня есть иерархия сцен меню следующим образом:

Scene
   |
Background Layer
   |           |
Main Menu    Settings Menu

Я хочу перейти из главного меню в меню настроек, не перемещая фоновый слой. Существует множество документов о том, как переходить между сценами, но я ничего не могу найти между слоями. Слой "Главное меню" и "Меню настроек" является полноэкранным с прозрачным фоном, я просто хочу скользить между ними, не перемещая фон.

Простая проблема, но я полностью озадачен поиском в Интернете более часа.

1 ответ

Решение

У вас есть узел, от которого главное меню является дочерним. Добавьте меню настроек в этот узел со смещением +screenWidth или -screenWidth в зависимости от желаемого направления. Затем создайте последовательность CCMoveTo где вы перемещаете свой узел на другую сторону экрана (или за пределы экрана, если идти назад), а затем CCCallFunc которая вызывает функцию для удаления слоя главного меню из основного узла. Это будет одинаково хорошо работать для вертикальных переходов (просто используйте screenHeight и перемещайте узел вертикально).

Другие вопросы по тегам