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





Для тех, кого это может волновать, вот что я в итоге сделал:
GameScene * gs = [GameScene node];
[[Director sharedDirector] runScene: gs];
[[Director sharedDirector] replaceScene: [ShrinkGrowTransition transitionWithDuration:0.5 scene: gs]];
Это было сделано в рамках реализации GameLayer после завершения уровня.