婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Cocos2d-x中調(diào)用Lua及HelloWorld.lua源碼分解

Cocos2d-x中調(diào)用Lua及HelloWorld.lua源碼分解

熱門標簽:智能語音電銷的機器人 揚州電銷外呼系統(tǒng)軟件 武漢百應(yīng)人工智能電銷機器人 400手機電話免費辦理 電腦外呼系統(tǒng)輻射大嗎 上海企業(yè)外呼系統(tǒng)排名 如何利用高德地圖標注家 開通400電話申請流程 百度地圖標注位置網(wǎng)站

Lua腳本,以前我不知道它有多強大,但是當我做了1年的手機網(wǎng)游之后,起碼我發(fā)現(xiàn)了,更新客戶端是一件很恐怖的事情(會導致大量玩家的流失,以及有一個漫長并且驚心動魄的審核過程),太扯了。于是,如果可以只更新腳本,那就不需要玩家重新下載客戶端了,直接在線更新,嗯嗯,雖然我發(fā)現(xiàn)了這個,但是還沒有實現(xiàn)。噗,代碼寫爛了,不好改。
 
所以啊,我已經(jīng)做好準備了,如果下次用cocos2d-x開發(fā),lua不可少啊~!
 
看看官方的例子吧,先來AppDelegate.cpp的applicationDidFinishLaunching函數(shù):

復制代碼 代碼如下:

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
    CCString* pstrFileContent = CCString::createWithContentsOfFile("helloWorld.lua ");
    if (pstrFileContent)
    {
        pEngine->executeString(pstrFileContent->getCString());
    }
#else
    std::string path = CCFileUtils::sharedFileUtils()->fullPathFromRelativePath("helloWorld.lua");
    pEngine->addSearchPath(path.substr(0, path.find_last_of("/")).c_str());
    pEngine->executeScriptFile(path.c_str());
#endif

是的,就看這一段就好了。就Android加載lua腳本的方式有點奇怪,但是和LuaJava的加載方式很像(我喜歡,噗)。
也就是說,我們要執(zhí)行某個lua腳本的話,就是用上面這段代碼了,不解釋,不好解釋(難道要我解釋源碼?噗)。

來,看看helloWorld.lua是怎么寫的吧:

復制代碼 代碼如下:

local winSize = CCDirector:sharedDirector():getWinSize()
local function createHelloLayer()
    local layer = CCLayer:create();
    local sprite = CCSprite:create("Default.png");
    sprite:setPosition(winSize.width / 2, winSize.height / 2);
    layer:addChild(sprite);
    return layer
end
local scene = CCScene:create();
scene:addChild(createHelloLayer());
CCDirector:sharedDirector():runWithScene(scene);

哎哎,lua的語法其實我也不是很熟悉,因為我真的沒有用lua開發(fā)過。說說我懂的吧,注意幾點:
1. 一般變量都要local xx形式,不要習慣了搞個int xx什么的哈
2.  lua是沒有變量類型這個說法,你想它是什么類型,它就是什么類型,當然,賦值之后它的類型也就確定了
3.  然后,貌似cocos2d-x的lua要使用API的函數(shù)好簡單啊,比如在cpp應(yīng)該是
CCLayer::create(),而到了lua這里就CCLayer:create(),是的,注意一個是兩個冒號,一個是一個冒號。
4. 使用方法是一個冒號,那使用屬性呢?好像是,一個點。
5. 注意了,不管是靜態(tài)方法,非靜態(tài)方法,都是用一個冒號,在這里不存在“->”符號
 
好喇,大家又不是笨蛋,自己看看官方的hello.lua就能發(fā)現(xiàn)很多知識了。

您可能感興趣的文章:
  • Cocos2d-x學習筆記之Hello World源碼分析
  • CocosCreator通用框架設(shè)計之資源管理
  • 如何在CocosCreator中做一個List
  • CocosCreator骨骼動畫之龍骨DragonBones
  • 如何在CocosCreator里畫個炫酷的雷達圖
  • 詳解CocosCreator MVC架構(gòu)
  • 詳解CocosCreator消息分發(fā)機制
  • CocosCreator入門教程之網(wǎng)絡(luò)通信
  • 如何用CocosCreator制作微信小游戲
  • 詳解CocosCreator系統(tǒng)事件是怎么產(chǎn)生及觸發(fā)的
  • 怎樣在CocosCreator中使用游戲手柄
  • 解讀CocosCreator源碼之引擎啟動與主循環(huán)

標簽:黑龍江 延邊 張掖 新余 江西 武漢 嘉峪關(guān) 宜賓

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Cocos2d-x中調(diào)用Lua及HelloWorld.lua源碼分解》,本文關(guān)鍵詞  Cocos2d-x,中,調(diào)用,Lua,及,HelloWorld.lua,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Cocos2d-x中調(diào)用Lua及HelloWorld.lua源碼分解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Cocos2d-x中調(diào)用Lua及HelloWorld.lua源碼分解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 日喀则市| 凤阳县| 安吉县| 绵阳市| 祁东县| 璧山县| 清涧县| 鲁甸县| 巴林左旗| 吉林省| 宁津县| 昌宁县| 怀化市| 长垣县| 黄大仙区| 奉新县| 东乌| 安丘市| 太和县| 安陆市| 剑川县| 保靖县| 柳州市| 建平县| 闽清县| 阿巴嘎旗| 湟中县| 敦煌市| 夏河县| 化德县| 德阳市| 读书| 托克逊县| 临高县| 莱西市| 罗平县| 安西县| 昭觉县| 信宜市| 大田县| 杭锦旗|