JinChanChan/Assets/Scripts/Editor/CharacterEditor/TestCharacterEditor.cs

47 lines
1.4 KiB
C#
Raw Normal View History

using UnityEditor;
using UnityEngine;
namespace ZEditor
{
public class TestCharacterEditor: EditorWindow
{
private string newName = "NewObjectName";
private int startNumber = 1;
// 在菜单中添加一个选项以打开自定义窗口
[MenuItem("Tools/Rename Selected Objects")]
public static void ShowWindow()
{
// 获取或创建窗口实例
GetWindow<TestCharacterEditor>("Rename Selected Objects");
}
private void OnGUI()
{
// 显示一个文本框,用于输入新的名称
newName = EditorGUILayout.TextField("New Name", newName);
// 显示一个整数输入框,用于设置起始编号
startNumber = EditorGUILayout.IntField("Start Number", startNumber);
if (GUILayout.Button("Rename Selected"))
{
// 调用重命名方法
RenameSelectedObjects();
}
}
private void RenameSelectedObjects()
{
// 获取当前选中的所有游戏对象
GameObject[] selectedObjects = Selection.gameObjects;
int currentNumber = startNumber;
foreach (GameObject obj in selectedObjects)
{
// 按照设定的规则生成新名称
obj.name = $"{newName}_{currentNumber}";
currentNumber++;
}
}
}
}