Tz2/Assets/Framework/Editor/CustomConfigWindow.cs

138 lines
4.9 KiB
C#

// using UnityEditor;
// using UnityEngine;
// using System.IO;
//
// public class CustomConfigWindow : EditorWindow
// {
// private string ipAddress = "127.0.0.1";
// private GameObject backpackPrefab;
// private string backpackButtonPath = "Assets";
// private string popupWindowPath = "Assets";
//
// [MenuItem("工具/配置编辑窗口")]
// public static void ShowWindow()
// {
// GetWindow<CustomConfigWindow>("配置编辑窗口");
// }
//
// private void OnGUI()
// {
// GUILayout.Label("配置设置", EditorStyles.boldLabel);
//
// // IP 地址输入
// GUILayout.Label("IP 地址");
// ipAddress = EditorGUILayout.TextField("IP 地址:", ipAddress);
//
// // 背包预制体选择
// GUILayout.Space(10);
// GUILayout.Label("选择背包预制体");
// backpackPrefab = (GameObject)EditorGUILayout.ObjectField("背包预制体:", backpackPrefab, typeof(GameObject), false);
//
// // 显示背包预制体信息并提供定位功能
// if (backpackPrefab != null)
// {
// if (GUILayout.Button($"定位预制体: {backpackPrefab.name}"))
// {
// EditorGUIUtility.PingObject(backpackPrefab);
// }
// }
//
// // 背包按钮路径
// GUILayout.Space(10);
// GUILayout.Label("背包按钮路径");
// if (GUILayout.Button("选择背包按钮路径"))
// {
// string path = EditorUtility.OpenFolderPanel("选择背包按钮路径", "Assets", "");
// if (!string.IsNullOrEmpty(path))
// {
// backpackButtonPath = GetRelativePath(path);
// }
// }
// EditorGUILayout.LabelField("路径:", backpackButtonPath);
//
// // 弹出窗口路径
// GUILayout.Space(10);
// GUILayout.Label("弹出窗口路径");
// if (GUILayout.Button("选择弹出窗口路径"))
// {
// string path = EditorUtility.OpenFolderPanel("选择弹出窗口路径", "Assets", "");
// if (!string.IsNullOrEmpty(path))
// {
// popupWindowPath = GetRelativePath(path);
// }
// }
// EditorGUILayout.LabelField("路径:", popupWindowPath);
//
// // 保存按钮
// GUILayout.Space(20);
// if (GUILayout.Button("保存配置"))
// {
// SaveConfiguration();
// EditorUtility.DisplayDialog("配置编辑窗口", "配置已保存", "确定");
// }
//
// // 更新按钮
// GUILayout.Space(20);
// GUI.backgroundColor = Color.green;
// if (GUILayout.Button("更新配置到 StreamingAssets", GUILayout.Height(40)))
// {
// UpdateConfiguration();
// }
// GUI.backgroundColor = Color.white; // 还原默认颜色
// }
//
// private void SaveConfiguration()
// {
// Debug.Log("IP 地址: " + ipAddress);
// Debug.Log("背包预制体: " + (backpackPrefab != null ? backpackPrefab.name : "未选择"));
// Debug.Log("背包按钮路径: " + backpackButtonPath);
// Debug.Log("弹出窗口路径: " + popupWindowPath);
// }
//
// private void UpdateConfiguration()
// {
// string dataFolderPath = Path.Combine(Application.streamingAssetsPath, "data");
// string configFilePath = Path.Combine(dataFolderPath, "config.json");
//
// // 确保 data 文件夹存在
// if (!Directory.Exists(dataFolderPath))
// {
// Directory.CreateDirectory(dataFolderPath);
// }
//
// // 创建配置数据对象
// ConfigData configData = new ConfigData
// {
// ipAddress = ipAddress,
// backpackPrefabPath = backpackPrefab != null ? AssetDatabase.GetAssetPath(backpackPrefab) : "",
// backpackButtonPath = backpackButtonPath,
// popupWindowPath = popupWindowPath
// };
//
// // 将配置数据序列化为 JSON 并写入文件
// string json = JsonUtility.ToJson(configData, true);
// File.WriteAllText(configFilePath, json);
//
// EditorUtility.DisplayDialog("配置编辑窗口", "配置已更新到 StreamingAssets/data/config.json", "确定");
// }
//
// private string GetRelativePath(string fullPath)
// {
// if (fullPath.StartsWith(Application.dataPath))
// {
// return "Assets" + fullPath.Substring(Application.dataPath.Length);
// }
// return fullPath;
// }
//
// // 配置数据类,用于序列化为 JSON
// [System.Serializable]
// public class ConfigData
// {
// public string ipAddress;
// public string backpackPrefabPath;
// public string backpackButtonPath;
// public string popupWindowPath;
// }
// }