2013-07-04 61 views
1

我有一個CCLayer類,我用它來暫停菜單,並且在那個類中有菜單項。我剛剛添加了菜單,它顯示在屏幕上,但沒有動畫。我想在場景中添加過渡效果。或者像我們在精靈中那樣添加動作。我只想讓我的暫停菜單從上到下進行動畫製作。在cocos2d的CCLayer上添加動作iOS

在這裏,我如何加入我的CClayer類。

menuLayer = [[PauseMenu alloc] initWithParent:self]; 
[self addChild:menuLayer z:99]; 

我已經嘗試了這個動作代碼,但它不工作

menuLayer = [[PauseMenu alloc] initWithParent:self]; 
[self addChild:menuLayer z:99]; 
id move=[CCMoveTo actionWithDuration:5.1 position:ccp(240,120)]; 
[menuLayer runAction:move]; 
+0

我正在使用[[CCDirector sharedDirector] pause]; 添加菜單層之前..現在菜單是從上到下,但我的遊戲沒有暫停。它在後臺運行。我是否必須單獨阻止它? – Zohaib

+0

你有在你的圖層上添加菜單..對嗎?那麼暫停菜單的起始位置是什麼? –

+0

在屏幕中間 – Zohaib

回答

0

按照你的評論,我會建議你不要使用[[CCDirector sharedDirector]暫停],因爲它並沒有真正將暫停遊戲邏輯(只有動作和調度器),但如果你有一些線程在執行遊戲邏輯(如移動對象或計算某些東西),它仍然會繼續運行。

如果你想暫停你的遊戲,你應該保持遊戲的內部狀態。因此,例如在你的更新方法,你可以這樣做:

if (gameState == GAME_PAUSE) 
    return; 

這樣,它會很容易讓你決定如何繼續做,什麼不可以直到比賽回到場上。

相關問題