2012-02-08 20 views
4

我正在爲屏幕上隨機位置遊動的應用創建一條魚。在魚開始向下一個位置遊動之前,它會旋轉到其起始點和目標點之間的角度。添加到圖層後水平翻轉CCSprite

我想弄明白的是:if (target.x < start.x),我需要水平翻轉精靈。

的問題是,後創建精靈和addChild於層,我無法設置利用[sprite setFlipX]精靈的flipX屬性。

將sprite添加到圖層後setFlipX被鎖定了嗎?我怎樣才能解決這個問題?是我唯一的動畫解決方案嗎?

+0

我不認爲FlipX被鎖定。 – Almo 2012-02-08 18:42:39

+0

將精靈添加到圖層後,它不會翻轉紋理,僅在 – 2012-02-08 18:44:19

+0

之前確定?通常Cocos2d只能讀取這些東西。 – Almo 2012-02-08 18:46:08

回答

5

要翻轉,並保留以前的任何縮放,使用方法:你這樣做

sprite.scaleX *= -1.f; 

後,因爲它包含的scaleX == scaleY斷言不應該使用屬性sprite.scale了。

3

嘗試受scaleX設置爲-1翻轉它:

sprite.scaleX = -1; 

而且,它的價值,你應該能夠設置flipX布爾一個節點被添加作爲一個孩子之後。如果你不能的話,還有其他一些事情要做。

+1

這不會保留之前完成的任何縮放。 – 2012-02-09 12:34:19