1. #ifndef __GAMEMAIN_SCENE_H__
  2. #define __GAMEMAIN_SCENE_H__
  3.  
  4. #include "cocos2d.h"
  5.  
  6. #include "Box2D/Box2D.h"
  7.  
  8. #include "SimpleAudioEngine.h"
  9.  
  10. #include "CocoHead.h"
  11. #include "GameScene.h"
  12.  
  13. class CCLayer;
  14.  
  15. class CGameMainScene : public CGameScene
  16. {
  17. public:
  18. enum ResourceID
  19. {
  20. _ResourceId = ,
  21. };
  22.  
  23. enum MainSceneId
  24. {
  25. _IDD_MainSceneDialog = ,
  26.  
  27. _IDC_MainSceneBg = ,
  28. };
  29. public:
  30. CGameMainScene();
  31. virtual ~CGameMainScene();
  32.  
  33. CREATE_SCENE(CGameMainScene);
  34.  
  35. // Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
  36. virtual bool init();
  37. virtual bool initRes();
  38.  
  39. // a selector callback
  40. void menuCloseCallback(CCObject* pSender);
  41.  
  42. void menuMsgCallback(CCObject* pSender);
  43.  
  44. protected:
  45. virtual void update(float dt);
  46.  
  47. virtual void onEnter();
  48. virtual void onExit();
  49.  
  50. private:
  51. CCLayer* m_pLayerBg;
  52. CCLayer* m_pLayerInfo;
  53.  
  54. };
  55.  
  56. #endif // __HELLOWORLD_SCENE_H__
  1. #include "GameMainScene.h"
  2. #include "WidgetMgr.h"
  3. #include "Config.h"
  4. #include "GameLogic.h"
  5. #include "AudioMgr.h"
  6. #include "MenuDialog.h"
  7. #include "AboutDialog.h"
  8. #include "SectsInfomation.h"
  9.  
  10. #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
  11. #include "GameCenter.h"
  12. #endif // (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
  13.  
  14. CGameMainScene::CGameMainScene()
  15. {
  16. m_pLayerBg = NULL;
  17. m_pLayerInfo = NULL;
  18. }
  19.  
  20. CGameMainScene::~CGameMainScene()
  21. {
  22.  
  23. }
  24.  
  25. // on "init" you need to initialize your instance
  26. bool CGameMainScene::init()
  27. {
  28. bool bRet = false;
  29. do
  30. {
  31. //////////////////////////////////////////////////////////////////////////
  32. // super init first
  33. //////////////////////////////////////////////////////////////////////////
  34.  
  35. CC_BREAK_IF(! CCLayer::init());
  36.  
  37. //////////////////////////////////////////////////////////////////////////
  38. // add your codes below...
  39. //////////////////////////////////////////////////////////////////////////
  40.  
  41. m_pLayerBg = CCLayer::create();
  42. m_pLayerInfo = CCLayer::create();
  43.  
  44. this->addChild(m_pLayerBg, );
  45. this->addChild(m_pLayerInfo, );
  46.  
  47. bRet = true;
  48. } while ();
  49.  
  50. return bRet;
  51. }
  52.  
  53. void CGameMainScene::update( float dt )
  54. {
  55.  
  56. }
  57.  
  58. void CGameMainScene::menuMsgCallback( CCObject* pSender )
  59. {
  60.  
  61. }
  62.  
  63. void CGameMainScene::onEnter()
  64. {
  65. CGameScene::onEnter();
  66.  
  67. this->initRes();
  68. }
  69.  
  70. bool CGameMainScene::initRes()
  71. {
  72. bool bRet = false;
  73.  
  74. CCSprite* pBg = CCSprite::create(CConfig::getInstance()->getImageInfoById()->strFile.c_str());
  75. pBg->setAnchorPoint(ccp(, ));
  76. m_pLayerBg->addChild(pBg, , );
  77.  
  78. CREATE_DIALOG(CMenuDialog, m_pLayerInfo, );
  79. CREATE_DIALOG(CAboutDialog, m_pLayerInfo, );
  80. //CREATE_DIALOG(CSectsInfomation, m_pLayerInfo, 0);
  81.  
  82. #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
  83. GameCenter::getInstance()->authenticateLocalUser();
  84. #endif //#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
  85.  
  86. CGameLogic::getInstance()->readConfiguration();
  87.  
  88. if (CGameLogic::getInstance()->getConfiguration()->bBackgroundMusic)
  89. {
  90. CAudioMgr::getInstance()->player("backgroundmusic_01", true);
  91. }
  92.  
  93. CGameLogic::getInstance()->setLevel(_Level_xmb);
  94.  
  95. bRet = true;
  96. return bRet;
  97. }
  98.  
  99. void CGameMainScene::onExit()
  100. {
  101. CGameScene::onExit();
  102.  
  103. this->removeFromParentAndCleanup(true);
  104. CWidgetMgr::getInstance()->clearAllWnd();
  105.  
  106. //CWidgetMgr::destroy();
  107. }

