一.编译
A.MinGW
1:从 https://github.com/CleverRaven/Cataclysm-DDA 下载源码
2:下载IDE CodeBlocks,http://pan.baidu.com/s/1qYNcKZ6,解压到随便哪个目录,再下载TDM-GCC-64,完整安装64位,
然后设置CodeBlocks的编译器为TDM-GCC:
3:下载 http://dev.narc.ro/cataclysm/cdda-win64-codeblocks.7z 里的WinDepend解压到CDDA的根目录,这些是依赖的静态库跟动态库

4:下载LUA 5.1 For Win并安装(需要先装有VC++ 2005)
5:在CDDA根目录下找到CataclysmWin.cbp打开工程,右键项目(Cataclysm)-> Properties -> Build targets ->
双击要编译的类型(如Relase(Lua)),然后在Pre/post build steps标签下,将Pre-build steps里的lua5.1 改为 lua
因为第6步安装好Lua,默认在系统中的环境变量名是lua而不是lua5.1,不然会找不到该命令。

6:选择对应的编译类型,然后编译。

7: 如果报错 ISSUE - "winapifamily.h" no such file or directoyr
复制这里的内容覆盖掉MinGW/include/SDL2/SDL_platform.h的内容 https://hg.libsdl.org/SDL/raw-file/e217ed463f25/include/SDL_platform.h
8:编译好后,将exe文件以及data拷贝到同一目录下(如果有多语言,贴图以及LUA,还要拷贝对应的文件夹lang,gfx以及依赖的dll到运 行目录下)
http://dev.narc.ro/cataclysm/cdda-win64-codeblocks.7z 这里有已经编译好的dll,下载直接拷贝到游戏根目录即可。


B.VS 2015
1: 下载安装VS 2015学习免费版
2: 从 https://github.com/CleverRaven/Cataclysm-DDA 下载源码
3: 下载VS专用版WinDepend,同样解压到CDDA根目录
4:打开CDDA->msvc-full-features->Cataclysm.sln,启动VS工程
5:开始编译项目,编译完后,运行WinDepend里的copy_dll_to_bin.bat提取出所需的dll,然后在WinDepend目录下会生成个bin文件夹,将里面对应平台的dll文件全部拷贝到CDDA根目录,否则直接运行CDDA根目录下的EXE文件会找不到连接库报错。
6:如果要调试:编译完成后,将VS的DEBUG工作目录设置为CDDA根目录(因为默认工作目录是工程所在目录即msvc-full-features,但我们的EXE生成目录是在CDDA根目录,所以需要手动设置调试目录),右键目录->属性-〉调试,将$(ProjectDir)改为$(ProjectDir)..,两个..表示上一级目录的意思。

二.LUA调用C++
CDDA项目里支持LUA脚本调用C++代码,具体的做法是:
调用函数
1.在catalua.cpp里写一个你新建的函数,例如void game_test(int x, inty)
2.在class_definitions.lua的global_functions下注册这个函数,
global_functions = { [...] test = { cpp_name = "game_test", args = { "int", "int"}, rval = nil }, [...] }
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/35602.html