概述
使用cc.game
單例代替了原有的cc.Application
以及cc.AppControl
。
簡化了工程啓動代碼的編寫。
使用
首先在index.html
中引入xxx/frameworks/cocos2d-html5/CCBoot.js
。
然後開始進行入口代碼編寫,一般放在main.js
中。
項目啓動代碼的編寫較v2版本是大大的精簡了,使用起來會更加舒服:
cc.game.onStart = function(){
//load resources
cc.LoaderScene.preload(resource_list, function () {
cc.director.runScene(new MyScene());
}, this);
};
cc.game.run();
當run
的時候,引擎會自動讀取project.json
配置文件獲取配置信息。
延遲運行
有種需求是先加載完js,遊戲主循環並還未開啓,等響應了某一事件之後纔開始運行遊戲,例如:
cc.game.onStart = function(){
//load resources
cc.LoaderScene.preload(resource_list, function () {
cc.director.runScene(new MyScene());
}, this);
};
cc.game.prepare();
document.getElementById("myBtn").addEventListener("click", function(){
cc.game.run();
});
debugMode 常量
對應於project.json
中的debugMode
字段的配置:
DEBUG_MODE_NONE : 0 //都不開啓
DEBUG_MODE_INFO : 1 //用控制檯輸出INFO、WARN、ERROR級別日誌
DEBUG_MODE_WARN : 2 //用控制檯輸出WARN、ERROR級別日誌
DEBUG_MODE_ERROR : 3 //用控制檯輸出ERROR級別日誌
DEBUG_MODE_INFO_FOR_WEB_PAGE : 4 //用HTML界面(jsb爲控制檯)輸出INFO、WARN、ERROR級別日誌
DEBUG_MODE_WARN_FOR_WEB_PAGE : 5 //用HTML界面(jsb爲控制檯)輸出WARN、ERROR級別日誌
DEBUG_MODE_ERROR_FOR_WEB_PAGE : 6 //用HTML界面(jsb爲控制檯)輸出ERROR級別日誌
CONFIG_KEY 常量
project.json
配置文件的key名稱:
engineDir : "engineDir",
dependencies : "dependencies",
debugMode : "debugMode",
showFPS : "showFPS",
frameRate : "frameRate",
id : "id",
renderMode : "renderMode",
jsList : "jsList",
classReleaseMode : "classReleaseMode"
要獲取配置文件的值,可以這麼使用:cc.game.config[cc.game.CONFIG_KEY.showFPS]
。
EVENT_HIDE和EVENT_SHOW事件
在cocos-js3.0中可以添加事件監聽,在遊戲進入後臺(切換瀏覽器tab或者手機app進入後臺)和返回遊戲時做一些處理,這2個事件是可以重複註冊的。例如:
cc.eventManager.addCustomListener(cc.game.EVENT_HIDE, function(){
//處理遊戲進入後臺的情況
});
cc.eventManager.addCustomListener(cc.game.EVENT_SHOW, function(){
//處理返回遊戲的情況
});