CGameMainScene类的更多相关文章

  1. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  2. C++ 可配置的类工厂

    项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...

  3. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  4. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  5. ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core

    背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...

  6. .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类

    .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类 0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除 ...

  7. Java基础Map接口+Collections工具类

    1.Map中我们主要讲两个接口 HashMap  与   LinkedHashMap (1)其中LinkedHashMap是有序的  怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...

  8. PHP-解析验证码类--学习笔记

    1.开始 在 网上看到使用PHP写的ValidateCode生成验证码码类,感觉不错,特拿来分析学习一下. 2.类图 3.验证码类部分代码 3.1  定义变量 //随机因子 private $char ...

  9. C# 多种方式发送邮件(附帮助类)

    因项目业务需要,需要做一个发送邮件功能,查了下资料,整了整,汇总如下,亲测可用- QQ邮箱发送邮件 #region 发送邮箱 try { MailMessage mail = new MailMess ...

随机推荐

  1. Python学习 —— 阶段综合练习二

    综合之前的类的学习,做以下实例练习:(建议先不要看代码,自己先试着写:代码仅供参考,有多种实现方法) 1. Triangle  & Equilateral 1). 创建class Triang ...

  2. vmwareubuntu18.04网络配置

    用vm安装ubuntu的时候要如果使用的是net模式,要确保vm的net服务和dhcp服务开启了,右键我的电脑-管理-服务和应用程序-服务找到对应的vm net服务和dhcp服务启动.

  3. Linux下Anaconda的安装使用与卸载及问题解决

    1. 安装 到官网下载对应的版本文件:Download Anaconda Now! 下载完之后,在终端输入: bash 下载好的文件 整个过程点几下回车就好了.但是到最后一步,会提示是否把anacon ...

  4. RecyclerView.ItemDecoration 间隔线

    内容已更新到:https://www.cnblogs.com/baiqiantao/p/19762fb101659e8f4c1cea53e7acb446.html 目录一个通用分割线ItemDecor ...

  5. 10分钟,利用canvas画一个小的loading界面

    首先利用定义下canvas得样式 <canvas width="1024" height="720" id="canvas" styl ...

  6. .NET破解之爱奇迪(三)

    本教程只能用于学习研究,不可进行任何商业用途.如有使用,请购买正版,尊重他人劳动成果和知识产权! .NET破解之爱奇迪(一) .NET破解之爱奇迪(二) 一打开软件,就看到各种注册和未注册提示信息,就 ...

  7. .NET破解之爱奇迪(一)

    今天无意中看到了wuhuacong(伍华聪)的专栏,界面写得还是很炫的感觉,于是在广州爱奇迪官网下载一个来试一下——客户关系管理系统.下面是成果: 00.总体把握 里面有Logon窗口(为什么不是Lo ...

  8. 稍复杂的ionic例子:显示一个列表,并且允许点击进入列表项

    这个例子,按照MVC的方式进行了分层,下面是代码: demo3.htm <!DOCTYPE html> <html ng-app="app"> <he ...

  9. ajax交互Struts2的action(1)

    1.客户端网页代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://w ...

  10. 排序算法及其java实现

    各种排序算法:冒择路(入)兮(稀)快归堆,桶式排序,基数排序 冒泡排序,选择排序,插入排序,稀尔排序,快速排序,归并排序,堆排序,桶式排序,基数排序 一.冒泡排序(BubbleSort) 1. 基本思 ...