您的位置:首页 > 移动开发 > Cocos引擎

改写《魔塔》中篇06:善后工作和注意事项(附:中期阶段项目下载)

2013-04-01 06:40 399 查看

善后工作:

(1)将用到的常量放到一个公用的头文件GameConstants.h中。然后将GameConstants.h包含到MTGame中,这样所有游戏对象都可以访问这些常量了。具体内容请下载项目源码。

(2)创建不同的文件夹,将类再继续分类(取决于自己的习惯,这款游戏的源码文件并不是很多,分类或不分类都可以)。

注意事项:

(1)我们前面曾经将所有的头文件都写在了一个叫做“MTGame”的头文件中,然后在所有的文件需要包含头文件时,只要包含进 include "MTGame.h" 即可,但这样会出现错误。错误情况如下:

1>e:\cocos2d-xprojects\mymtgame\mymtgame\classes\gamelayer.h(20): error C2143: 语法错误 : 缺少“;”(在“*”的前面)

1>e:\cocos2d-xprojects\mymtgame\mymtgame\classes\gamelayer.h(20): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

1>e:\cocos2d-xprojects\mymtgame\mymtgame\classes\gamelayer.h(20): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

      这是因为如果存在两个类的头文件a.h和b.h,在a.h中有这样的语句:#include "b.h",在b.h中有这样的语句:#include "a.h",且在一个类中另有另一个类的对象时,就会出现这样的错误。
      所以我们在GameLayer.h等文件中没有包含“MTGame.h”,而是分别包含进需要的头文件,具体情况参考项目源码。

(2)如果你按照中篇的介绍改写了项目,那么当你完成后编译运行肯定不能通过!一是因为我们是按照书上的代码来介绍的,书上使用的版本是1.0,而我们使用的是2.0以上的版本,存在代码改动问题。二是书上介绍改写项目,重构代码时,只粘贴了部分代码以供参考,所以我们在进行代码重构的过程中,一定要参考下载好的中期阶段项目的源码,真实改动以项目源码为准!
  最后,附上中期阶段项目源码下载地址,点此下载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cocos2d-x 魔塔