ConfigOverride.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using UnityEngine;
  2. #if UNITY_EDITOR
  3. using UnityEditor;
  4. #endif
  5. namespace VLB
  6. {
  7. [HelpURL(Consts.HelpUrlConfig)]
  8. public class ConfigOverride : Config // useless override, only useful for backward compatibility
  9. {
  10. public const string kAssetName = "VLBConfigOverride";
  11. #if UNITY_EDITOR
  12. public static void CreateFolderAndAsset(Object obj, string folderParent, string folderResources, string assetName)
  13. {
  14. if (!AssetDatabase.IsValidFolder(string.Format("{0}/{1}", folderParent, folderResources)))
  15. AssetDatabase.CreateFolder(folderParent, folderResources);
  16. CreateAsset(obj, string.Format("{0}/{1}/{2}", folderParent, folderResources, assetName));
  17. }
  18. public static void CreateAsset(Object obj, string fullPath)
  19. {
  20. AssetDatabase.CreateAsset(obj, fullPath);
  21. AssetDatabase.SaveAssets();
  22. }
  23. public static ConfigOverride CreateInstanceOverride()
  24. {
  25. var asset = CreateInstance<ConfigOverride>();
  26. Debug.Assert(asset != null);
  27. CreateFolderAndAsset(asset, "Assets", "Resources", kAssetName + ".asset");
  28. return asset;
  29. }
  30. #endif
  31. }
  32. }