cocos2d-x 实现场景的切换
前言:
我们在玩游戏的时候肯定有非常多的页面
比如地图的切换 副本的进入 等等
每一个都是一个场景
今天我们来实现一下场景的切换
我这里准备3个场景
- 进入游戏时的场景
- 等待加载的场景
- 开始游戏的场景
如下图:
切换场景需要借助我们的导演类 Director
replaceScene(scene) 就是切换场景
我写了一个场景管理类 管理三个场景 可以进行自由的切换
- loadScene //加载场景
- uiScene //刚进入游戏场景
- gameScene //开始游戏时场景
然后下面三个方法就是 进行场景切换的
就是创建一个场景 然后把自己写的 layer 类添加到里面 然后调用导演类进行切换
我写了3个场景类
我这里拿 UILayer 举个例子
这里写了一个 SceneManage 的指针来实现在函数内直接进行场景的切换
init() 写自己的实现
比如 点击开始按钮 进入加载资源场景
menuItemCallBack 在里面 直接调用 场景管理类的 goLoadScene();就可以
其他的2个切换场景也一样,在自己的逻辑里面调用场景管理类的相关的方法
在AppDelegate里面创建场景管理类 然后直接调用第一个场景就可以
下面的启动场景函数director->runWithScene(); 也就不需要了
进度条的实现我之前的文章有下
人物的移动 我后面会写一下