Beispiel #1
0
 // 生成资源热更备选对象
 private static void GenerateHotAlternativeScriptable()
 {
     if (hotAlternativeObject == null)
     {
         hotAlternativeObject = (HotScriptableObject)AssetDatabase.LoadAssetAtPath(string.Format("Assets{0}Editor{1}BuildPackage{2}hot_alternative.asset", Path.DirectorySeparatorChar, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar), typeof(HotScriptableObject));
         if (hotAlternativeObject == null)
         {
             var hp = BuildABTools.Replace(string.Format("{0}{1}Editor{2}BuildPackage{3}hot_alternative.asset", Application.dataPath, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar));
             if (File.Exists(hp))
             {
                 File.Delete(hp);
             }
             hotAlternativeObject = HotScriptableObject.CreateAlternativeScriptable <HotScriptableObject>();
             hotAlternativeObject.DataList.Clear();
             hotAlternativeObject.GenerateAlternativeDataList();
         }
     }
 }
Beispiel #2
0
    // 生成热更资源对象
    private static void GenerateHotObject()
    {
        if (hotObject == null)
        {
            hotObject = (HotScriptableObject)AssetDatabase.LoadAssetAtPath(string.Format("Assets{0}Editor{1}BuildPackage{2}hot.asset", Path.DirectorySeparatorChar, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar), typeof(HotScriptableObject));
            if (hotObject == null)
            {
                var hp = BuildABTools.Replace(string.Format("{0}{1}Editor{2}BuildPackage{3}hot.asset", Application.dataPath, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar, Path.DirectorySeparatorChar));
                if (File.Exists(hp))
                {
                    File.Delete(hp);
                }
                hotObject = HotScriptableObject.CreateHotScriptable <HotScriptableObject>();
            }
        }

        hotObject.DataList.Clear();

        if (hotAlternativeObject != null)
        {
            for (int i = 0; i < hotAlternativeObject.DataList.Count; i++)
            {
                if (hotAlternativeObject.DataList[i].selected)
                {
                    hotObject.DataList.Add(hotAlternativeObject.DataList[i]);
                }
            }
        }
        else
        {
            GenerateHotAlternativeScriptable();
            GenerateHotObject();
        }

        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
    }