2011-10-11 32 views
0

我想做一個簡單的遊戲,我目前正在嘗試做一個箭頭射出。 到目前爲止,我有兩個功能,只爲精靈的運動做ccTime函數的最佳方法?

-(void)ccTouchesBegan

潤色開始做一些數學,並得到從箭頭和指壓的初始拍攝點的矢量,然後將數據傳遞到另一個功能:

-(void)shatArrow:(CGPoint)cl:(CGPoint)nv{ 

}

我想要的是讓shatArrow函數調用一個ccTime函數,該函數僅用於使箭頭移動,並且一旦箭頭完成了它的投影ccTime函數將停止,並且可以在需要時再次調用。

我該怎麼辦?

回答

2

計劃更新選擇(即在你的類的init方法):

[self scheduleUpdate]; 

然後實現更新方法:

-(void) update:(ccTime)delta 
{ 
    if (isArrowMoving) 
    { 
    // arrow move code here 

    if (arrow movement should end) 
    { 
     isArrowMoving = NO; 
    } 
    } 
} 

你可以保持更新方法的運行,除非你有數百個箭頭不會影響性能。

-(void) shootArrow:(CGPoint)cl:(CGPoint)nv 
{ 
    isArrowMoving = YES; 
    // other arrow movement init code here 
} 

順便說一句,這是「拍,拍,拍」,而不是「拍,拍,蝨」或類似的東西。 (我想你沒有要求一個#LinguisticsOverflow答案);)

+0

謝謝一噸:) – Gabe