Bläddra i källkod

自动设置scenename

tanghai 1 år sedan
förälder
incheckning
c6eae0b235

+ 1 - 1
Packages/com.etetet.init/Editor/GitDependencyResolver/DependencyResolver.cs

@@ -17,7 +17,7 @@ namespace Hibzz.DependencyResolver
     [InitializeOnLoad]
     public class DependencyResolver
     {
-        [MenuItem("ET/MoveToPackage")]
+        //[MenuItem("ET/MoveToPackage")]
         static void MoveToPackage()
         {
             Process process = ProcessHelper.PowerShell($"-NoExit -ExecutionPolicy Bypass -File .\\Scripts/MoveToPackages.ps1", waitExit: true);

+ 1 - 16
Packages/com.etetet.init/Editor/GlobalConfigEditor/GlobalConfigEditor.cs

@@ -11,7 +11,7 @@ namespace ET
         private void OnEnable()
         {
             GlobalConfig globalConfig = (GlobalConfig)this.target;
-            globalConfig.BuildType = EditorUserBuildSettings.development ? BuildType.Debug : BuildType.Release;
+            //globalConfig.BuildType = EditorUserBuildSettings.development ? BuildType.Debug : BuildType.Release;
             EditorResHelper.SaveAssets(globalConfig);
         }
 
@@ -31,21 +31,6 @@ namespace ET
                 InitHelper.ReGenerateProjectFiles();
             }
             
-            BuildType buildType = (BuildType)EditorGUILayout.EnumPopup("BuildType", globalConfig.BuildType);
-            if (buildType != globalConfig.BuildType)
-            {
-                globalConfig.BuildType = buildType;
-                EditorUserBuildSettings.development = globalConfig.BuildType switch
-                {
-                    BuildType.Debug => true,
-                    BuildType.Release => false,
-                    _ => throw new ArgumentOutOfRangeException()
-                };
-                EditorResHelper.SaveAssets(globalConfig);
-                AssetDatabase.Refresh();
-                InitHelper.ReGenerateProjectFiles();
-            }
-            
             string sceneName = EditorGUILayout.TextField($"SceneName", globalConfig.SceneName);
             if (sceneName != globalConfig.SceneName)
             {

+ 5 - 0
Packages/com.etetet.init/Editor/PackagesEditor/InitHelper.cs

@@ -6,6 +6,7 @@ namespace ET
     public static class InitHelper
     {
         [InitializeOnLoadMethod]
+        [MenuItem("ET/ReGenerateProjectFiles")]
         public static void ReGenerateProjectFiles()
         {
             Unity.CodeEditor.CodeEditor.CurrentEditor.SyncAll();
@@ -27,11 +28,15 @@ namespace ET
             
             ToolsEditor.Proto2CS();
             
+            // 刷新4个程序集的asmdef引用
             ScriptsReferencesHelper.Run();
             
             GlobalConfig globalConfig = AssetDatabase.LoadAssetAtPath<GlobalConfig>("Packages/com.etetet.init/Resources/GlobalConfig.asset");
             CodeModeChangeHelper.ChangeToCodeMode(globalConfig.CodeMode);
             
+            // 设置GlobalConfig中的SceneName字段
+            SceneNameSetHelper.Run();
+            
             InitScriptHelper.Run();
             
             DefineHelper.EnableDefineSymbols("INITED", true);

+ 1 - 1
Packages/com.etetet.init/Editor/PackagesEditor/LinkSlnHelper.cs

@@ -8,7 +8,7 @@ namespace ET
 {
     public static class LinkSlnHelper
     {
-        [MenuItem("ET/LinkSln")]
+        //[MenuItem("ET/Init/LinkSln")]
         public static void Run()
         {
             string etslnPath = Path.Combine(Directory.GetCurrentDirectory(), "ET.sln");

+ 33 - 0
Packages/com.etetet.init/Editor/PackagesEditor/SceneNameSetHelper.cs

@@ -0,0 +1,33 @@
+using System;
+using System.IO;
+using UnityEditor;
+
+namespace ET
+{
+    public static class SceneNameSetHelper
+    {
+        public static void Run()
+        {
+            PackageGit packageGit = null;
+            foreach (string directory in Directory.GetDirectories("./Packages"))
+            {
+                if (!File.Exists(Path.Combine(directory, "ET.sln")))
+                {
+                    continue;
+                }
+
+                packageGit = PackageGitHelper.Load(Path.Combine(directory, "packagegit.json"));
+                break;
+            }
+
+            if (packageGit == null)
+            {
+                throw new Exception("not found demo et.sln");
+            }
+            
+            GlobalConfig globalConfig = AssetDatabase.LoadAssetAtPath<GlobalConfig>("Packages/com.etetet.init/Resources/GlobalConfig.asset");
+            globalConfig.SceneName = packageGit.Name;
+            AssetDatabase.SaveAssets();
+        }
+    }
+}

+ 3 - 0
Packages/com.etetet.init/Editor/PackagesEditor/SceneNameSetHelper.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: b4069d5e86ae40059b3e63a5ec31bcc5
+timeCreated: 1720264653

+ 1 - 1
Packages/com.etetet.init/Editor/PackagesEditor/ScriptsReferencesHelper.cs

@@ -32,7 +32,7 @@ namespace ET
         public static readonly string[] PackagePaths = { "Packages", "Library/PackageCache" };
         
         // 自动把各个包中的引用加到Assets对应的包中去,后面搞个编辑器来编辑每个包的引用
-        [MenuItem("ET/UpdateScriptsReferences")]
+        //[MenuItem("ET/UpdateScriptsReferences")]
         public static void Run()
         {
             Dictionary<string, HashSet<string>> refs = new ()

+ 0 - 1
Packages/com.etetet.init/Resources/GlobalConfig.asset

@@ -13,6 +13,5 @@ MonoBehaviour:
   m_Name: GlobalConfig
   m_EditorClassIdentifier: 
   CodeMode: 3
-  BuildType: 1
   SceneName: StateSync
   Address: 127.0.0.1:10101

+ 0 - 2
Packages/com.etetet.init/Runtime/GlobalConfig.cs

@@ -20,8 +20,6 @@ namespace ET
     {
         public CodeMode CodeMode;
 
-        public BuildType BuildType;
-
         public string SceneName;
 
         public string Address;