using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEditor;
|
using System.IO;
|
|
public class UpdateSpriteSetting
|
{
|
|
static string rootPath = Application.dataPath + "/ResourcesOut/UI/Sprite";
|
static string spriteRelativePath = "Assets/ResourcesOut/UI/Sprite";
|
|
[MenuItem("程序/设置资源包名/更新Sprite(All) AssetBundleName")]
|
public static void SetAllSpriteAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.png", SearchOption.AllDirectories);
|
|
foreach (var file in allFiles)
|
{
|
var pathStringArray = file.DirectoryName.Split(Path.DirectorySeparatorChar);
|
var importerPath = spriteRelativePath + Path.DirectorySeparatorChar + pathStringArray[pathStringArray.Length - 1] + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "ui/sprite/" + pathStringArray[pathStringArray.Length - 1].ToLower();
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
|
}
|
|
|
public class UpdateUIWindowSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/UI/Window";
|
static string assetRelativePath = "Assets/ResourcesOut/UI/Window";
|
|
static string rootPath2 = Application.dataPath + "/ResourcesOut/UI/PriorityWindow";
|
static string assetRelativePath2 = "Assets/ResourcesOut/UI/PriorityWindow";
|
|
[MenuItem("程序/设置资源包名/更新Window(All) AssetBundleName")]
|
public static void SetAllUIWindowAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.prefab", SearchOption.TopDirectoryOnly);
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetRelativePath + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "ui/window";
|
|
EditorUtility.SetDirty(importer);
|
}
|
|
allFiles = new DirectoryInfo(rootPath2).GetFiles("*.prefab", SearchOption.TopDirectoryOnly);
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetRelativePath2 + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "ui/prioritywindow";
|
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateUIPrefabSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/UI/Prefab";
|
static string assetRelativePath = "Assets/ResourcesOut/UI/Prefab";
|
|
[MenuItem("程序/设置资源包名/更新Prefab(All) AssetBundleName")]
|
public static void SetAllUIPrefabAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.prefab", SearchOption.TopDirectoryOnly);
|
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetRelativePath + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "ui/prefab";
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateEffectPrefabSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/Effect/";
|
static string assetPath = "Assets/ResourcesOut/Effect/";
|
|
[MenuItem("程序/设置资源包名/更新Effect(All) AssetBundleName")]
|
public static void SetAllEffectPrefabAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.prefab", SearchOption.AllDirectories);
|
|
foreach (var file in allFiles)
|
{
|
var pathStringArray = file.DirectoryName.Split(Path.DirectorySeparatorChar);
|
var importerPath = assetPath + pathStringArray[pathStringArray.Length - 1] + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "effect/" + pathStringArray[pathStringArray.Length - 1].ToLower();
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateMobSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/Mob";
|
static string assetPath = "Assets/ResourcesOut/Mob";
|
|
[MenuItem("程序/设置资源包名/更新Mob(All) AssetBundleName")]
|
public static void SetAllMobAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.prefab", SearchOption.TopDirectoryOnly);
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetPath + Path.DirectorySeparatorChar + file.Name;
|
var extersion = Path.GetExtension(file.FullName);
|
var importer = AssetImporter.GetAtPath(importerPath);
|
var hostfix = file.Name.Replace("Prefab_Secondary", "")
|
.Replace("Prefab_Weapon", "")
|
.Replace("Prefab_Wing", "")
|
.Replace("Prefab_Race", "")
|
.Replace("Prefab_Horse", "")
|
.Replace("_UI", "")
|
.Replace(".prefab", "")
|
.Replace("Prefab_Hand", "");
|
|
importer.assetBundleName = StringUtility.Contact("mob/prefab_race", hostfix);
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateShaderSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/Shader";
|
static string assetPath = "Assets/ResourcesOut/Shader";
|
|
[MenuItem("程序/设置资源包名/更新Shader(All) AssetBundleName")]
|
public static void SetAllShaderAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.shader", SearchOption.TopDirectoryOnly);
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetPath + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "graphic/shader";
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateScriptableObjectsSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/Refdata/ScriptableObject/";
|
static string assetPath = "Assets/ResourcesOut/Refdata/ScriptableObject/";
|
static string[] relativePaths = new string[] { "SoTreasure3D", "SoTreasureMeridian", "SoActor", "SoDeadFly", "SoBodyControl",
|
"SoCameraSFX", "SoFlyObject", "SoSkill", "SoSweepHit", "SoGhostShadow", "SoNewBieGuide", "SoMapObjectGenerate" };
|
|
[MenuItem("程序/设置资源包名/更新ScriptableObject(All) AssetBundleName")]
|
public static void SetAllScriptableObjectAssetBundleName()
|
{
|
for (int i = 0; i < relativePaths.Length; i++)
|
{
|
var relativePath = relativePaths[i];
|
var allFiles = new DirectoryInfo(rootPath + relativePath).GetFiles("*.asset", SearchOption.TopDirectoryOnly);
|
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetPath + relativePath + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "config/scriptableobjects";
|
EditorUtility.SetDirty(importer);
|
}
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateLevelSetting
|
{
|
static string rootPath = Application.dataPath + "/Art/Maps/Scenes";
|
static string assetPath = "Assets/Art/Maps/Scenes";
|
|
[MenuItem("程序/设置资源包名/更新Level(All) AssetBundleName")]
|
public static void SetAllLevelAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.unity", SearchOption.TopDirectoryOnly);
|
foreach (var file in allFiles)
|
{
|
var importerPath = assetPath + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "maps/" + Path.GetFileNameWithoutExtension(file.FullName).ToLower();
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|
|
public class UpdateAudioSetting
|
{
|
static string rootPath = Application.dataPath + "/ResourcesOut/Audio/";
|
static string assetPath = "Assets/ResourcesOut/Audio/";
|
|
[MenuItem("程序/设置资源包名/更新Audio(All) AssetBundleName")]
|
public static void SetAllAudioAssetBundleName()
|
{
|
var allFiles = new DirectoryInfo(rootPath).GetFiles("*.wav", SearchOption.AllDirectories);
|
|
foreach (var file in allFiles)
|
{
|
var pathStringArray = file.DirectoryName.Split(Path.DirectorySeparatorChar);
|
var importerPath = assetPath + pathStringArray[pathStringArray.Length - 1] + Path.DirectorySeparatorChar + file.Name;
|
var importer = AssetImporter.GetAtPath(importerPath);
|
importer.assetBundleName = "audio/" + pathStringArray[pathStringArray.Length - 1].ToLower();
|
EditorUtility.SetDirty(importer);
|
}
|
|
AssetDatabase.SaveAssets();
|
AssetDatabase.Refresh();
|
}
|
}
|