位置: 编程技术 - 正文

cocos2d-x游戏实例(24)-简易动作游戏(2)(cocos2dx游戏案例)

编辑:rootadmin

推荐整理分享cocos2d-x游戏实例(24)-简易动作游戏(2)(cocos2dx游戏案例),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2d游戏源码,cocos2dx游戏有哪些,cocos2dx小游戏,cocos2d rpg,cocos2d rpg,cocos2dx游戏案例,cocos2dx游戏开发教程,cocos2dx小游戏,内容如对您有帮助,希望把文章链接给更多的朋友!

小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址 layer = map->layerNamed("logic");//获得相应的地图层

int tilegid = layer->tileGIDAt(playerindex);//获得GID

CCMutableDictionary<string,CCString *> *tiledic = map->propertiesForGID(tilegid);//获得属性键&#;对

CCString *mvalue = tiledic->objectForKey("collion");//获得属性colloion

int mv = mvalue->toInt();//转为整型数&#;

整体的判断水平碰撞函数playermaphcollision如下:

cocos2d-x游戏实例(24)-简易动作游戏(2)(cocos2dx游戏案例)

首先是获得主角的站立位置,主角宽高,然后获得地图对象,之后便是一个for循环,这个for循环是从主角的脚底遍历到头顶的纵坐标&#;,然后就是对应纵坐标&#;和横坐标&#;,除以图素的宽高,获得对应地图的索引坐标,由于我们要分别检测左侧和右侧的碰撞,所以相应的横坐标也就不同

获得左侧横坐标:indexx = (playerpoint.x - palyersize.width / 2) / map->getTileSize().width;

获得右侧横坐标:indexx = (playerpoint.x &#; palyersize.width / 2 - 1) / map->getTileSize().width;

因为锚点在中心,所以左右侧分别就是减去和加上宽度的一半,然后不同之处就是,处理右侧时候要减一,因为我们左侧的碰撞是获得边界左侧的,而右侧的碰撞是获得边界右侧的。当我们的坐标属于以下范围时他属于这个图素块的索引index:(index - 1)* 图素宽 <= x < index * 图素宽,也就是我们的坐标如果等于右侧边界&#;,那么他就会被算在下一个索引&#;里,所以在处理右侧时为了防止等于边界&#;时被误算入下一块图素块时出现“卡”在地图上的情况,在处理右侧碰撞时减一。

下面就是检测如果碰上碰撞块时把水平移动的标志设置为0,然后校正位置,把主角移动到不碰撞的位置上,并且重新设置主角位置;

另外,修正上一篇中的一个问题,在获得主角在屏幕中位置时要获得主角的绝对坐标,要加上地图的坐标,因为我们设置主角的位置时,是设置在地图上的,所以主角的位置是相对与地图坐标的,代码如下:

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

下一篇继续简易动作游戏

cocos2d-x游戏实例()-简易动作游戏(3) 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

cocos2d-x游戏实例()-简易动作游戏(4) 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

cocos2d-x游戏实例()-简易动作游戏(5) 小满(billman)个人原创,欢迎转载,转载请注明地址,小满(billman)的专栏地址

标签: cocos2dx游戏案例

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

上一篇:cocos2d-x游戏实例(23)-简易动作游戏(1)(cocos做游戏)

下一篇:cocos2d-x游戏实例(25)-简易动作游戏(3)(cocos2dx开发的游戏)

  • 增值税发票网上勾选平台
  • 平行结转分步法各步骤的费用
  • 出租车发票上没有二维码
  • 车船税代扣代缴手续费
  • 购货发票属于外来原始凭证吗为什么
  • 外购货物应抵扣的进项税额税率
  • 陈列费税率多少
  • 先取得发票后付款说明
  • 利息及债券溢价摊销表
  • 接受捐赠的固定资产进项税额可以抵扣吗
  • 弃置费用预计负债减少超过固定资产账面价值
  • 商品过期可以向商家索要赔偿吗
  • 一般纳税人申请流程
  • 劳务派遣差额征税会计分录
  • 营改增后哪些费用可以抵扣
  • 应收票据借方表示负债吗
  • 会计学堂值得购买吗
  • 固定资产转固流程图
  • 收到商业承兑汇票怎么兑现
  • 不动产取得以什么为要件
  • 2019年一般纳税人附加税减免政策
  • 财政性资金是不含税的吗
  • 专利权转销处理方案
  • linux耳机插拔检测
  • 销项税多了冲销部分的怎么做账
  • 设计版权费用
  • 搜索框无法搜索内容
  • win10双系统删除linux
  • "php"
  • thinkphp批量修改
  • php pdo oracle
  • 变电所的相关费用是什么
  • 如何进行iframe框架切换
  • 波尔图葡萄牙语
  • nlp baseline
  • python的复制命令
  • stm32f103教程
  • cnn三层
  • pytorch训练函数
  • php搜索代码
  • 6.824 Lab 1: A simple web proxy
  • 手工明细账簿怎么登账
  • 个人向公司借款协议书范本
  • php注册系统
  • 织梦怎么建站
  • 将织梦dedecms转换到wordpress
  • 铝合金门窗行业利润率
  • 设计协会会长
  • 进项税和销项税月末怎么结转
  • 成品油发票如何下载库存
  • 销售合同的印花税由谁交
  • sql server发布
  • windows7的内存基本要求
  • ubuntu dde
  • 苹果mac怎么清理缓存
  • igs文件是什么文件
  • win10预览版绿屏重启解决
  • u 盘装wⅰn10系统
  • 要使用windows
  • win10 mobile 1709
  • 电脑ie8浏览器
  • windows10离线地图
  • win10右键图片
  • cocos2dx node
  • Android OpenGL ES(二)----平滑着色
  • perl脚本输出变量
  • Knockout visible绑定使用方法
  • vue只适合做单页项目吗
  • 百度贴吧上传图片大小
  • python中的__dict__
  • 基于javascript的毕业设计
  • 基于网络创新形成的大数据的最突出特征是什么?( )
  • uleb128、sleb128和uleb128p1编码格式介绍
  • js左值
  • node.js怎么用
  • python如何获取系统绝对路径
  • js 比较
  • 即征即退的留抵税额是否可以抵一般计税的税额
  • 企业所得税涉税申报情况进行核查
  • 18个税种征税范围
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设