2014-12-03 49 views
1

我有一個遊戲,不斷產生大量沿着屏幕移動的鳥。它們受到重力的影響,所以每隔半秒鐘我就想給鳥兒施加一個衝動來產生拍動效果。問題是我只能對最後產生的鳥產生衝動。我怎樣才能將衝動應用於整個類別的位掩碼?如何將衝動應用於精靈套件中的整個catagorybitmask

+0

聽起來就像你將每隻新的鳥分配給相同的變量(伊娃),從而取代以前的參考。您需要使用數組或使用Sprite Kit的枚舉..函數。 – LearnCocos2D 2014-12-03 20:08:19

+0

感謝您的回覆我將如何着手使用數組 – AppCoder123 2014-12-03 21:06:29

+1

保持陣列中的鳥類並將衝動應用到它們中的每一個。 – Andy 2014-12-03 21:45:26

回答

1

正如@Andy指出的那樣,您應該將鳥存儲在一個數組中。

方法A 創建一個將永久重複的操作序列。序列應該簡單地:

  1. 等待0.5秒(SKAction
  2. 循環通過陣列並應用衝動每一個項目(SKAction要求runBlock:

runBlock:是「自定義「SKAction,它允許您與序列同步觸發代碼。

方法B 創建NSTimeInterval* timeSinceLastImpulse

Update:(NSTimeInterval*)timeSinceLast 
{ 
    timeSinceLastImpulse+=timeSinceLast; 
    if(timeSinceLastImpulse >= .5)//check if it has been half a second 
    { 
     //run through array and apply impulse 
     timeSinceLastImpulse = 0; 
    } 
} 

希望這些選項給你在正確的方向!

+0

感謝您的詳細解答,我會嘗試一下。看起來很棒 :) – AppCoder123 2014-12-04 17:05:59

相關問題