cocos2d-x的初步学习十四之坦克大战一
来源:互联网 发布:namecheap域名转入 编辑:程序博客网 时间:2024/05/21 12:08
以后的篇幅中,我们来实现2dx版的坦克大战。。好了,我们一步步来实现,OK,我们先实现一个开始游戏这样的一个界面,然后切换到我们的游戏场景,下面直接上代码:
CCSprite *logoSprite=CCSprite::create("BattleCity.png"); logoSprite->setPosition(ccp(wSize.width/2, wSize.height/2+100)); logoSprite->setScale(2.0f); this->addChild(logoSprite, 1); //创建菜单 CCMenuItemFont *startItem=CCMenuItemFont::create("开始游戏", this,menu_selector(HelloWorld::startGame)); startItem->setPosition(ccp(wSize.width/2, wSize.height/2-100)); startItem->setFontSizeObj(55); startItem->setFontNameObj("Georgia-Bold"); CCMenu *pMenu = CCMenu::create(startItem, NULL); pMenu->setPosition(CCPointZero); this->addChild(pMenu, 1);
OK,就这么简单,看下效果图:
~~~~~OK,下面我们新建另一个场景类,叫GameScene,然后我们点击开始菜单,进行场景切换:
void HelloWorld::startGame(){ //场景转换 CCScene *pScene = GameLayer::scene(); //跳跃式动画 CCDirector::sharedDirector()->replaceScene(CCTransitionJumpZoom::create(5.0f, pScene)); //其他的一些特效 // CCTransitionFade::transitionWithDuration(t, s);//淡出淡入,原场景淡出,新场景淡入// CCTransitionFade::transitionWithDuration(t, s, ccWHITE);//如果上一个的函数,带3个参数,则第三个参数就是淡出淡入的颜色// CCTransitionFlipX::transitionWithDuration(t, s, kOrientationLeftOver);//x轴左翻// CCTransitionFlipX::transitionWithDuration(t, s, kOrientationRightOver);//x轴右翻// CCTransitionFlipY::transitionWithDuration(t, s, kOrientationUpOver);//y轴上翻// CCTransitionFlipY::transitionWithDuration(t, s, kOrientationDownOver);//y轴下翻// CCTransitionFlipAngular::transitionWithDuration(t, s, kOrientationLeftOver);//有角度转的左翻// CCTransitionFlipAngular::transitionWithDuration(t, s, kOrientationRightOver);//有角度转的右翻// CCTransitionZoomFlipX::transitionWithDuration(t, s, kOrientationLeftOver);//带缩放效果x轴左翻// CCTransitionZoomFlipX::transitionWithDuration(t, s, kOrientationRightOver);//带缩放效果x轴右翻// CCTransitionZoomFlipY::transitionWithDuration(t, s, kOrientationUpOver);//带缩放效果y轴上翻// CCTransitionZoomFlipY::transitionWithDuration(t, s, kOrientationDownOver);//带缩放效果y轴下翻// CCTransitionZoomFlipAngular::transitionWithDuration(t, s, kOrientationLeftOver);//带缩放效果/有角度转的左翻// CCTransitionZoomFlipAngular::transitionWithDuration(t, s, kOrientationRightOver);//带缩放效果有角度转的右翻// CCTransitionShrinkGrow::transitionWithDuration(t, s);//交错换// CCTransitionRotoZoom::transitionWithDuration(t, s);//转角换// CCTransitionMoveInL::transitionWithDuration(t, s);//新场景从左移入覆盖// CCTransitionMoveInR::transitionWithDuration(t, s);//新场景从右移入覆盖// CCTransitionMoveInT::transitionWithDuration(t, s);//新场景从上移入覆盖// CCTransitionMoveInB::transitionWithDuration(t, s);//新场景从下移入覆盖// CCTransitionSlideInL::transitionWithDuration(t, s);//场景从左移入推出原场景// CCTransitionSlideInR::transitionWithDuration(t, s);//场景从右移入推出原场景// CCTransitionSlideInT::transitionWithDuration(t, s);//场景从上移入推出原场景// CCTransitionSlideInB::transitionWithDuration(t, s);//场景从下移入推出原场景// 以下三个需要检测opengl版本是否支持CCConfiguration::sharedConfiguration()->getGlesVersion() <= GLES_VER_1_0如果为真则为不支持// CCTransitionCrossFade::transitionWithDuration(t,s);//淡出淡入交叉,同时进行// CCTransitionRadialCCW::transitionWithDuration(t,s);//顺时针切入// CCTransitionRadialCW::transitionWithDuration(t,s);//逆时针切入// 以下两个需要先设置摄像机,使用CCDirector::sharedDirector()->setDepthTest(true);// CCTransitionPageTurn::transitionWithDuration(t, s, false);//翻页,前翻// CCTransitionPageTurn::transitionWithDuration(t, s, true);//翻页,后翻// CCTransitionFadeTR::transitionWithDuration(t, s);//向右上波浪// CCTransitionFadeBL::transitionWithDuration(t, s);//向左下波浪// CCTransitionFadeUp::transitionWithDuration(t, s);//向上百叶窗// CCTransitionFadeDown::transitionWithDuration(t, s);//向下百叶窗// CCTransitionTurnOffTiles::transitionWithDuration(t, s);//随机小方块// CCTransitionSplitRows::transitionWithDuration(t, s);//按行切// CCTransitionSplitCols::transitionWithDuration(t, s);//按列切 }
OK,切换到另一个场景
~~~~
- cocos2d-x的初步学习十四之坦克大战一
- cocos2d-x的初步学习十五之坦克大战二
- cocos2d-x的初步学习十六之坦克大战三
- cocos2d-x的初步学习十七之坦克大战四
- cocos2d-x的初步学习十八之坦克大战五
- cocos2d-x的初步学习十九之坦克大战六
- cocos2d-x的初步学习二十之坦克大战七
- cocos2d-x游戏开发系列教程-坦克大战游戏之坦克的显示
- cocos2d-x游戏开发系列教程-坦克大战游戏之敌方坦克AI的编写
- cocos2d-x游戏开发系列教程-坦克大战游戏之所有坦克之间的碰撞检测
- cocos2d-x的初步学习之爱消除一
- U3D学习日记一:坦克大战,初步建立场景
- cocos2d-x游戏开发系列教程-坦克大战游戏之坦克和地图碰撞的检测上
- cocos2d-x游戏开发系列教程-坦克大战游戏之坦克和地图碰撞的检测下
- cocos2d-x游戏开发系列教程-坦克大战游戏之虚拟手柄的显示
- cocos2d-x游戏开发系列教程-坦克大战游戏之子弹的碰撞检测处理
- cocos2d-x游戏开发系列教程-坦克大战游戏之虚拟手柄的显示
- cocos2d-x的初步学习一
- 回调函数
- Oracle SQL的硬解析和软解析
- oracle学习第一天
- 百度地图Polyline画直线BUG
- 用插件来实现实体的CRUD
- cocos2d-x的初步学习十四之坦克大战一
- 修改进程权限(转载)
- fonts
- 【数据结构】双向循环链表实现
- oracle卸载
- GO系列之MD5加密
- iBatis 到 MyBatis区别
- explicit构造函数
- 设计模式学习--命令模式(Command Pattern)