From e9739076b0431ab515094c339aaba6a3143f20fe Mon Sep 17 00:00:00 2001 From: user Date: Tue, 24 Feb 2026 00:05:06 +0900 Subject: [PATCH] =?UTF-8?q?Fix=20:=20=EC=97=90=EB=94=94=ED=84=B0=20UI=20?= =?UTF-8?q?=EB=8F=99=EC=A0=81=20=EB=A6=AC=EB=B9=8C=EB=93=9C=20=EC=8B=9C=20?= =?UTF-8?q?PropertyField=20=EB=B0=94=EC=9D=B8=EB=94=A9=20=EB=88=84?= =?UTF-8?q?=EB=9D=BD=20=EC=88=98=EC=A0=95=20=EB=B0=8F=20=EC=82=AD=EC=A0=9C?= =?UTF-8?q?=20=ED=99=95=EC=9D=B8=20=ED=8C=9D=EC=97=85=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 --- .../Editor/AvatarOutfitControllerEditor.cs | 36 ++++++++----------- .../Editor/CameraManagerEditor.cs | 13 +++---- .../Editor/EventControllerEditor.cs | 17 ++++----- .../Editor/ItemControllerEditor.cs | 17 ++++----- 4 files changed, 32 insertions(+), 51 deletions(-) diff --git a/Assets/Scripts/Streamingle/StreamingleControl/Editor/AvatarOutfitControllerEditor.cs b/Assets/Scripts/Streamingle/StreamingleControl/Editor/AvatarOutfitControllerEditor.cs index 1a695dea2..11007ead1 100644 --- a/Assets/Scripts/Streamingle/StreamingleControl/Editor/AvatarOutfitControllerEditor.cs +++ b/Assets/Scripts/Streamingle/StreamingleControl/Editor/AvatarOutfitControllerEditor.cs @@ -91,6 +91,8 @@ public class AvatarOutfitControllerEditor : Editor { avatarsContainer.Add(CreateAvatarElement(i)); } + + avatarsContainer.Bind(serializedObject); } private VisualElement CreateAvatarElement(int avatarIndex) @@ -264,16 +266,11 @@ public class AvatarOutfitControllerEditor : Editor private void DeleteAvatar(int index) { - var avatar = controller.avatars[index]; - if (EditorUtility.DisplayDialog("아바타 삭제", - $"아바타 '{avatar.avatarName}'을(를) 삭제하시겠습니까?", "삭제", "취소")) - { - Undo.RecordObject(target, "Delete Avatar"); - controller.avatars.RemoveAt(index); - EditorUtility.SetDirty(target); - serializedObject.Update(); - RebuildAvatarList(); - } + Undo.RecordObject(target, "Delete Avatar"); + controller.avatars.RemoveAt(index); + EditorUtility.SetDirty(target); + serializedObject.Update(); + RebuildAvatarList(); } private void SwapAvatars(int a, int b) @@ -301,18 +298,13 @@ public class AvatarOutfitControllerEditor : Editor private void DeleteOutfit(int avatarIndex, int outfitIndex) { - var outfit = controller.avatars[avatarIndex].outfits[outfitIndex]; - if (EditorUtility.DisplayDialog("의상 삭제", - $"의상 '{outfit.outfitName}'을(를) 삭제하시겠습니까?", "삭제", "취소")) - { - Undo.RecordObject(target, "Delete Outfit"); - var outfits = new List(controller.avatars[avatarIndex].outfits); - outfits.RemoveAt(outfitIndex); - controller.avatars[avatarIndex].outfits = outfits.ToArray(); - EditorUtility.SetDirty(target); - serializedObject.Update(); - RebuildAvatarList(); - } + Undo.RecordObject(target, "Delete Outfit"); + var outfits = new List(controller.avatars[avatarIndex].outfits); + outfits.RemoveAt(outfitIndex); + controller.avatars[avatarIndex].outfits = outfits.ToArray(); + EditorUtility.SetDirty(target); + serializedObject.Update(); + RebuildAvatarList(); } #endregion diff --git a/Assets/Scripts/Streamingle/StreamingleControl/Editor/CameraManagerEditor.cs b/Assets/Scripts/Streamingle/StreamingleControl/Editor/CameraManagerEditor.cs index 0fc5314d0..102ca6594 100644 --- a/Assets/Scripts/Streamingle/StreamingleControl/Editor/CameraManagerEditor.cs +++ b/Assets/Scripts/Streamingle/StreamingleControl/Editor/CameraManagerEditor.cs @@ -319,15 +319,10 @@ public class CameraManagerEditor : Editor private void DeletePreset(int index) { - var preset = manager.cameraPresets[index]; - if (EditorUtility.DisplayDialog("프리셋 삭제", - $"프리셋 '{preset.presetName}'을(를) 삭제하시겠습니까?", "삭제", "취소")) - { - Undo.RecordObject(target, "Delete Camera Preset"); - manager.cameraPresets.RemoveAt(index); - EditorUtility.SetDirty(target); - RebuildPresetList(); - } + Undo.RecordObject(target, "Delete Camera Preset"); + manager.cameraPresets.RemoveAt(index); + EditorUtility.SetDirty(target); + RebuildPresetList(); } private void SwapPresets(int a, int b) diff --git a/Assets/Scripts/Streamingle/StreamingleControl/Editor/EventControllerEditor.cs b/Assets/Scripts/Streamingle/StreamingleControl/Editor/EventControllerEditor.cs index 56336e57e..e66c5a53a 100644 --- a/Assets/Scripts/Streamingle/StreamingleControl/Editor/EventControllerEditor.cs +++ b/Assets/Scripts/Streamingle/StreamingleControl/Editor/EventControllerEditor.cs @@ -85,6 +85,8 @@ public class EventControllerEditor : Editor { eventsContainer.Add(CreateEventGroupElement(i)); } + + eventsContainer.Bind(serializedObject); } private VisualElement CreateEventGroupElement(int index) @@ -156,16 +158,11 @@ public class EventControllerEditor : Editor private void DeleteEvent(int index) { - var group = controller.eventGroups[index]; - if (EditorUtility.DisplayDialog("이벤트 삭제", - $"이벤트 '{group.groupName}'을(를) 삭제하시겠습니까?", "삭제", "취소")) - { - Undo.RecordObject(target, "Delete Event Group"); - controller.eventGroups.RemoveAt(index); - EditorUtility.SetDirty(target); - serializedObject.Update(); - RebuildEventList(); - } + Undo.RecordObject(target, "Delete Event Group"); + controller.eventGroups.RemoveAt(index); + EditorUtility.SetDirty(target); + serializedObject.Update(); + RebuildEventList(); } private void SwapEvents(int a, int b) diff --git a/Assets/Scripts/Streamingle/StreamingleControl/Editor/ItemControllerEditor.cs b/Assets/Scripts/Streamingle/StreamingleControl/Editor/ItemControllerEditor.cs index 8eb24ee3e..b7016f92f 100644 --- a/Assets/Scripts/Streamingle/StreamingleControl/Editor/ItemControllerEditor.cs +++ b/Assets/Scripts/Streamingle/StreamingleControl/Editor/ItemControllerEditor.cs @@ -87,6 +87,8 @@ public class ItemControllerEditor : Editor { itemsContainer.Add(CreateItemGroupElement(i)); } + + itemsContainer.Bind(serializedObject); } private VisualElement CreateItemGroupElement(int index) @@ -167,16 +169,11 @@ public class ItemControllerEditor : Editor private void DeleteItem(int index) { - var group = controller.itemGroups[index]; - if (EditorUtility.DisplayDialog("그룹 삭제", - $"그룹 '{group.groupName}'을(를) 삭제하시겠습니까?", "삭제", "취소")) - { - Undo.RecordObject(target, "Delete Item Group"); - controller.itemGroups.RemoveAt(index); - EditorUtility.SetDirty(target); - serializedObject.Update(); - RebuildItemList(); - } + Undo.RecordObject(target, "Delete Item Group"); + controller.itemGroups.RemoveAt(index); + EditorUtility.SetDirty(target); + serializedObject.Update(); + RebuildItemList(); } private void SwapItems(int a, int b)