cocos2d-JS跑酷游戏实战笔记2

cocos2d-JS跑酷游戏实战笔记2
地图加载出错,原因是获取人物的坐标,转化成地图坐标的行和列后,获取地图的GIDAT时横纵坐标时弄反了

获取人物的横坐标var x=hero.getPositionX()-runmapp.getPositionX();

获取人物的纵坐标var y=hero.getPositionY();

判断是否在地图的块上:if (y>=32){

坐标转化成地图的行和列

var nowrow=parseInt(18-y/32)+1;

var nowcol=parseInt(x/32);

获取地图的gid,为0的时候表示没有块,大于0表示底下有块

var gid=runmapp.getLayer("layer1").getTileGIDAt(nowcol,nowrow);

根据块的有无,进行碰撞检测,特别需要注意的是碰撞检测的时候,很容易出错,有时候坐标的不精准特别坑人啊,另外需要注意的是JS中,没有特定的数据类型,就像上面的坐标转换的时候,不加强制转换,得到坐标有浮点型的等等,尤其注意函数的逻辑!!!!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值