Exemple #1
0
 private void OnEnable()
 {
     _settings      = target as BMSettings;
     _newSceneStyle = new GUIStyle();
     _newSceneStyle.normal.textColor = Color.green;
     _scenesVersionDict = BMEditUtility.GetDictionaryFromFile(_settings.scenesVersionFile);
     if (_scenesVersionDict == null)
     {
         _scenesVersionDict = new Dictionary <string, string>();
     }
 }
Exemple #2
0
        private bool CheckModify(string atlasDir)
        {
            Dictionary <string, string> md5Map = BMEditUtility.GetDictionaryFromFile(Path.Combine(atlasDir, "manifest.txt"));
            bool modify = false;

            if (md5Map == null)
            {
                modify = true;
            }
            else
            {
                FileInfo[] resFiles = BMEditUtility.GetAllFiles(atlasDir, "*.*");
                for (int i = 0; i < resFiles.Length; i++)
                {
                    FileInfo info = resFiles[i];
                    if (info.FullName.EndsWith(".meta", StringComparison.Ordinal) || info.FullName.EndsWith(".txt", StringComparison.Ordinal))
                    {
                        continue;
                    }
                    string spriteFileName = Path.GetFileName(info.FullName);
                    string oldmd5;
                    string md5 = HashHelper.ComputeMD5(Path.Combine(atlasDir, spriteFileName));
                    if (md5Map.TryGetValue(spriteFileName, out oldmd5))
                    {
                        if (md5 != oldmd5)
                        {
                            modify = true;
                            break;
                        }
                    }
                    else
                    {
                        modify = true;
                        break;
                    }
                }
            }
            return(modify);
        }
Exemple #3
0
        private static void StartBuild(bool forceBuild, Language language, BuildTarget buildTarget, bool moveBundle = false)
        {
            //加载打包配置
            BundleBuilder.settings = AssetDatabase.LoadAssetAtPath <BMSettings>(BMSettings_Path);
            //加载场景版本号
            BundleBuilder.scenesVersionDict = BMEditUtility.GetDictionaryFromFile(BundleBuilder.settings.scenesVersionFile);
            if (BundleBuilder.scenesVersionDict == null)
            {
                BundleBuilder.scenesVersionDict = new Dictionary <string, string>();
            }
            //Output_Path = Application.dataPath.Replace("Assets", "TestBundle");
            BundleBuilder.Output_Root_Path = Application.dataPath.Replace("Assets", BundleBuilder.settings.BuildOutputDirName);
            BundleBuilder.Output_Path      = BundleBuilder.Output_Root_Path + "/" + language.ToString() + "/" + buildTarget.ToString();
            string historyBuildInfoPath = BundleBuilder.Output_Path + "/" + BMConfig.BundleDataFile;

            BundleBuilder.historyBuildInfo = forceBuild ? null : LoadHistoryBundleData(historyBuildInfoPath);
            if (BundleBuilder.settings.tempForceBuild)
            {
                forceBuild = true;
                BundleBuilder.settings.tempForceBuild = false;
                BMEditUtility.SaveSetting(BundleBuilder.settings);
            }
            BundleBuilder.StartBuild(forceBuild, Language.zh_CN, buildTarget, true, BundleBuilder.settings.encodeLuaFile, moveBundle);
        }