Cocos2d-x学习笔记三之飞机游戏详解之GameOver类的讲解
2013-09-16 14:22
399 查看
游戏下载链接:http://download.csdn.net/detail/a402813378/6275427
这个Demo的最后一篇,是制作GameOver窗口,这个窗口是游戏结束的窗口,讲完这篇这个Demo就已经结束了。
首先我们来看GameOver类的组成,和前面的一样由一个初始化函数和一个返回CCScene对象的函数组成,再加上回调函数添加一个文本来响应重玩功能,说完了,现在看类声明好了。
#ifndef __GAME_OVER_SCENE_H__ #define __GAME_OVER_SCENE_H__ #include "cocos2d.h" using namespace cocos2d; class GameOverScene : public CCLayer { public: bool init(); static CCScene* scene(); CREATE_FUNC(GameOverScene); private: void replayMenuCallback(CCObject *pSender); }; #endif
然后cpp文件这个类和Menu类基本上一样。添加一个文本GameOver(不响应消息),和一个replay文本(返回游戏),OK,看代码。
#include"GameOverScene.h" #include"XSystem.h" #include"GameManager.h" #include"GlobalParam.h" using namespace cocos2d; CCScene* GameOverScene::scene() { CCScene* scene = NULL; do { scene = CCScene::create(); CC_BREAK_IF(! scene); GameOverScene* layer = GameOverScene::create(); CC_BREAK_IF(! layer); scene->addChild(layer); } while (0); return scene; } bool GameOverScene::init() { bool bRet =false ; do { CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCLabelTTF *mGameOverLab = CCLabelTTF::create("GameOver", MENU_FONT_NAME,35); mGameOverLab->setPosition(XSystem::xccp(visibleSize.width/2,visibleSize.height *2/3)); this->addChild(mGameOverLab); CCLabelTTF* rePlayerLab = CCLabelTTF::create("Replay", MENU_FONT_NAME, 35); CCMenuItemLabel * replayItemLab = CCMenuItemLabel::create( rePlayerLab, this, menu_selector(GameOverScene::replayMenuCallback) ); CCMenu *menu =CCMenu::create(replayItemLab,NULL); menu->setPosition(XSystem::xccp(visibleSize.width / 2, visibleSize.height / 2)); menu->alignItemsVertically(); this->addChild(menu); bRet = true; } while (0); return bRet; } void GameOverScene::replayMenuCallback( CCObject* pSender ) { GameManager::sharedGameManager()->runSceneWithId(GameManager::SCENE_ID_GAME); }
相关文章推荐
- Cocos2d-x学习笔记三之飞机游戏详解之GameManager和GameMenu类的讲解。
- Cocos2d-x学习笔记三之飞机游戏详解之GameScene类的讲解
- Cocos2d-x学习笔记三之飞机游戏详解
- Cocos2d-x 3.x学习笔记:猩先生带你打飞机(二)素材准备与游戏菜单场景
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》 第三步---主角开跑&同时带着刚体
- 【Cocos2d-X开发学习笔记】第28期:游戏中音乐和音效的使用
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第二步---编辑器(1)--触摸添加点
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》第一步--- 开始界面
- 【Cocos2d-HTML5游戏引擎学习笔记(12)】Schedule定时器
- 【Cocos2d-html5游戏引擎学习笔记(12)】Schedule定时器
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第十二课:Cocos2D-X内存管理1-3
- cocos2d-x学习笔记-CCMenu和CCMenuItem详解
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》第四步--地图循环&主角添加动作
- 【Cocos2d-X开发学习笔记】第25期:游戏背景之瓦片地图集类(CCTMXTiledMap)的使用
- 【Cocos2d-x3.0学习笔记 06】游戏时间到LitterRunner01
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第三课:认识Cocos2D-X引擎
- 【Cocos2d-X开发学习笔记】第12期:动作类CCAction的详细讲解
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第六步---炮台&点击炮台添加英雄&英雄升级
- 【Cocos2d-X开发学习笔记】第27期:游戏背景之贴图地图类(CCTileMapAtlas)的使用
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第八部---怪物出场