在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
欢迎加入Cocos2d-x 交流群:193411763 欢迎转载,转载时请注明原文出处http://blog.csdn.net/u012945598/article/details/17162697 源码下载地址:http://download.csdn.net/detail/u012945598/6668417 笔者使用的是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脚本的教程 首先,创建一个基于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脚本中读取了一个整数 第五行:将栈顶元素删除后的结果。 |
请发表评论