码迷,mamicode.com
首页 > 其他好文 > 详细

cocos2d-x lua脚本开发 1

时间:2014-05-08 11:33:18      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   class   code   java   

自从开始关注OpenResty之后,逐渐关注Lua语言,发现这个语言真真是容易让人喜爱的语言。偶然间发现了cocos2d-x,还支持lua,所以果断尝试一下。

这里是在cocos2d-x官方网站下载了v2.2.3版本。

 

命令行中切换到解压后的COCOS2DX目录,切换到tools/project-creator,直接输入

bubuko.com,布布扣
python create_project.py
bubuko.com,布布扣

它就会告诉你有哪些参数,这里根据提示输入项目名和包名,在语言选项中选择lua就可以了,如

bubuko.com,布布扣
python create_project.py -project hellolua -package com.cnblogs.freshcat.hellolua -language lua
bubuko.com,布布扣

这样cocos2d-x lua项目就产生了,其在COCOS2DX/projects目录下产生hellolua项目文件夹。

进入该文件夹下的proj.win32文件夹,双击打开hellolua.sln

发现.h和.cpp文件,在AppDelegate.cpp的applicationDidFinishLaunching方法中

bubuko.com,布布扣
 // register lua engine
    CCLuaEngine* pEngine = CCLuaEngine::defaultEngine();
    CCScriptEngineManager::sharedManager()->setScriptEngine(pEngine);

    CCLuaStack *pStack = pEngine->getLuaStack();
    lua_State *tolua_s = pStack->getLuaState();
    tolua_extensions_ccb_open(tolua_s);
#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
    pStack = pEngine->getLuaStack();
    tolua_s = pStack->getLuaState();
    tolua_web_socket_open(tolua_s);
#endif
    
#if (CC_TARGET_PLATFORM == CC_PLATFORM_BLACKBERRY)
    CCFileUtils::sharedFileUtils()->addSearchPath("script");
#endif

    std::string path = CCFileUtils::sharedFileUtils()->fullPathForFilename("hello.lua");
    pEngine->executeScriptFile(path.c_str());
bubuko.com,布布扣

这段代码看着很像java中调用lua的方式

bubuko.com,布布扣
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("lua");

try {
    engine.eval("print ‘hello,freshcat‘");
} catch (ScriptException e1) {
    e1.printStackTrace();
}        
bubuko.com,布布扣

所以上面的applicationDidFinishLaunching方法主要做的就是初始化lua引擎,执行hello.lua文件

hellolua项目文件夹下有一个Resources的文件夹下面就有一个叫hello.lua的文件,也就是说,只要看看hello.lua就可以了

未完待续..

 

 

cocos2d-x lua脚本开发 1,布布扣,bubuko.com

cocos2d-x lua脚本开发 1

标签:android   style   blog   class   code   java   

原文地址:http://www.cnblogs.com/freshcat/p/3714392.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!