位置: 编程技术 - 正文

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开发的游戏)

  • 金税三期的内容是什么
  • 个人所得税申报操作流程
  • 国债 企业债
  • 股权分配利润应该怎么做账
  • 商品进销差价在贷方代表什么
  • 企业所得税申报时间
  • 微信支付过路费怎么开电子发票
  • 资质招投标
  • 固定资产改良支出摊销从何时算起
  • 资本公积科目余额能出现小数吗
  • 现汇账户和现钞账户可以转账吗
  • 收到借款利息怎么做会计分录
  • 购车税务发票
  • 查土地补贴到啥单位查明
  • 出口用的增值税税率
  • 建筑行业劳务费开发票可以开工程款吗?
  • 为什么报税资料老是显示有
  • 广告制作费属于现代服务吗
  • 哪些金融资产不计提减值
  • 高新企业产品开发的折旧费用可以税前扣除吗?
  • 城镇土地使用税的计税依据
  • 企业空气检测费应该计入什么会计科目核算?
  • 外币账户和外汇账户一样吗?
  • 其他权益工具投资公允价值变动怎么计算
  • 政府收储土地补偿款账务处理
  • 回来报销差旅费的会计分录怎么写
  • PHP+Mysql+jQuery查询和列表框选择操作实例讲解
  • 决算报表是财务报表吗
  • 对公账户代扣
  • 电脑卡住了按什么键回到桌面
  • 计算企业应纳税所得额时,可以扣除的税种
  • 股权收购账务处理方法
  • 小规模纳税人查询
  • 补缴的土地出让金需要计提吗
  • 在申报季度企业所得税时,残疾人工资可以加计扣除吗
  • wordpress自定义api
  • 四川黄龙风景名胜区停车收费标准
  • phple
  • etc发票计算抵扣
  • tokenall
  • 2021高频前端面试题汇总
  • 办完外经证怎么交税
  • php和mysql的软件怎么部署
  • 年终奖要计入工资吗
  • 金税四期有很多不实的传言
  • 开了红字发票申请还要做进项税转出吗?
  • 从增值税抵扣进什么科目
  • 银行结息需要开发票吗
  • 挂靠企业电费如何处理?
  • 租入固定资产改良支出属于收益性支出吗
  • 印花税需要计提税金及附加吗
  • 明细账怎么订起来
  • sqlserver锁机制
  • 一个 sql 查询很慢,从哪些地方进行优化?
  • 开启win7
  • 利用()可以对系统进行全面的设置
  • centos7.0网络配置
  • linux CentOS/redhat 6.5 LVM分区使用详解
  • win10系统如何快速回到桌面
  • linux中vi命令详解
  • win7系统无法开机解决方法
  • WIN7如何关闭自动关机
  • windows7如何启动任务管理器
  • linux如何关闭ipv6防火墙
  • win10未检测到任何网络硬件
  • win10天气系统怎么弄掉
  • unity协程yield
  • linux用户配置文件是什么
  • perl语言基本命令
  • Unity符国新:3D技术将渗透到生活的各个方面
  • js区分浏览器页面大小
  • unity3d如何导入图片
  • Metaio in Unity3d 教学--- 三. 使用ID Marker作为扫描目标
  • jquery 模态窗口
  • 江西省联考成绩查询系统入口官网
  • 每月个人所得税申报截止时间是几号
  • 美国海关税收起征点
  • 广州国税地税上班时间
  • 国税开票系统怎么增行
  • 发票开具显示获取纳税人基础信息失败,请退出?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设