2014-08-27 105 views
4

所以在我建立的遊戲中我想重複一個動作,但我希望它有一個初始延遲。舉例來說,這個動作會在用戶開始遊戲後三秒執行,但在它第一次執行後,不會再有三秒的延遲。我能做些什麼來解決這個問題?SKAction序列暫時延遲(初始延遲?)

在此先感謝!

+1

帶有等待和期望動作的序列和運行塊,重新運行只是在重複動作中包裹的所需動作 – LearnCocos2D 2014-08-27 19:03:42

+0

@ LearnCocos2D哇,這很容易。非常感謝你!你幫了我很多的問題! – 2014-08-27 20:01:56

回答

4

您可以使用SKAction來延遲,然後將其放在sequence的開頭。

Apple gives的序列中的一些示例代碼:

SKAction *moveUp = [SKAction moveByX:0 y:100.0 duration:1.0]; 
SKAction *zoom = [SKAction scaleTo:2.0 duration:0.25]; 
SKAction *wait = [SKAction waitForDuration: 0.5]; 
SKAction *fadeAway = [SKAction fadeOutWithDuration:0.25]; 
SKAction *removeNode = [SKAction removeFromParent]; 

SKAction *sequence = [SKAction sequence:@[moveUp, zoom, wait, fadeAway, removeNode]]; 
[node runAction: sequence]; 

您可以使用SKAction waitForDuration做出延遲。