首页 > 代码库 > 《跑跑跑》(五)——添加障碍物,Tiled障碍层的使用

《跑跑跑》(五)——添加障碍物,Tiled障碍层的使用

【转】http://blog.csdn.net/u010778159/article/details/44036365

 

首先利用TiledMap在原来的地图上添加上障碍物,先新建两个图层,分别叫barrier和meta2,如下

技术分享

选中barrier,然后利用图块中的素材,在地图上画障碍物,如图:

 

技术分享

嗯....在地图上一坨坨的就是所说的障碍物。

但是如果现在保存,重新运行项目的话,可以发现这些障碍物并不能阻碍主角前进

所以才需要用到meta2图层,先加载下面的图块:

技术分享(命名为meta2)

 

右键红色方块,点击”图块属性“,在属性中添加属性Colliadable,值改为true

选中meta2对象层,然后用meta2图块中的红色方块填涂之前添加的障碍物

然后保存!

接下来,我们修改代码

Player.h

技术分享

 

meta2,就是刚刚在TileMap中创建的对象层

tileCoordForPosition()函数是将cocos2d中的坐标转换成在TiledMap中的格子坐标

技术分享

技术分享

 

在setTiledMap中获取meta2对象层,并设置为不可见(红色方块)

接下来修改setTagPosition函数,来判断主角前方是否可通行

技术分享

技术分享

《跑跑跑》(五)——添加障碍物,Tiled障碍层的使用