cocos 配置問題

有些時候,同一個遊戲的不同版本,由於IOS手機性能大部分比安卓手機號,所以需要給他們不同的配置參數,但是又不想分開兩個項目,這時候就需要修改加載配置文件的代碼了,可以寫兩份project.json,分別用於ios和android,項目名\frameworks\cocos2d-html5\CCBoot.js,找到這個文件

在加載project.json的地方,判斷下操作系統 cc.sys.os === cc.sys.OS_IOS 籠統點判斷的話,就分爲IOS和非IOS就行了,如果需要更具體的,也可以更具體點

_loadConfig: function () {

        // Load config
        // Already loaded
        if (this.config) {
            this._initConfig(this.config);
            return;
        }
        // Load from document.ccConfig
        if (document["ccConfig"]) {
            this._initConfig(document["ccConfig"]);
        }
        // Load from project.json 
        else {
            try {
                var cocos_script = document.getElementsByTagName('script');
                for(var i = 0; i < cocos_script.length; i++){
                    var _t = cocos_script[i].getAttribute('cocos');
                    if(_t === '' || _t) {
                        break;
                    }
                }
                var _src, txt, _resPath;
                if(i < cocos_script.length){
                    _src = cocos_script[i].src;
                    if(_src){
                        _resPath = /(.*)\//.exec(_src)[0];
                        cc.loader.resPath = _resPath;
if(cc.sys.os === cc.sys.OS_IOS){
_src = cc.path.join(_resPath, 'project_IOS.json');//判斷操作系統
}
else{
_src = cc.path.join(_resPath, 'project_android.json');//判斷操作系統
}                       
                    }
                    txt = cc.loader._loadTxtSync(_src);
                }
                if(!txt){
if(cc.sys.os === cc.sys.OS_IOS){
txt = cc.loader._loadTxtSync("project_IOS.json");//判斷操作系統
}
else{
txt = cc.loader._loadTxtSync("project_android.json");//判斷操作系統
}                  
                }
                var data = JSON.parse(txt);
                this._initConfig(data || {});
            } catch (e) {
                cc.log("Failed to read or parse project.json");
                this._initConfig({});
            }
        }
    },
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章