2013-09-23 50 views
0

我希望當玩家獲勝並通過大門時,可以彈出一個評分面板。 通常它會彈出計分板。 我認爲最好的方法是使用圖層並將其拉下。 但是我只能得到場景的過渡,只是想知道層轉換有沒有什麼辦法?cocos2dx/coco2d圖層轉換

回答

0

CCLayer沒有看到相當於CCTransitionScene:CCScene的圖層,但圖層可以使用我們可以帶出大部分動畫/過渡的runActions。

這就是我在這種情況下所做的,但我猜你正在考慮同樣的事情。儘管如此,

1.創建一個圖層,並將其添加爲一個孩子在屏幕框架外的位置。 2.然後使用CCMoveTo將其移動到想要拉下的位置。

0

我在過去做過類似的事情。

  • 顯示您的層離屏 即SETPOSITION(0,CCDirector :: sharedDirector() - > getWinSize()高度* 1.5F。);
  • 創建一個動作來移動屏幕上它(我喜歡用CCEaseSineOut)
  • 你也可以使用一個callfunc調用函數時,它已經完成了它的動畫
    scoreLayer-> runAction(CCSequence ::創建(CCEaseSineOut: :create(CCMoveTo :: create(1.0f,ccp(0,0-_screenHeight * 1.5f))),CCCallFunc :: create(this,callfunc_selector(MainLayer :: scorefinishedMove)),NULL));

注:該功能可能需要一些修正,以結束括號等你可能想單獨出一些行動,而不是將初始化就在runAction功能

0

對於層過渡,你可以做這樣的:

CCScene* newScene = CCTransitionCrossFade::create(.5f,Layer2::scene()); 

CCDirector::sharedDirector()->pushScene(newScene); 

在Layer2.cpp

CCScene *二層::場景()

{
CCScene* scene = CCScene::create(); 

CCLayer* layer = new Layer2(); 
scene->addChild(layer,1); 

return scene; 

}