PackageExecuteMenuItemHelper.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. using System;
  2. using UnityEditor;
  3. using UnityEngine;
  4. namespace ET.PackageManager.Editor
  5. {
  6. //为了防止其他包的按钮可能改名字等操作 这里需要使用前深度检查
  7. //因为这个管理包 不可能每次其他包更新都去检查一下 万一哪天没检查到不就BUG了
  8. //所以这哪里必须要做好防护措施
  9. public static class PackageExecuteMenuItemHelper
  10. {
  11. public static void ETAll()
  12. {
  13. //有顺序的 别乱动
  14. ET_Init_RepairDependencies();
  15. ET_Loader_ReGenerateProjectFiles();
  16. ET_Loader_ReGenerateProjectAssemblyReference();
  17. ET_Loader_UpdateScriptsReferences();
  18. ET_Excel_ExcelExporter();
  19. ET_Proto_Proto2CS();
  20. }
  21. public static void ET_Init_RepairDependencies()
  22. {
  23. ExecuteMenuItem("ET/Init/RepairDependencies");
  24. }
  25. public static void ET_Loader_ReGenerateProjectFiles()
  26. {
  27. ExecuteMenuItem("ET/Loader/ReGenerateProjectFiles");
  28. }
  29. public static void ET_Loader_ReGenerateProjectAssemblyReference()
  30. {
  31. ExecuteMenuItem("ET/Loader/ReGenerateProjectAssemblyReference");
  32. }
  33. public static void ET_Loader_UpdateScriptsReferences()
  34. {
  35. ExecuteMenuItem("ET/Loader/UpdateScriptsReferences");
  36. }
  37. public static void ET_Excel_ExcelExporter()
  38. {
  39. //关闭此功能 改为手动执行
  40. //ExecuteMenuItem("ET/Excel/ExcelExporter");
  41. }
  42. public static void ET_Proto_Proto2CS()
  43. {
  44. ExecuteMenuItem("ET/Proto/Proto2CS");
  45. }
  46. public static void ExecuteMenuItem(string menuItem)
  47. {
  48. try
  49. {
  50. EditorApplication.ExecuteMenuItem(menuItem);
  51. }
  52. catch (Exception e)
  53. {
  54. Debug.LogError($"执行错误 {menuItem} 请检查 {e.Message}");
  55. }
  56. }
  57. }
  58. }