Files
HauntedBloodlines/Assets/Editor/NearbyRoomsChangerEditor.cs
2025-05-29 22:31:40 +03:00

47 lines
1.5 KiB
C#

using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(NearbyRoomsChanger))]
public class NearbyRoomsChangerEditor : Editor
{
public override void OnInspectorGUI()
{
serializedObject.Update();
NearbyRoomsChanger changer = (NearbyRoomsChanger)target;
EditorGUILayout.PropertyField(serializedObject.FindProperty("targetRoomTrigger"));
if (changer.targetRoomTrigger != null)
{
RoomTrigger rt = changer.targetRoomTrigger;
if (rt.nearbyRoomCategories != null && rt.nearbyRoomCategories.Count > 0)
{
string[] categoryNames = new string[rt.nearbyRoomCategories.Count];
for (int i = 0; i < rt.nearbyRoomCategories.Count; i++)
{
categoryNames[i] = rt.nearbyRoomCategories[i].categoryName;
}
changer.selectedCategoryIndex = EditorGUILayout.Popup("Category", changer.selectedCategoryIndex, categoryNames);
if (GUILayout.Button("Set Selected Category"))
{
changer.SetSelectedCategory();
}
}
else
{
EditorGUILayout.HelpBox("Target RoomTrigger has no categories.", MessageType.Warning);
}
}
else
{
EditorGUILayout.HelpBox("Assign a Target RoomTrigger to select a category.", MessageType.Info);
}
serializedObject.ApplyModifiedProperties();
}
}