【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包

【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包,第1张

概述首先很多童鞋可能对于 cocos2dx-LuaProxy 不太熟悉,那么Himi简单的一句话进行叙述: cocos2dx-LuaProxy 的作用主要是让cocos2dx引擎的扩展包(extensions)binding到Lua,便于做cocos2dx-lua项目开发者们。 这里先附上cocos2dx-LuaProxy下载地址:https://github.com/shawnclovie/coco

首先很多童鞋可能对于cocos2dx-LuaProxy 不太熟悉,那么Himi简单的一句话进行叙述:

cocos2dx-LuaProxy 的作用主要是让cocos2dx引擎的扩展包(extensions)binding到Lua,便于做cocos2dx-lua项目开发者们。

这里先附上cocos2dx-LuaProxy下载地址:https://github.com/shawnclovie/cocos2dx-LuaProxy

仔细的童鞋可以明显的看出cocos2dx-LuaProxy最新一次的更新与本篇文章发布时间是不超过两个小时的,说这个,不是说cocos2dx-LuaProxy是Himi做的,而是想说的是:

Himi在使用cocos2dx-LuaProxy遇到了虚函数问题导致cocos2dx-LuaProxy不能在本人i的Xcode中正常编译, 恰巧的是刚刚跟cocos2dx-LuaProxy的作者交流过,其作者修正了一版!

废话不说了,下面详细介绍如何在cocos2dx-lua项目中通过cocos2dx-LuaProxy使用cocos2dx引擎扩展extensions包。

下载cocos2dx-LuaProxy 解压后如下图:

继续看下面的cocos2dx引擎的extensions扩展包的目录截图,通过对比目录大家可以看的很清楚cocos2dx-LuaProxy为我们做了哪些工作。

OK,下面详细介绍如何使用cocos2dx-LuaProxy:

第一步:将我们解压后的cocos2dx-LuaProxy文件下的 tolua 与ui文件夹加入我们的项目中!
加入后,如果你立即使用Xcode进行build编译,会发现报错。(windows下应该不会),错误如下图:

通过错误信息可以清晰的看到是我们刚导入的cocos2dx-LuaProxy框架中UI包下的UIEventdispatcher类的问题, 解决方式 删除此UIEventdispatcher类,UIEventdispatcher.h 和UIEventdispatcher.cpp都删除即可。

其原因cocos2dx-LuaProxy的README中讲的很详细了,如下:

1 You may safety remove ui/UIEventdispatcher.cpp(and .h),it's just design for win32.

是的,UIEventdispatcher 只适用于win32,所以我们尽管删除就对啦~然后再build编译就不会有问题了。

第二步:

首先在AppDelegate.cpp 中导入头luaopen_LuaProxy文件 :

#include “luaopen_LuaProxy.h”

另外继续在AppDelegate.cppd的applicationDIDFinishLaunching函数中,在获取到ccluaEngine实例后进行添加如下代码:

1 2 3 ccluaStack *pStack = pEngine->getLuaStack(); lua_State* L = pStack->getLuaState(); luaopen_LuaProxy(L);

如下图:

注意:当载入使用ccbi时需要首先创建一个CCBProxy,你需要先创建一个CCBProxy!

1 local proxy = CCBProxy:create()

下面我们书写lua测试代码,来测试cocos2dx-LuaProxy 的其中一个对httpClIEnt功能扩展:

1 2 3 4 5 -- Get CChttpRequest:open( "https://google.com/search?q=LuaProxy&safe=strict" ,khttpGet):senDWithHandler( function(res,hnd) print(res:getResponseData(),res:getResponseCode()) end)

控制台输出:

总结

以上是内存溢出为你收集整理的【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包全部内容,希望文章能够帮你解决【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1022522.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存