using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; [CustomEditor(typeof(UIdSystem))] public class UIdSystemInspector : Editor { public override void OnInspectorGUI() { DrawDefaultInspector(); if (IsEditMode()) { GUILayout.BeginHorizontal(); { GUILayout.FlexibleSpace(); if (GUILayout.Button("Update Id", GUILayout.MinWidth(120f), GUILayout.MinHeight(22f))) { Undo.RecordObject(target, "Update Id"); target.InvokeMethod("UpdateId", true); EditorUtility.SetDirty(target); } GUILayout.Space(20f); if (GUILayout.Button("Reassign Id", GUILayout.MinWidth(120f), GUILayout.MinHeight(22f))) { Undo.RecordObject(target, "Reassign Id"); target.InvokeMethod("ReassignId", true); EditorUtility.SetDirty(target); } GUILayout.FlexibleSpace(); } GUILayout.EndHorizontal(); } } private bool IsEditMode() { return !(EditorApplication.isPlaying || EditorApplication.isPaused || EditorApplication.isPlayingOrWillChangePlaymode); } }