上传框架,上传unitask
This commit is contained in:
@@ -31,20 +31,50 @@ namespace Stary.Evo.Editor
|
||||
[Button("创建Domain", ButtonSizes.Large)]
|
||||
public async void CreatDomain()
|
||||
{
|
||||
if (GetCreatDomainAll().Count>0)
|
||||
{
|
||||
EditorUtility.DisplayDialog("错误!", "Domain仅可以创建一个,请在下方删除存在的Domain", "确定");
|
||||
return;
|
||||
}
|
||||
|
||||
// if (GetCreatDomainAll().Count>0)
|
||||
// {
|
||||
// EditorUtility.DisplayDialog("错误!", "Domain仅可以创建一个,请在下方删除存在的Domain", "确定");
|
||||
// return;
|
||||
// }
|
||||
|
||||
if (string.IsNullOrEmpty(domain))
|
||||
{
|
||||
EditorUtility.DisplayDialog("错误!", "请输入将要创建Domain的编号", "确定");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
string artDomainPath = $"{Application.dataPath}/Art/{domain}";
|
||||
if (!Directory.Exists(artDomainPath))
|
||||
{
|
||||
Directory.CreateDirectory(artDomainPath);
|
||||
|
||||
//创建Animation文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Animation");
|
||||
//创建Effects文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Effects");
|
||||
//创建Fbx文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Fbx");
|
||||
//创建Font文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Font");
|
||||
//创建Materials文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Materials");
|
||||
//创建Prefabs文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Prefabs");
|
||||
//创建Scenes文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Scenes");
|
||||
//创建/Scenes/Test文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Scenes/Test");
|
||||
//创建Shader文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Shader");
|
||||
//创建Textures文件夹
|
||||
Directory.CreateDirectory(artDomainPath + "/Textures");
|
||||
await File.WriteAllTextAsync(
|
||||
$"{artDomainPath}/这里放所有美术的资源,因涉及打包依赖等原因,不建议在上一层节点新增文件夹,如涉及文件夹规范等问题请@张铮.hint", "");
|
||||
}
|
||||
|
||||
|
||||
string domainPath = $"{Application.dataPath}/Domain/{domain}";
|
||||
if (Directory.Exists(domainPath+"/AddressableRes/Config/DomainConfig.asset"))
|
||||
if (Directory.Exists(domainPath + "/AddressableRes/Config/DomainConfig.asset"))
|
||||
{
|
||||
EditorUtility.DisplayDialog("错误!", $"\"{domain}\"已经存在,无法创建", "确定");
|
||||
return;
|
||||
@@ -52,7 +82,7 @@ namespace Stary.Evo.Editor
|
||||
|
||||
Directory.CreateDirectory(domainPath);
|
||||
|
||||
//美术资源存放文件夹
|
||||
//程序资源存放文件夹
|
||||
string resPath = $"{domainPath}/AddressableRes";
|
||||
Directory.CreateDirectory(resPath);
|
||||
//创建音频文件夹
|
||||
@@ -152,32 +182,34 @@ namespace Stary.Evo.Editor
|
||||
string configPath = $"Assets/Domain/{domain}/HotUpdate/{hotfixDomain}.asmdef";
|
||||
AssemblyDefinitionAsset assemblyDefinitionAsset =
|
||||
AssetDatabase.LoadAssetAtPath<AssemblyDefinitionAsset>(configPath);
|
||||
// 将程序集定义添加到 HybridCLR 热更列表
|
||||
var settings = SettingsUtil.HybridCLRSettings;
|
||||
if (!settings.hotUpdateAssemblyDefinitions.Contains(assemblyDefinitionAsset))
|
||||
if (domain != "Main")
|
||||
{
|
||||
var assemblyList = settings.hotUpdateAssemblyDefinitions.ToList();
|
||||
assemblyList.Add(assemblyDefinitionAsset);
|
||||
SettingsUtil.HybridCLRSettings.hotUpdateAssemblyDefinitions = assemblyList.ToArray();
|
||||
|
||||
}
|
||||
|
||||
|
||||
List<AssemblyDefinitionAsset> assemblies = new List<AssemblyDefinitionAsset>();
|
||||
for (int i = 0; i < settings.hotUpdateAssemblyDefinitions.Length; i++)
|
||||
{
|
||||
if (settings.hotUpdateAssemblyDefinitions[i] != null)
|
||||
// 将程序集定义添加到 HybridCLR 热更列表
|
||||
var settings = SettingsUtil.HybridCLRSettings;
|
||||
if (!settings.hotUpdateAssemblyDefinitions.Contains(assemblyDefinitionAsset))
|
||||
{
|
||||
assemblies.Add(settings.hotUpdateAssemblyDefinitions[i]);
|
||||
var assemblyList = settings.hotUpdateAssemblyDefinitions.ToList();
|
||||
assemblyList.Add(assemblyDefinitionAsset);
|
||||
SettingsUtil.HybridCLRSettings.hotUpdateAssemblyDefinitions = assemblyList.ToArray();
|
||||
}
|
||||
|
||||
|
||||
List<AssemblyDefinitionAsset> assemblies = new List<AssemblyDefinitionAsset>();
|
||||
for (int i = 0; i < settings.hotUpdateAssemblyDefinitions.Length; i++)
|
||||
{
|
||||
if (settings.hotUpdateAssemblyDefinitions[i] != null)
|
||||
{
|
||||
assemblies.Add(settings.hotUpdateAssemblyDefinitions[i]);
|
||||
}
|
||||
}
|
||||
|
||||
HybridCLRSettings.Instance.hotUpdateAssemblyDefinitions = assemblies.ToArray();
|
||||
HybridCLRSettings.Save();
|
||||
}
|
||||
|
||||
HybridCLRSettings.Instance.hotUpdateAssemblyDefinitions = assemblies.ToArray();
|
||||
HybridCLRSettings.Save();
|
||||
|
||||
AssetDatabase.SaveAssets();
|
||||
|
||||
|
||||
|
||||
|
||||
string domainClassPath = $"{scriptsPath}/{domainClassName}.cs";
|
||||
//await File.WriteAllTextAsync($"{scriptsPath}/{domainClassName}.cs", domainTemplate);
|
||||
await using (var writer = new StreamWriter(domainClassPath))
|
||||
@@ -186,7 +218,8 @@ namespace Stary.Evo.Editor
|
||||
domainTemplate = domainTemplate.Replace("ClassNameXX", domainClassName)
|
||||
.Replace("ReturnArchitecture", architectureClassName)
|
||||
.Replace("ArchitectureX", architectureClassName)
|
||||
.Replace("NamespaceX", domain);
|
||||
.Replace("NamespaceX", domain)
|
||||
.Replace("DomainNameXX", domain);
|
||||
await writer.WriteAsync(domainTemplate);
|
||||
}
|
||||
}
|
||||
@@ -206,6 +239,7 @@ namespace Stary.Evo.Editor
|
||||
base.Initialize();
|
||||
domainList = GetCreatDomainAll();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取全部作用域
|
||||
/// </summary>
|
||||
@@ -227,10 +261,10 @@ namespace Stary.Evo.Editor
|
||||
domains = Array.Empty<string>();
|
||||
}
|
||||
|
||||
|
||||
|
||||
return domains;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取全部作用域
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user