Explorar el Código

修复codemode修改后未生效的问题 (#496)

修改codemode后,未立刻保存,导致引擎中的文件会在运行游戏后回退到原始值

Co-authored-by: zhengxiao <zhengxiao@wangyuan.com>
ZxIce hace 2 años
padre
commit
e94a8606e9
Se han modificado 1 ficheros con 9 adiciones y 2 borrados
  1. 9 2
      Unity/Assets/Scripts/Editor/BuildEditor/BuildEditor.cs

+ 9 - 2
Unity/Assets/Scripts/Editor/BuildEditor/BuildEditor.cs

@@ -40,7 +40,7 @@ namespace ET
 
         private void OnEnable()
 		{
-			globalConfig = Resources.Load<GlobalConfig>("GlobalConfig");
+			globalConfig = AssetDatabase.LoadAssetAtPath<GlobalConfig>("Assets/Resources/GlobalConfig.asset");
 			
 #if UNITY_ANDROID
 			activePlatform = PlatformType.Android;
@@ -113,8 +113,15 @@ namespace ET
 			
 			GUILayout.Label("");
 			GUILayout.Label("Code Compile:");
-			
+			EditorGUI.BeginChangeCheck();
 			CodeMode codeMode = (CodeMode)EditorGUILayout.EnumPopup("CodeMode: ", this.globalConfig.CodeMode);
+			if (EditorGUI.EndChangeCheck())
+			{
+				EditorUtility.SetDirty(this.globalConfig);
+				AssetDatabase.SaveAssetIfDirty(this.globalConfig);
+				AssetDatabase.Refresh();
+			}
+
 			if (codeMode != this.globalConfig.CodeMode)
 			{
 				this.globalConfig.CodeMode = codeMode;