46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
using UnityEditor;
|
|||
|
|
using System.Linq;
|
|||
|
|
|
|||
|
|
public class RenameTool : EditorWindow
|
|||
|
|
{
|
|||
|
|
private string prefix = "Object_"; //ǰ
|
|||
|
|
private int startIndex = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼֵ
|
|||
|
|
private int step = 1; //<2F><><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD>ֵ
|
|||
|
|
|
|||
|
|
[MenuItem("Tools/Rename Tool")] //<2F><>Unity<74>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Rename Tool<6F><6C><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>ѡ<EFBFBD><D1A1>
|
|||
|
|
public static void ShowWindow()
|
|||
|
|
{
|
|||
|
|
EditorWindow.GetWindow(typeof(RenameTool));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void OnGUI()
|
|||
|
|
{
|
|||
|
|
GUILayout.Label("Object Renaming Tool", EditorStyles.boldLabel); //<2F>ڱ༭<DAB1><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
prefix = EditorGUILayout.TextField("Prefix:", prefix); //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ǰ
|
|||
|
|
|
|||
|
|
startIndex = EditorGUILayout.IntField("Start Index:", startIndex); //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD>ʼֵ
|
|||
|
|
|
|||
|
|
step = EditorGUILayout.IntField("Step:", step); //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵĵ<C5B5><C4B5><EFBFBD>ֵ
|
|||
|
|
|
|||
|
|
if (GUILayout.Button("Rename Selected Objects"))
|
|||
|
|
{
|
|||
|
|
RenameSelectedObjects(); //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ť<EFBFBD><C5A5><EFBFBD>Ա<EFBFBD><D4B1>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>ʼ<EFBFBD><CABC>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private void RenameSelectedObjects()
|
|||
|
|
{
|
|||
|
|
int index = startIndex;
|
|||
|
|
|
|||
|
|
var result = Selection.gameObjects.OrderBy(obj => obj.transform.GetSiblingIndex());
|
|||
|
|
|
|||
|
|
foreach (GameObject gameObject in result) //ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>е<EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
{
|
|||
|
|
gameObject.name = prefix + index; //Ϊ<><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<C7B0><D7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
index += step; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|