TH1/Unity/Assets/Scripts/Logic/Editor/BuildEditor.cs

57 lines
1.7 KiB
C#

/*
* @Author: 白哉
* @Description:
* @Date: 2025年07月25日 星期五 14:07:55
* @Modify:
*/
using Logic.Config;
using UnityEditor;
using UnityEngine;
namespace Logic.Editor
{
// 编辑器工具类
public class BuildEditor : EditorWindow
{
private VersionConfig _asset;
[MenuItem("Tools/打包窗口")]
public static void ShowWindow()
{
var window = GetWindow<BuildEditor>();
window.titleContent = new GUIContent("打包");
}
private void OnGUI()
{
if (!_asset)
{
var path = $"Assets/Resources/DataAssets/VersionConfig.asset";
_asset = AssetDatabase.LoadAssetAtPath<VersionConfig>(path);
if (!_asset)
{
_asset = CreateInstance<VersionConfig>();
AssetDatabase.CreateAsset(_asset, path);
AssetDatabase.SaveAssets();
AssetDatabase.Refresh();
}
}
_asset.majorVersion = EditorGUILayout.TextField("重大更新", _asset.majorVersion);
_asset.minorVersion = EditorGUILayout.TextField("功能更新", _asset.minorVersion);
_asset.patchVersion = EditorGUILayout.TextField("补丁修复", _asset.patchVersion);
EditorGUILayout.IntField("构建号", _asset.buildNumber);
if (GUILayout.Button("构建版本号"))
{
_asset.buildNumber++;
EditorUtility.SetDirty(_asset);
AssetDatabase.SaveAssets();
// 更新Unity版本号
PlayerSettings.bundleVersion = _asset.FullVersion;
}
}
}
}