InitHelper.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using UnityEditor;
  2. using UnityEngine;
  3. namespace ET
  4. {
  5. public static class InitHelper
  6. {
  7. [InitializeOnLoadMethod]
  8. [MenuItem("ET/ReGenerateProjectFiles")]
  9. public static void ReGenerateProjectFiles()
  10. {
  11. Unity.CodeEditor.CodeEditor.CurrentEditor.SyncAll();
  12. foreach (string s in FileHelper.GetAllFiles(".", "Ignore.ET*.csproj"))
  13. {
  14. System.IO.File.Delete(s);
  15. }
  16. Debug.Log("regenerate csproj");
  17. }
  18. [MenuItem("ET/Init")]
  19. public static void Init()
  20. {
  21. LinkSlnHelper.Run();
  22. ToolsEditor.ExcelExporter();
  23. ToolsEditor.Proto2CS();
  24. // 刷新4个程序集的asmdef引用
  25. ScriptsReferencesHelper.Run();
  26. GlobalConfig globalConfig = AssetDatabase.LoadAssetAtPath<GlobalConfig>("Packages/com.etetet.init/Resources/GlobalConfig.asset");
  27. CodeModeChangeHelper.ChangeToCodeMode(globalConfig.CodeMode);
  28. // 设置GlobalConfig中的SceneName字段
  29. SceneNameSetHelper.Run();
  30. InitScriptHelper.Run();
  31. DefineHelper.EnableDefineSymbols("INITED", true);
  32. AssetDatabase.Refresh();
  33. Debug.Log("Init finish!");
  34. }
  35. [MenuItem("ET/Refresh")]
  36. public static void Refresh()
  37. {
  38. ScriptsReferencesHelper.Run();
  39. GlobalConfig globalConfig = AssetDatabase.LoadAssetAtPath<GlobalConfig>("Packages/com.etetet.init/Resources/GlobalConfig.asset");
  40. CodeModeChangeHelper.ChangeToCodeMode(globalConfig.CodeMode);
  41. AssetDatabase.Refresh();
  42. Debug.Log("packages refresh finish!");
  43. }
  44. }
  45. }