var loadingNum = 0; window.boot = function () { var settings = window._CCSettings; window._CCSettings = undefined; var onProgress = null; var RESOURCES = cc.AssetManager.BuiltinBundleName.RESOURCES; var INTERNAL = cc.AssetManager.BuiltinBundleName.INTERNAL; var MAIN = cc.AssetManager.BuiltinBundleName.MAIN; function setLoadingDisplay () { // Loading splash scene var splash = document.getElementById('splash'); var loadintT = document.getElementById("loadingText") // var progressBar = splash.querySelector('.progress-bar span'); cc.loader.onProgress = function (finish, total, item) { loadData.completedCount = finish; loadData.totalCount = total; var percent = 100 * finish / total; if(loadingNum >= 1 && total > 1){ if(percent.toFixed(0) >= 100){ loadintT.innerHTML = 'loading......100' + '%'; clearInterval(timer); setTimeout(function(){ loadintT.remove(); },0.1 * 1000); } } loadingNum++; }; splash.style.display = 'block'; // progressBar.style.width = '0%'; cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () { splash.style.display = 'none'; }); } var onStart = function () { cc.view.enableRetina(true); cc.view.resizeWithBrowserSize(true); if (cc.sys.isBrowser) { setLoadingDisplay(); } if (cc.sys.isMobile) { if (settings.orientation === 'landscape') { cc.view.setOrientation(cc.macro.ORIENTATION_LANDSCAPE); } else if (settings.orientation === 'portrait') { cc.view.setOrientation(cc.macro.ORIENTATION_PORTRAIT); } // cc.view.enableAutoFullScreen([ // cc.sys.BROWSER_TYPE_BAIDU, // cc.sys.BROWSER_TYPE_BAIDU_APP, // cc.sys.BROWSER_TYPE_WECHAT, // cc.sys.BROWSER_TYPE_MOBILE_QQ, // cc.sys.BROWSER_TYPE_MIUI, // cc.sys.BROWSER_TYPE_HUAWEI, // cc.sys.BROWSER_TYPE_UC, // ].indexOf(cc.sys.browserType) < 0); cc.view.enableAutoFullScreen(false); } // Limit downloading max concurrent task to 2, // more tasks simultaneously may cause performance draw back on some android system / browsers. // You can adjust the number based on your own test result, you have to set it before any loading process to take effect. if (cc.sys.isBrowser && cc.sys.os === cc.sys.OS_ANDROID) { cc.assetManager.downloader.maxConcurrency = 2; cc.assetManager.downloader.maxRequestsPerFrame = 2; } var launchScene = settings.launchScene; var bundle = cc.assetManager.bundles.find(function (b) { return b.getSceneInfo(launchScene); }); var canvas; if (cc.sys.isBrowser) { canvas = document.getElementById('GameCanvas'); } var MainManger = __require("MainManage"); MainManger.init(launchScene,cc.sys.isBrowser,canvas.style.visibility); // bundle.loadScene(launchScene, null, onProgress, // function (err, scene) { // if (!err) { // cc.director.runSceneImmediate(scene); // if (cc.sys.isBrowser) { // // show canvas // var canvas = document.getElementById('GameCanvas'); // canvas.style.visibility = ''; // var div = document.getElementById('GameDiv'); // if (div) { // div.style.backgroundImage = ''; // } // console.log('Success to load scene: ' + launchScene); // } // } // } // ); }; var option = { id: 'GameCanvas', debugMode: settings.debug ? cc.debug.DebugMode.INFO : cc.debug.DebugMode.ERROR, showFPS: settings.debug, frameRate: 60, groupList: settings.groupList, collisionMatrix: settings.collisionMatrix, }; cc.assetManager.init({ bundleVers: settings.bundleVers, remoteBundles: settings.remoteBundles, server: settings.server }); var bundleRoot = [INTERNAL]; settings.hasResourcesBundle && bundleRoot.push(RESOURCES); var count = 0; function cb (err) { if (err) return console.error(err.message, err.stack); count++; if (count === bundleRoot.length + 1) { cc.assetManager.loadBundle(MAIN, function (err) { if (!err) cc.game.run(option, onStart); }); } } cc.assetManager.loadScript(settings.jsList.map(function (x) { return 'src/' + x;}), cb); for (var i = 0; i < bundleRoot.length; i++) { cc.assetManager.loadBundle(bundleRoot[i], cb); } }; if (window.jsb) { var isRuntime = (typeof loadRuntime === 'function'); if (isRuntime) { require('src/settings.js'); require('src/cocos2d-runtime.js'); if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { require('src/physics.js'); } require('jsb-adapter/engine/index.js'); } else { require('src/settings.js'); require('src/cocos2d-jsb.js'); if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { require('src/physics.js'); } require('jsb-adapter/jsb-engine.js'); } cc.macro.CLEANUP_IMAGE_CACHE = true; window.boot(); }