Итак, вот в чем дело, я создавал игру на основе tweeJump с открытым исходным кодом как небольшую часть более крупного приложения.
Я успешно загрузил игру (из tableView) и могу играть в нее, но я не совсем уверен, как прекратить запуск cocos2d и вернуться к табличному представлению, которое запускает игру. Я попытался реализовать кнопку внутри cocos2d, которая останавливает CCDirector, но в основном просто замораживает мое приложение - я не совсем уверен, как открыть контроллер представления. Я не очень знаком с cocos2d, поэтому буду признателен за любую помощь. Спасибо.
Вот соответствующий код:
AppDelegate (это не запускает игру, но настраивает CCDirector для последующего использования):
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Add the tab bar controller's current view as a subview of the window
[window addSubview:tabBarController.view];
[application setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];
[[CCDirector sharedDirector] setPixelFormat:kRGBA8];
[[CCDirector sharedDirector] setAnimationInterval:1.0/kFPS];
[CCTexture2D setDefaultAlphaPixelFormat:kTexture2DPixelFormat_RGBA8888];
[window makeKeyAndVisible];
return YES;
}
Вот соответствующая реализация для контроллера представления (который я загружаю из tableViewController), который запускает игру, все в loadView:
(void)loadView{
if (!load) {
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
load = YES;
[[CCDirector sharedDirector] attachInWindow:window];
[window makeKeyAndVisible];
CCScene *scene = [[CCScene node] addChild:[Game node] z:0];
[[CCDirector sharedDirector] runWithScene: scene];
}
}