我正在研究cocos2d V3.x項目(SpriteBuilder V1.2.1)。目前試圖在CCSprite上延遲運行此操作序列。我不確定是否有問題,或者我只是不明白CCActionSequence是如何工作的。Cocos2d CCActionSequence順序和延遲搞砸了
我想要動作'a'開始,當完成(2s後)延遲(5s),然後調用這兩個函數(動作'c'和'd')。但是在模擬器中,順序是錯誤的('d'在'c'之前被調用),並且在'a'開始旋轉後它們大約被調用1秒。
我做錯了什麼?如果這是CCActionSquence的實際工作方式,我可以做些什麼來使其按前面段落中解釋的方式工作?
CCAction *a = [CCActionRotateBy actionWithDuration:2 angle:360];
CCAction *b = [CCActionDelay actionWithDuration:5];
CCAction *c = [CCActionCallFunc actionWithTarget:self selector:@selector(limpiarSeleccionadas)];
CCAction *d = [CCActionCallFunc actionWithTarget:self selector:@selector(endTurn)];
[[_arregloBolitas objectAtIndex:random] runAction:[CCActionSequence actionWithArray:@[a,b,c,d]]];
謝謝!
我看不出任何錯誤...嘗試序列的var_list構造函數,看看它是否改變了結果。 [CCActionSequence操作:a,b,c,d,nil]; – YvesLeBorg 2014-10-20 01:00:33
不,不能找到使用該構造函數的區別(除了以CCActionFiniteTime而不是CCAction作爲參數的構造函數的警告)。猜猜我不得不繞過這個......我覺得讓cocos2d對CCActionDelay不起作用感到失望,在依賴大量動作序列的遊戲中非常重要(幸好不是這個,但對於未來的項目來說它是一個巨大的問題):,( – Fdo 2014-10-20 09:09:47
不確定,每次都適合我,而且我有很多複雜的序列,不要覺得失望,繼續尋找 – YvesLeBorg 2014-10-20 11:28:27