笔者使用的是Cocos2d-x的2.21版本号。Xcode 5.0开发环境,同一时候也建议大家使用Cocos2.20以上版本号,若由于版本号原因源代码无法执行,可将Classes文件拷贝出来,在新建的项目中将Classes目录替换进去。.lua文件在Resources目录中。
有关Lua脚本语言的基本语法解说请參考 :http://blog.csdn.net/u012945598/article/details/17116939
关于Cocos2d-x 2.20以上版本号怎样创建基于Lua的项目请參考:http://blog.csdn.net/u012945598/article/details/17115875
假设以上两点都没有问题,那么我们正式进入Cocos2d-x中使用Lua脚本的教程
[转载]cocos2dx与lua
首先,创建一个基于Lua的项目,笔者命名为MyLua。
项目创建好之后。执行项目,我们会发现事实上这个项目就是sample目录中的hellolua的Demo,在我们学会怎样使用Lua之前,我们先来分析一下2d-x中为我们提供的这个案例。
看一下AppDelegate.cpp中 boolAppDelegate::applicationDidFinishLaunching()函数中的代码,这段代码讲述的时怎样初始化脚本引擎,笔者已经将凝视都写在了以下,例如以下图所看到的:
这段代码差点儿能够成为固定模式,假设须要使用Lua脚本语言开发一个项目,那么这段代码能够直接粘贴复制又一次利用,由于这段代码中并不涉及到与游戏相关的不论什么内容。
有了上面的代码实际上就已经能够使用Lua脚本了。以下笔者将通过一个Demo解说怎样通过Cocos2d-x与Lua通信。
新建一个类文件命名为newScene,.h文件的代码例如以下:
能够看出newScene是一个场景。里面有一个init函数。
.cpp文件的代码例如以下,相关凝视已在代码中注明:
在代码中我们看到了一个myLua.lua的文件。这个文件里实际上仅仅有两行代码,我们来看一下:
笔者使用的TextMate编辑器。关于编辑器大家能够自行选取。编辑好文本后将后缀加上 .lua就可以。
看一下输出结果:
第一行:返回0代表成功
第二行:推断栈顶是否为string类型。返回1代表成功
第三行:从Lua脚本中读取一个字符串
第四行:从Lua脚本中读取了一个整数
第五行:将栈顶元素删除后的结果。