cocos2dx实战游戏开发之【别踩白块】------胜利与失败场景的实现

                    【别踩白块】游戏实战开发之胜利&失败场景

 

             大家好,我是Lampard------是一位从事cocos开发的游戏小白。

             本人经验尚缺,如果各位大牛有更好的建议,欢迎在下方评论,谢谢!!!

 

         今天要介绍的是游戏胜利&失败场景的实现:

            (1)失败场景的实现

           当玩家点击到白块的时候,我们的游戏会终止循环,并且跳转到失败界面。

          失败界面内容很简单,就是一个失败场景的背景,一个失败的Logo精灵以及两个菜单项分别返回到游戏界面和菜单界面。

#ifndef __FaildLayer__H__
#define __FaildLayer__H__

#include "cocos2d.h"
#include "extensions/cocos-ext.h"

USING_NS_CC;
USING_NS_CC_EXT;

class FaildLayer : public Layer {
public:

	static Scene* createScene();      // 创建一个场景
	virtual bool init();              // 填充这个场景
	CREATE_FUNC(FaildLayer);          // 静态创建并把层加载进自动回收池

private:

	Size vsable = Size(320, 480);
};


#endif 

           失败场景展示图:

     cocos10

 

            (2)胜利场景的实现

            其实胜利场景和失败场景很相似,只不过是把背景以及Logo换掉。以及新增一个LabelTTF的标签,用于展示你通关这个游戏场景所耗费的时间。但是困难来了,由于胜利场景是在另外一个胜利cpp文件里,而游戏场景则是在Game场景里,想要访问到Game里面的参数,又不能直接extern,因为跳转胜利场景时游戏场景会被销毁。在思考过后决定新建一个全局变量的文件用于存放“游戏时间”这个全局变量。

             全局变量的头函数

#ifndef __GlobalData__H__
#define __GlobalData__H__

#include<stdio.h>

extern double Time;

#endif

           然后在GameLayer处引用就可以了,不过要注意的是,每次引用都要把初始值赋予0

           当全局变量设好之后,我们就可以调用计时器来计时了

  

schedule(schedule_selector(GameLayer::addTime),0.1f);  //每0.1秒调用一次

void GameLayer::addTime(float dt) {

	Time=Time+0.1;                                     // 每次加0.1秒

}

          OK,之后剩下的就是简单的创建场景填充场景了,具体的代码可以下载我上一篇博客的源码参详~

          最后展示一下胜利场景:

          cocos

                     

                                                                                        

                                                                                           今天就到这里,谢谢大家~~

                                                                                                                   未完待续......

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lampard杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值