Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(一)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;)


首先说一下为什么要转换,这是为了后面的A*寻路算法做准备.由于在v1.0中,可能是Cocos2D本身有问题,以下

    touchLocation = [_tileMap convertTouchToNodeSpace:touch];

方法在执行到地图左边缘附近时,返回的CGPoint的x轴值不会再减小了.导致游戏主角不能再往地图左边靠近了.示意图如下(注意日志里输出的x值):

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(一)

这相当影响以后的游戏性.在尝试修改无果后,决定将原来的基于TileMap的游戏整个转换到Cocos2Dv3.4中去.

虽然原来的app规模不大,但需要修改的地方还是不少.有些地方需要特别注意,以防转换后的代码含义发生变化.所以我们一点一点来.

首先在Xcode用Cocos2D v3.4模板新建一个项目,我是用SpriteBuilder新建的项目,这是一回事.项目就起名为CatMazeV3吧.

原来的项目名为CatMaze,可以从以下地址下载,它是在Cocos2D v1.0基础上构建的:

http://cdn5.raywenderlich.com/downloads/CatMazeStarter.zip

大家可以下载后看一下其代码大致布局,下一篇我们将逐步讲解如何将其转换到Cocos2D v3.4中来 ;)

上一篇:国内域名如何转入 GoDaddy,域名转入GoDaddy要注意?


下一篇:【计算机网络】网络层 : 网络层设备 ( 路由器 | 输入端口处理 | 输出端口处理 | 物理层、数据链路层、网络层 设备对比 | 路由表 与 路由转发 )