quick-cocos2d-x 学习系列之五 ccsloader学习
quick-cocos2d-x 学习系列之五 ccsloader学习 这个ccsloader 用例主要是实现将cocosdudio中导出的文件加入到游戏当中。想到后续能使用这么精彩的画面心里还是有点小激动的。让我们一起好好学习下这个神奇SAMPLE吧。 代码路径还是老地方:quicksamplesccsloader 1.DEMO总体逻辑程序从main.lua中调用 require("app.MyApp").new():run() 跳入到MyApp.lua中。该类定义如下: local MyApp = class("MyApp",cc.mvc.AppBase) 继承与一个封装类。 场景共13个如下图定义在MyApp.lua文件中。 self.scenes_ = { "MenuScene", "CCSSample1Scene", "CCSSample2Scene", "CCSSample3Scene", "CCSSample4Scene", "CCSSample5Scene", "CCSSample6Scene", "CCSReader1Scene", "CCSReader2Scene", "CCSReader3Scene", "CCSReader4Scene", "CCSReader5Scene", "CCSReader6Scene" } 场景具体实现在scenes文件夹中。 通过self:enterNextScene()函数直接进入到场景。 1.1enterNextScene该函数进行下一个场景,最终通过调用self:enterScene函数进入场景。 2."MenuScene"开始的第一个场景,该场景主要是让大家进行选择。 有一个标题,通过app:createTitle(self,"SelectLoader") 实现。 有两个按钮一个Use CCSLoader,一个Use CCSReader 区别在于Use CCSReader按钮按下后,会进行如下变量的设置: app.currentSceneName_ = "CCSSample6Scene" 此外函数会有参数true,如:app:enterNextScene(true) 而Use CCSLoader直接调用app:enterNextScene() 注意:关于app,可以查看quickframeworkccmvcAppBase.lua中代码。 3."CCSSample1Scene"关键语句 app:loadCCSJsonFile(self,"DemoHead_UI.ExportJson") 4."CCSSample2Scene"关键语句 app:loadCCSJsonFile(self,"DemoLogin.ExportJson") 5."CCSSample3Scene"关键语句 app:loadCCSJsonFile(self,"DemoMap.ExportJson") 6."CCSSample4Scene"关键语句 app:loadCCSJsonFile(self,"DemoShop.ExportJson") 7."CCSSample5Scene"关键语句 app:loadCCSJsonFile(self,"publish/FightScene.json") 8."CCSSample6Scene"关键语句 app:loadCCSJsonFile(self,"publish/RPGGame.json") 9."CCSReader1Scene"通过如下命令加载 cc.uiloader:load("BattleScene.csb"):addTo(self) 10."CCSReader2Scene"关键语句 local widget = ccs.GUIReader:getInstance():widgetFromJsonFile("DemoLogin/DemoLogin.ExportJson"):addTo(self) 11."CCSReader3Scene"关键语句 local widget = ccs.GUIReader:getInstance():widgetFromJsonFile("DemoMap/DemoMap.ExportJson"):addTo(self) local scrollView = widget:getChildByName("DragPanel") scrollView:setDirection(ccui.ScrollViewDir.both) scrollView:addEventListener(function(sender,eventType) print("CCSSample2Scenescroll") end) 12."CCSReader4Scene"
关键语句 ccs.GUIReader:getInstance():widgetFromJsonFile("DemoShop/DemoShop.ExportJson"):addTo(self) 13."CCSReader5Scene"
关键语句 ccs.SceneReader:getInstance():createNodeWithSceneFile("publish/FightScene.json"):addTo(self) 14."CCSReader6Scene"
关键语句 ccs.SceneReader:getInstance():createNodeWithSceneFile("publish/RPGGame.json"):addTo(self) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |