2011-09-29 56 views
0

目前,我有這樣的代碼在我的UIViewController:我應該從哪裏出發? (cocos2d的+ UIKit的)

//Cocos2D methods 
-(id) init { 
    if((self=[super init])) 
    { 
     CCScene *scene = [CCScene node]; 
     CCLayer *layer = [CCLayer node]; 
     [scene addChild:layer]; 
     [[CCDirector sharedDirector] runWithScene:scene]; 
     [[CCDirector sharedDirector] setDisplayFPS:NO]; 
     [self performSelector:@selector(cocosgameLoop:) withObject:nil afterDelay:1/60.0f]; 
    } 
    return self; 
} 
- (void)cocosgameLoop:(ccTime)dT { 
    //Check for collisions here and add gravity, etc.... 
} 
- (void)viewDidUnload { 
    [super viewDidUnload]; 
    [[CCDirector sharedDirector] end]; 
} 
// 

我的視圖控制器是有些Objective-C代碼,但我想的Cocos2D添加到UIView的。我認爲上面的代碼正在初始化它,但我不確定。 CCScene也應該有自己的課程,專門研究場景中發生的一切事情嗎?如果是這樣,我會怎麼做? 我知道這些問題很多,但我的遊戲非常類似於Doodle Jump,我需要知道我現在處於哪種狀態。 有沒有人有任何想法/提示?

謝謝!

回答

1

performSelector將只調用一次cocosgameLoop。您需要調用CCDirector startAnimation,然後在您的cocos2d節點中安排更新。

我的Learn Cocos2D book(第二版)介紹瞭如何在UIKit視圖(普通iPhone)應用程序中添加和設置Cocos2D。