位置: 编程技术 - 正文

cocos2dx关卡选择界面设计(cocos2dx入门)

编辑:rootadmin

推荐整理分享cocos2dx关卡选择界面设计(cocos2dx入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2dx入门,cocos2djs,cocos2dx游戏,cocos2djs,cocos2d-x教程,cocos 2d x,cocos2dx官方教程,cocos2dx官方教程,内容如对您有帮助,希望把文章链接给更多的朋友!

重点内容 做游戏时候经常用到关卡选择,写了个关卡选择界面逻辑类,关卡解锁,关卡类型显示,打过的关卡星级评定,一共六大关,每个大关个小关,ui使用cocostudio编辑,代码如下: LevelSel.h文件 #ifndef _LEVELSEL_H

define _LEVELSEL_Hinclude “cocos2d.h”include “cocos-ext.h”include “global.h”cocos2dx关卡选择界面设计(cocos2dx入门)

using namespace cocos2d; using namespace cocos2d::extension; class LevelSel : public CCLayer { public: CREATE_FUNC(LevelSel); bool init(); void selevent(CCObject *pSender, TouchEventType type); void pageViewEvent(CCObject *pSender, PageViewEventType type); void update(float delta); void onEnter(); UIPageView* pageView; Layout* layout_sel; void refreshsel(int offset); void aaaaa(); ////////////////////////////////////////////////////////////////////////// int stars[]; int presel,cursel; int curlevel; };

endif

LevelSel.cpp文件

include “LevelSel.h”include “Modules/Archive.h”include “Scene/MapPrepareScene.h”include “Common/EnterStageDataExchange.h”include “PropLayer.h”

void LevelSel::refreshsel(int curoffset) { UIButton* Upgrade_bt; char str[]; for(int i=;i<=;i+=) { Upgrade_bt = (UIButton *)(layout_sel->getChildByTag(i)); Upgrade_bt->addTouchEventListener(this, toucheventselector(LevelSel::selevent)); int idx=i/-1; UIImageView* modeuw=(UIImageView*)layout_sel->getChildByTag(i+2); if(stars[idx+curoffset]>1) { //显示数字 Upgrade_bt->loadTextures(“LevelSel_8.png”,”LevelSel_.png”,”“,UI_TEX_TYPE_PLIST); Upgrade_bt = (UIButton *)(layout_sel->getChildByTag(i+9)); sprintf(str,”num_%d.png”,idx+1); Upgrade_bt->loadTextures(str,str,”“,UI_TEX_TYPE_PLIST); for(int j=0;j<6;++j) { layout_sel->getChildByTag(i+3+j)->setVisible(true); } for(int j=8;j>5+stars[idx+curoffset]-1;–j) { layout_sel->getChildByTag(i+j)->setVisible(false); } } else if(stars[idx+curoffset]==1) { //显示当前 Upgrade_bt->loadTextures(“LevelSel_.png”,”LevelSel_.png”,”“,UI_TEX_TYPE_PLIST); for(int j=0;j<3;++j) { layout_sel->getChildByTag(i+3+j)->setVisible(true); } for(int j=3;j<6;++j) { layout_sel->getChildByTag(i+3+j)->setVisible(false); } } else { //锁定 Upgrade_bt->loadTextures(“LevelSel_.png”,”LevelSel_.png”,”“,UI_TEX_TYPE_PLIST); for(int j=0;j<6;++j) { layout_sel->getChildByTag(i+3+j)->setVisible(false); } modeuw->setVisible(false); } if(stars[idx+curoffset]>=1) { //特殊模式 int levelId=curoffset+idx; int mode=(CDataSystem::GetLevelParanew(levelId,CGameDB::GetInstance()->GetTable(TABLE_ID_LEVEL_DATA)))->m_completeType; modeuw->setVisible(true); if(stars[idx+curoffset]==1) { sprintf(str,”LevelSel_1/level_mode_0_1.png”); modeuw->loadTexture(str); } else if(mode==GAME_MODE_NEARWEAPON)//近战模式 { sprintf(str,”LevelSel_1/level_mode_2_1.png”); modeuw->loadTexture(str); } else if(mode==GAME_MODE_REMOTEWEAPON)//远程模式 { sprintf(str,”LevelSel_1/level_mode_5_1.png”); modeuw->loadTexture(str); } else if(mode==GAME_MODE_SCATTER)//防御模式 { sprintf(str,”LevelSel_1/level_mode_3_1.png”); modeuw->loadTexture(str); } else if(mode==GAME_MODE_BALL)//铁球模式 { sprintf(str,”LevelSel_1/level_mode_4_1.png”); modeuw->loadTexture(str); } else if(mode==GAME_MODE_BOSS)//BOSS模式 { sprintf(str,”LevelSel_1/level_mode_1_1.png”); modeuw->loadTexture(str); } else { modeuw->setVisible(false); } } //背景图 sprintf(str,”LevelSel_1/level_bk_%d.png”,curoffset/+1); ((UIImageView*)layout_sel->getChildByTag(i+1))->loadTexture(str); } } bool LevelSel::init() { ////////////////////////////////////////////////////////////////////////// for(int i=0;i<;i++) { stars[i]=CArchive::GetInstance()->GetStageUnlock(i); if(stars[i]==1) curlevel=i; } if(!CGameDB::GetInstance()->GetTable(TABLE_ID_LEVEL_DATA)) CGameDB::GetInstance()->LoadTable(TABLE_ID_LEVEL_DATA, TABLE_TYPE_CSV); ////////////////////////////////////////////////////////////////////////// UILayer* baseUILayer=cocos2d::extension::UILayer::create(); Layout *widget = dynamic_cast

这是一个打酱油的Blog 递归获取子节点Node*HelloWorld::seekFromRootByName(Node*root,std::stringname){if(!root)returnnullptr;if(root-getName()==name)returnroot;constautoarrayNode=root-getChildren();for(autochild:arrayN

关于cocos3.3移植android后清空UserDefault.xml数据的问题 需要修改源码...cocos2d-x-3.3cocosbase下的CCUserDefault-android.cpp第行#defineXML_FILE_NAMEUserDefault.xml由于我们发现第行处_filePath=/data/data/getPackageNameJNI()/XML_FILE_

cocos2dx 两个重叠按钮点击响应关系 情况1:上层按钮setTouchEnabled(false),下层按钮setTouchEnabled(false);结论1:当然2个都不能点击情况2:上层按钮setTouchEnabled(false),下层按钮setTouchEnabled(true);

标签: cocos2dx入门

本文链接地址:https://www.jiuchutong.com/biancheng/368816.html 转载请保留说明!

上一篇:(1)cocos2d-x-2.2.4搭建windows开发环境

下一篇:这是一个打酱油的Blog(我是一个打酱油的怎样理解)

  • 个体户超过了核定征收额怎么交税
  • 小规模纳税人享受1%的税率
  • 个人出租住宅需要缴纳房产税吗
  • 银行应发贷款和实际收到的贷款为什么不一致
  • 异地预缴税款不交可以吗
  • 餐饮业增值税是多少
  • 建筑业预缴税款都要填哪些表
  • 税收的六大作用
  • 企业捐赠不动产 会计分录
  • 税务年检流程
  • 低价股权转让是利空还是利好
  • 月底结转都结转什么
  • 现汇账户和现钞账户可以转账吗
  • 会计差旅费属于什么会计科目
  • 广告服务差额征税
  • 房地产经常发生的法律问题
  • 旅行社确定收入毛利成本怎么确定?
  • 财务人员必备知识
  • 收到联营企业分派的现金股利为什么不计入利润总额
  • 车提折旧会计分录
  • 自己生产的水泥用于建造厂房
  • 劳务服务公司可以承包大型工程吗?
  • 公司账外废品收入怎么算
  • 苹果mac怎么复制文件到u盘 免费软件
  • 华为鸿蒙系统耗电量快吗
  • 年底公司抵税
  • 负债类科目的分类
  • 购买一台电脑会计分录
  • 政府补贴专项资金使用要求
  • 获取url的参数有哪些方法
  • 鸿蒙系统怎么安装电脑
  • 简单介绍下商务洽谈的五个步骤
  • 企业补缴个人所得税罚款
  • 短期投资需要结转吗
  • 事业单位会计准则是否废止
  • 房屋出租一定要签合同吗
  • 外币借款费用
  • 企业要缴哪些税种
  • 委托加工应税消费品以委托人为消费税的纳税义务人
  • 北极光的征兆
  • 出口货物不退税进项可以开具普通发票吗
  • 用chatgpt写insar地质灾害的论文,重复率只有1.8%,chatgpt4.0写论文不是梦
  • 物流发票的税率怎么算
  • dedecms手册
  • 企业发生销售退回时,不论销售退回的商品
  • 企业预付账款科目设置
  • 销售公司提成表模板
  • 销售成本包括销售人员工资吗
  • 企业所得税应按季预缴,年末汇算清缴
  • 用sql语句查找年龄大于20
  • 账簿包括哪些基本内容
  • 广告公司的广告制作费计入什么科目
  • 新政府会计制度下,属于资产类科目的是
  • 进口货物如何入账
  • 采购未到票如何入账
  • 出租使用权什么意思
  • 租地青苗补偿问题
  • 用友作废的凭证怎么恢复
  • 发票遗失重开需要收费吗?
  • 新公司内账怎么做
  • 企业净资产怎么填
  • 盗版win10系统
  • win10打开软件提示允许此应用对你设备进行更改
  • macbook桌面2
  • srvc32.exe - srvc32是什么进程
  • netsurf.exe - netsurf是什么进程 有什么用
  • linux 互传文件
  • win7右下角小喇叭
  • ExtJS Ext.MessageBox.alert()弹出对话框详解
  • easyui demo
  • 安卓机怎么直播
  • linux重定位命令
  • python 获取网页上文件地址
  • 高通芯片基于arm吗
  • js数组的操作指令有哪些
  • libgdx robovm admob IOS SDK的绑定
  • javascript编写程序
  • js数组排序方法sort
  • 陕西国税电子税务局app
  • 简易计税项目能即开简易税率发票又开适用税率发票吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设