有很多制作游戏的软件都是由很多个场景组成,比如我们知道cocos2dx中可以由多个场景组成,那么我是如何来切换场景的呢
首先我们先新建一个新的场景类,我推荐的方式是,在你工程的目录中找到一个classes的文件夹,里面有AppDelegate.cpp和AppDelegate.h还有HelloWorldScene.cpp和HelloWorldScene.h,我们需要做的就是把HelloWorldScene.cpp和HelloWorldScene.h复制在当前文件夹下,然后把HelloWorldScene中一些东西修改
例如我要新建一个GameScene的类
修改如下:
在GameScene.h中把
#ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__
改为
#ifndef __GAMESCENE_SCENE_H__
#define __GAMESCENE_SCENE_H__
GameScene.h的public里面把
CREATE_FUNC(HelloWorld);
改为
CREATE_FUNC(GameScene);
在GameScene.cpp中
把
#include "HelloWorldScene.h"
改为
#include "GameScene.h"
总之就是把所有HelloWorld的全都改为GameScene
最后那些HelloWorld全部成员函数还要继续用的就保留,不需要的就删除,这样我们就新建一个类了
然后我们在原本HelloWorld场景中设置一个按钮,在按钮响应的事件里面添加这一句代码:
1 | CCDirector::sharedDirector()->replaceScene(CCTransitionFade::create(0.6f, GameScene::scene())); |
然后我们在HelloWorld中按下按钮我们就能切换到GameScene的场景中去了
现在我们就可以完成游戏开始界面和游戏场景的切换了