57 lines
1.7 KiB
C#
57 lines
1.7 KiB
C#
using System;
|
||
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using UnityEditor;
|
||
using UnityEngine;
|
||
|
||
[InitializeOnLoad]
|
||
public static class CreatDomainDirectory
|
||
{
|
||
static CreatDomainDirectory()
|
||
{
|
||
// 注意 因为这个构造函数会被重复调用,
|
||
//所以为了防止quitting和update两个回调被重复添加,需要先移除后添加
|
||
EditorApplication.quitting -= OnEditorQuit;
|
||
EditorApplication.quitting += OnEditorQuit;
|
||
|
||
Debug.Log(" 自动运行 ");
|
||
|
||
if (!EditorPrefs.HasKey("StartUp"))
|
||
{
|
||
// 通过标记记录是否已经执行过该方法
|
||
OnEditorStartUp();
|
||
EditorPrefs.SetInt("StartUp", 1);
|
||
|
||
if (EditorPrefs.GetInt("CreatDomainDirectory") == 0)
|
||
{
|
||
EditorPrefs.SetInt("CreatDomainDirectory", 1);
|
||
bool isOk = EditorUtility.DisplayDialog("提示", "发现目录存在缺失,是否检索并创建缺失目录", "是", "否");
|
||
if (isOk)
|
||
{
|
||
var DomainAll = EvoArtFolderCreator.RefreshModuleList();
|
||
foreach (var domain in DomainAll)
|
||
{
|
||
EvoArtFolderCreator.CreateFolders(domain);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// UnityEditor 关闭时取消标记
|
||
/// </summary>
|
||
private static void OnEditorQuit()
|
||
{
|
||
EditorPrefs.DeleteKey("StartUp");
|
||
}
|
||
|
||
/// <summary>
|
||
/// 只会在UnityEditor启动时执行一次
|
||
/// </summary>
|
||
static void OnEditorStartUp()
|
||
{
|
||
Debug.Log(" UnityEditor 启动 ");
|
||
}
|
||
} |