Cocos2d-x 的onEnter() 和 onEnterTransitionDidFinish() 场景延时跳转

来源:互联网 发布:中国移动送话费软件 编辑:程序博客网 时间:2024/05/16 09:55

onEnter()   是在进入场景的一瞬间就开始执行了。

onEnterTransitionDidFinish() 是在完全进入场景后开始执行的。


因为在弄场景的延时跳转,游戏一开始显示公司Logo,然后显示游戏场景界面。


在第一个场景welcomScene的 onEnter()  开始场景跳转的事件。 延时3秒。

[cpp] view plaincopy
  1. void WelcomScene::onEnter()  
  2. {  
  3.     //跳转场景  
  4.     CCScene* pScene=InverseWarsScene::scene();  
  5.     CCDirector::sharedDirector()->replaceScene(CCTransitionFade::create(3,pScene));  
  6. }  


这里要用到播放背景音乐,背景音乐可以在一开始进入场景 onEnter() 时候进行预加载,然后在完全进入场景 onEnterTransitionDidFinish() 的时候开始播放音乐。


[cpp] view plaincopy
  1. void InverseWarsScene::onEnter()  
  2. {  
  3.     //在刚进入界面的时候预加载背景音乐,在inverseWarsScene场景开始播放音乐  
  4.     CocosDenshion::SimpleAudioEngine::sharedEngine()-> preloadBackgroundMusic("Audio/Background/ChmpSlct_BlindPick.mp3");  
  5. }  
  6.   
  7.   
  8. //在完全进入这个场景后开始执行的事件  
  9. void InverseWarsScene::onEnterTransitionDidFinish()  
  10. {  
  11.     //完全进入场景后开始播放音乐  
  12.     CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic("Audio/Background/ChmpSlct_BlindPick.mp3");  
  13. }  
0 0
原创粉丝点击