位置: 编程技术 - 正文

cocos2d-x初探学习笔记(28)--CCTMXTiledMap(cocos2d-x教程)

编辑:rootadmin

推荐整理分享cocos2d-x初探学习笔记(28)--CCTMXTiledMap(cocos2d-x教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2dx怎么用啊,cocos2dx入门,cocos2d-x教程,cocos2dx官方教程,cocos2dx4.0入门,cocos2dx4.0入门,cocos2dx入门,cocos2dx4.0入门,内容如对您有帮助,希望把文章链接给更多的朋友!

小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址 *map = CCTMXTiledMap::tiledMapWithTMXFile("iso-test-zorder.tmx");

很简单,参数就是通过Tiles工具生成的.tmx文件(这个工具及其用法请看之前的瓦片地图集那一节,这里就不再赘述了)。如果初始化了一个地图,我们就可以通过addChild(map, 0, kTagTileMap)把它加入到我们的层次和场景中,然后要在该场景中获得这个地图实例,我们可以通过CCTMXTiledMap* map = (CCTMXTiledMap*) getChildByTag(kTagTileMap)来获得。

CCTMXTiledMap中的每一个tile都是CCSprite类型的,但是这个CCSprite并不是一直存在,而是当我们的程序中需要控制一个图素时(更改图素等),我们通过以下这个语句获得图素的CCSprite:

CCSprite *newadd = layer->tileAt(aimmapindex);

参数就是图素的横纵坐标索引&#;,获得这个CCSprite后,我们就可以控制这个CCSprie旋转,缩放,或者是给他挂上各种Action(通过runAction)

我们可以通过map->getMapSize().width和map->getMapSize().height获得地图横纵的图素个数。

我们可以通过map->getTileSize().width和map->getTileSize().height获得地图图素的宽高。

cocos2d-x初探学习笔记(28)--CCTMXTiledMap(cocos2d-x教程)

我们可以通过map->getContentSize().width和map->getContentSize().height获得整体地图的宽高。但是这个有个问题,就是当我们进行整个的地图缩放的时候,这个宽高&#;不会变化,我们必须通过map->getScale()获得缩放参数并把它乘以宽高及获得真实宽高。

关于地图的gid,我对gid的理解就是每个图素的索引,也就是说改变这个位置的gid&#;就改变了这个位置的图素图片,我们可以通过layer->tileGIDAt(ccp(mapindex.x,mapindex.y));来获得在某个位置的地图gid。并且可以通过layer->setTileGID(4,aimmapindex);设置某个位置的gid&#;,其中第一个参数为要设置的gid,第二个参数是本位置的宽高索引。

Gid还有个用途就是获得地图的属性&#;,这个属性&#;是通过Tiles工具来设置,用法如下:

CCMutableDictionary<string,CCString *> *tiledic = map->propertiesForGID(tilegid);

CCString *mvalue = tiledic->objectForKey("conflict");

int mv = mvalue->toInt();

获得的是个键&#;对,然后把它转变为我们需要的类型。

如有错误之处,希望大家多多指正

cocos2d-x游戏实例()-实时拖动主角移动 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

cocos2d-x游戏实例()-简易摇杆控制主角 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

cocos2d-x游戏实例()-纵版射击游戏(1) 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

标签: cocos2d-x教程

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

上一篇:cocos2d-x游戏实例(10)-塔防游戏(修改地图图素,地图整体缩放)(cocos2d游戏源码)

下一篇:cocos2d-x游戏实例(12)-实时拖动主角移动(cocos2d rpg)

  • 小规模纳税人升级一般纳税人流程
  • 收到原材料发票的会计分录
  • 带薪年假是入职就有还是要等一年以后
  • 税控维护费抵减增值税报表怎么填
  • 合并后少数股东权益的处理
  • 个人工资薪金所得税怎么查
  • 汇票和支票的区别是什么
  • 供货方提供安装材料
  • 公司收到转账支票怎么盖章
  • 企业促销应该采用什么方法
  • 事业单位收到借款分录
  • 存货质押贷款风险
  • 现金管理规定有哪些主要内容
  • 结算纪律与法律责任表格
  • 境外公司付款给国内公司人民币
  • 超出发票使用范围
  • 协议报价税率与开出的发票不一致怎么办?
  • 小规模企业核定征收最新政策
  • 电子发票真伪查询
  • 一般纳税人既有批发零售又有不动产租赁
  • 公司购买的汽车可以一次性扣除吗
  • 进口料件和出口成品的关系
  • 施工企业代甲方购材料的账务处理?
  • 计提的存货跌价准备
  • 电梯维保公司缴税标准
  • 公司购买预付卡送礼怎么入账
  • 固定资产未提完折旧停止经营怎么处理
  • 个人销售废旧物资如何开票
  • framework怎么用
  • 如何配置apache
  • 控制系统动力学
  • 以我为主题画一幅画
  • PHP面向对象程序设计
  • 环境检测费计入什么科目
  • 财务章和公章下面数字一样吗
  • 研发费用加计扣除的条件
  • 营业收入为什么不包括营业外收入
  • 年终企业所得税怎么结转
  • mysql无法连接到服务器
  • 向投资者分配现金股利为什么会导致所有者权益减少?
  • 捐赠支出怎么抵税
  • 两者有什么区别用英语怎么说
  • 本年利润亏损还需要交所得税吗
  • 现金流量表为负数的几种原因
  • 专职独立研发企业是指
  • 项目费用有哪些
  • 存货呆滞的原因及处理表格
  • 权益性无形资产包括哪些?
  • 前程无忧是怎么收费的
  • 企业营业利润率怎么算
  • 公司筹建期间允许投标吗
  • 苗木免税发票可以开专票吗
  • 转账到银行卡是从哪转的
  • 在docker中使用service命令
  • mysql修改表结构的命令
  • sql server创建备份
  • MySQL5.7 windows二进制安装教程
  • 储存扩展容量
  • mysql密码总是输入错误
  • 捷波mig41tm主板
  • 硬盘安装操作系统出现,两个操作系统怎么选择
  • xp系统盘空间不足怎么办
  • linux 修复系统
  • windows8怎么隐藏任务栏
  • .msc是什么文件
  • 批处理/l
  • html中href,src区别
  • perl变量后拼接字符串
  • js时间计算相减
  • 批处理文件自动登录远程桌面
  • javascript table
  • java scripts
  • js辅助器下载
  • shell 单引号中引用变量
  • 如何用python画花瓣
  • android基础入门
  • 详解HTTPS 的原理和 NodeJS 的实现
  • jquery有哪些
  • 广东省地方税务局
  • 宁夏到新疆多少公里?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设