Переходы и настройка слоев / сцен в cocos2d iPhone - PullRequest
6 голосов
/ 10 декабря 2008

Я хочу настроить переход между двумя уровнями (после завершения одного уровня используйте один из плавных переходов cocos2d для перехода на следующий уровень). В моей реализации GameLayer у меня есть методы настройки, чтобы сделать что-то вроде [self buildLevel: 3] для создания игрового поля. Что мне нужно сделать, чтобы создать экземпляр нового узла GameLayer, Layer, GameScene или Scene, чтобы иметь возможность выполнять такие действия, как:

GameLayer * nextLevelLayer;

[nextLevelLayer buildLevel: 4];

... сделать переход между уровнем 3 и уровнем 4

Возможно, я изложил свой код в полном непонимании Objective C. Я предполагаю, что вы не можете установить новый GameLayer в коде инициализации, поскольку он будет зависать, непрерывно создавая новые узлы. Возможно, у меня слишком много кода установки игрового поля в моем коде инициализации для GameLayer, как вы, ребята, обычно справляетесь с этим? Вы устанавливаете флаг перед планированием селектора для основного цикла игры, затем, если флаг установлен, устанавливаете уровень в основном цикле игры или есть лучший способ сделать это?

Заранее спасибо!

1 Ответ

14 голосов
/ 11 декабря 2008

Для тех, кого это волнует, вот что я в итоге сделал:

GameScene * gs = [GameScene node];
[[Director sharedDirector] runScene: gs];
[[Director sharedDirector] replaceScene: [ShrinkGrowTransition transitionWithDuration:0.5 scene: gs]];

Это было сделано в реализации GameLayer после завершения уровня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...