From 32cebc67d6f08f97f798164436a2a66e4bee19e3 Mon Sep 17 00:00:00 2001 From: LadyAliceMargatroid Date: Tue, 10 Sep 2024 23:06:32 -0700 Subject: [PATCH] Added UI for DunGenExtender Made DevOnly fields readonly --- .../Attributes/ReadOnlyAttribute.cs | 12 ++ .../Collections/DunGenExtenderProperties.cs | 7 - DunGenPlus/DunGenPlus/DunGenExtender.cs | 1 + DunGenPlus/DunGenPlus/DunGenPlus.csproj | 1 + .../DunGenPlus/DunGenPlus/DunGenPlus.dll | Bin 770560 -> 770560 bytes .../DunGenPlus/DunGenPlusEditor.dll | Bin 6144 -> 12288 bytes DunGenPlus/DunGenPlus/MainPathExtender.cs | 1 + .../DunGenExtenderPropertyDrawer.cs | 137 ++++++++++++++++++ .../DunGenPlusEditor/DunGenPlusEditor.csproj | 3 + .../DunGenPlusEditor/PropertyDrawerUtility.cs | 116 +++++++++++++++ .../PropertyOverridePropertyDrawer.cs | 36 +---- .../ReadOnlyPropertyDrawer.cs | 22 +++ 12 files changed, 295 insertions(+), 41 deletions(-) create mode 100644 DunGenPlus/DunGenPlus/Attributes/ReadOnlyAttribute.cs create mode 100644 DunGenPlus/DunGenPlusEditor/DunGenExtenderPropertyDrawer.cs create mode 100644 DunGenPlus/DunGenPlusEditor/PropertyDrawerUtility.cs create mode 100644 DunGenPlus/DunGenPlusEditor/ReadOnlyPropertyDrawer.cs diff --git a/DunGenPlus/DunGenPlus/Attributes/ReadOnlyAttribute.cs b/DunGenPlus/DunGenPlus/Attributes/ReadOnlyAttribute.cs new file mode 100644 index 0000000..cb3d277 --- /dev/null +++ b/DunGenPlus/DunGenPlus/Attributes/ReadOnlyAttribute.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using UnityEngine; + +namespace DunGenPlus.Attributes { + public class ReadOnlyAttribute : PropertyAttribute { + + } +} diff --git a/DunGenPlus/DunGenPlus/Collections/DunGenExtenderProperties.cs b/DunGenPlus/DunGenPlus/Collections/DunGenExtenderProperties.cs index 9ff3ed9..68877cd 100644 --- a/DunGenPlus/DunGenPlus/Collections/DunGenExtenderProperties.cs +++ b/DunGenPlus/DunGenPlus/Collections/DunGenExtenderProperties.cs @@ -23,25 +23,18 @@ namespace DunGenPlus.Collections { CopyFromNodeList } - [Header("Main Path")] public MainPathProperties MainPathProperties = new MainPathProperties(); - [Header("Dungeon Bounds")] public DungeonBoundsProperties DungeonBoundsProperties = new DungeonBoundsProperties(); - [Header("Normal Nodes Archetypes")] public NormalNodeArchetypesProperties NormalNodeArchetypesProperties = new NormalNodeArchetypesProperties(); - [Header("Forced Tiles")] public ForcedTilesProperties ForcedTilesProperties = new ForcedTilesProperties(); - [Header("Branch Path Multi Simulation")] public BranchPathMultiSimulationProperties BranchPathMultiSimulationProperties = new BranchPathMultiSimulationProperties(); - [Header("Line Randomizer")] public LineRandomizerProperties LineRandomizerProperties = new LineRandomizerProperties(); - [Header("Miscellaneous")] public MiscellaneousProperties MiscellaneousProperties = new MiscellaneousProperties(); [Header("Asset Cache (FOR DEV DEBUG PURPOSES ONLY)")] diff --git a/DunGenPlus/DunGenPlus/DunGenExtender.cs b/DunGenPlus/DunGenPlus/DunGenExtender.cs index 8566545..c765c18 100644 --- a/DunGenPlus/DunGenPlus/DunGenExtender.cs +++ b/DunGenPlus/DunGenPlus/DunGenExtender.cs @@ -19,6 +19,7 @@ namespace DunGenPlus { public DunGenExtenderEvents Events = new DunGenExtenderEvents(); [Header("DEV ONLY: DON'T TOUCH")] + [Attributes.ReadOnly] public string Version = "0"; internal bool Active = true; diff --git a/DunGenPlus/DunGenPlus/DunGenPlus.csproj b/DunGenPlus/DunGenPlus/DunGenPlus.csproj index 71e7fed..863b79e 100644 --- a/DunGenPlus/DunGenPlus/DunGenPlus.csproj +++ b/DunGenPlus/DunGenPlus/DunGenPlus.csproj @@ -129,6 +129,7 @@ + diff --git a/DunGenPlus/DunGenPlus/DunGenPlus/DunGenPlus.dll b/DunGenPlus/DunGenPlus/DunGenPlus/DunGenPlus.dll index e4dae0a34f8c2ec8d3a8c8fac3a06b7f982aafdc..bbcd90e62b5f58bf17469ca037d4c7478c9d0331 100644 GIT binary patch delta 60423 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

rWMO#%q3aD=cd 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 TybJmR0>n7C5x@)Y0g*5V)Zbog delta 60422 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 Dy9iyi diff --git a/DunGenPlus/DunGenPlus/DunGenPlus/DunGenPlusEditor.dll b/DunGenPlus/DunGenPlus/DunGenPlus/DunGenPlusEditor.dll index f56643cbd966f5604c81521c51116344ab405dee..082303de0f91c0c298293d4d73defbc0e86b9237 100644 GIT binary patch literal 12288 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 diff --git a/DunGenPlus/DunGenPlus/MainPathExtender.cs b/DunGenPlus/DunGenPlus/MainPathExtender.cs index 6e6d681..6cde072 100644 --- a/DunGenPlus/DunGenPlus/MainPathExtender.cs +++ b/DunGenPlus/DunGenPlus/MainPathExtender.cs @@ -33,6 +33,7 @@ namespace DunGenPlus { public PropertyOverride> Lines = new PropertyOverride>(false, new List()); [Header("DEV ONLY: DON'T TOUCH")] + [Attributes.ReadOnly] public string Version = "0"; public static IntRange GetLength(MainPathExtender extender, DungeonFlow flow) { diff --git a/DunGenPlus/DunGenPlusEditor/DunGenExtenderPropertyDrawer.cs b/DunGenPlus/DunGenPlusEditor/DunGenExtenderPropertyDrawer.cs new file mode 100644 index 0000000..e01e57f --- /dev/null +++ b/DunGenPlus/DunGenPlusEditor/DunGenExtenderPropertyDrawer.cs @@ -0,0 +1,137 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using UnityEditor; +using UnityEngine.UIElements; +using DunGenPlus; +using DunGenPlus.Collections; + +namespace DunGenPlusEditor { + + [CustomPropertyDrawer(typeof(DunGenExtenderProperties))] + public class DunGenExtenderPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + PropertyDrawerUtility.SetupItems(container, property); + return container; + } + + } + + [CustomPropertyDrawer(typeof(MainPathProperties))] + public class MainPathPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Main Path"); + PropertyDrawerUtility.SetupItemsMainPathProperty(box.container, property, "MainPathCount", "Generating the default one main path"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(DungeonBoundsProperties))] + public class DungeonBoundsPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Dungeon Bounds"); + PropertyDrawerUtility.SetupItemsBoolProperty(box.container, property, "UseDungeonBounds", "Disabled"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(NormalNodeArchetypesProperties))] + public class NormalNodeArchetypesPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Normal Nodes Archetypes"); + PropertyDrawerUtility.SetupItemsBoolProperty(box.container, property, "AddArchetypesToNormalNodes", "Disabled"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(ForcedTilesProperties))] + public class ForcedTilesPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Forced Tiles"); + PropertyDrawerUtility.SetupItemsBoolProperty(box.container, property, "UseForcedTiles", "Disabled"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(BranchPathMultiSimulationProperties))] + public class BranchPathMultiSimulationPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Branch Path Multi Simulation"); + PropertyDrawerUtility.SetupItemsBoolProperty(box.container, property, "UseBranchPathMultiSim", "Disabled"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(LineRandomizerProperties))] + public class LineRandomizerPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Line Randomizer"); + PropertyDrawerUtility.SetupItemsBoolProperty(box.container, property, "UseLineRandomizer", "Disabled"); + container.Add(box.parent); + + return container; + } + + } + + [CustomPropertyDrawer(typeof(MiscellaneousProperties))] + public class MiscellaneousPropertiesPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + + var container = new VisualElement(); + + var box = PropertyDrawerUtility.CreateDropdown(property, "Miscellaneous"); + PropertyDrawerUtility.SetupItems(box.container, property); + container.Add(box.parent); + + return container; + } + + } + +} diff --git a/DunGenPlus/DunGenPlusEditor/DunGenPlusEditor.csproj b/DunGenPlus/DunGenPlusEditor/DunGenPlusEditor.csproj index 6c2a145..ef5f06b 100644 --- a/DunGenPlus/DunGenPlusEditor/DunGenPlusEditor.csproj +++ b/DunGenPlus/DunGenPlusEditor/DunGenPlusEditor.csproj @@ -72,8 +72,11 @@ + + + diff --git a/DunGenPlus/DunGenPlusEditor/PropertyDrawerUtility.cs b/DunGenPlus/DunGenPlusEditor/PropertyDrawerUtility.cs new file mode 100644 index 0000000..d43763c --- /dev/null +++ b/DunGenPlus/DunGenPlusEditor/PropertyDrawerUtility.cs @@ -0,0 +1,116 @@ +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using UnityEditor; +using UnityEditor.UIElements; +using UnityEngine.UIElements; + +namespace DunGenPlusEditor { + public static class PropertyDrawerUtility { + + public static VisualElement CreateBox(string displayName){ + var box = new Box(); + box.style.paddingBottom = 4f; + box.style.paddingLeft = 4f; + box.style.paddingRight = 4f; + box.style.paddingTop = 4f; + box.style.marginBottom = 8f; + + var label = new Label(displayName); + var weight = label.style.unityFontStyleAndWeight; + weight.value = UnityEngine.FontStyle.Bold; + label.style.unityFontStyleAndWeight = weight; + box.Add(label); + + return box; + } + + public static (VisualElement parent, VisualElement container) CreateDropdown(SerializedProperty property, string displayName){ + var box = new Box(); + box.style.paddingBottom = 4f; + box.style.paddingLeft = 4f; + box.style.paddingRight = 4f; + box.style.paddingTop = 4f; + box.style.marginBottom = 8f; + + var foldout = new Foldout(); + foldout.text = displayName; + foldout.style.marginLeft = 10f; + foldout.viewDataKey = $"{property.serializedObject.targetObject.GetInstanceID()}.{property.name}"; + + box.Add(foldout); + + return (box, foldout); + } + + + public static void SetupItemsBoolProperty(VisualElement container, SerializedProperty property, string togglePropertyName, string disabledLabelMessage) { + SetupItems(container, property, togglePropertyName, disabledLabelMessage, (prop) => prop.boolValue); + } + + public static void SetupItemsMainPathProperty(VisualElement container, SerializedProperty property, string togglePropertyName, string disabledLabelMessage) { + SetupItems(container, property, togglePropertyName, disabledLabelMessage, (prop) => prop.intValue > 1); + } + + public static void SetupItems(VisualElement container, SerializedProperty property, string togglePropertyName, string disabledLabelMessage, Func getDisplayStateFunction){ + + SerializedProperty toggleSerializedProperty = null; + PropertyField togglePropertyField = null; + var childrenPropertyFields = new List(); + + var enumerator = property.GetEnumerator(); + var depth = property.depth; + + while(enumerator.MoveNext()){ + var prop = enumerator.Current as SerializedProperty; + if (prop == null || prop.depth > depth + 1) continue; + + var item = new PropertyField(prop); + if (container is Box) item.style.marginLeft = 8f; + + if (prop.name == togglePropertyName) { + toggleSerializedProperty = prop.Copy(); + togglePropertyField = item; + } else { + childrenPropertyFields.Add(item); + } + + container.Add(item); + } + + var defaultItem = new Label(disabledLabelMessage); + if (container is Box) defaultItem.style.marginLeft = 11f; + else defaultItem.style.marginLeft = 3f; + container.Add(defaultItem); + + void SetDisplayState(bool state){ + foreach(var item in childrenPropertyFields){ + item.style.display = state ? DisplayStyle.Flex : DisplayStyle.None; + } + defaultItem.style.display = !state ? DisplayStyle.Flex : DisplayStyle.None; + } + + SetDisplayState(getDisplayStateFunction(toggleSerializedProperty)); + togglePropertyField.RegisterValueChangeCallback(evt => SetDisplayState(getDisplayStateFunction(evt.changedProperty))); + } + + public static void SetupItems(VisualElement container, SerializedProperty property){ + + var enumerator = property.GetEnumerator(); + var depth = property.depth; + + while(enumerator.MoveNext()){ + var prop = enumerator.Current as SerializedProperty; + if (prop == null || prop.depth > depth + 1) continue; + + var item = new PropertyField(prop); + if (container is Box) item.style.marginLeft = 8f; + + container.Add(item); + } + } + } +} diff --git a/DunGenPlus/DunGenPlusEditor/PropertyOverridePropertyDrawer.cs b/DunGenPlus/DunGenPlusEditor/PropertyOverridePropertyDrawer.cs index 82560cb..5a1d64e 100644 --- a/DunGenPlus/DunGenPlusEditor/PropertyOverridePropertyDrawer.cs +++ b/DunGenPlus/DunGenPlusEditor/PropertyOverridePropertyDrawer.cs @@ -16,40 +16,8 @@ namespace DunGenPlusEditor { var container = new VisualElement(); - var box = new Box(); - box.style.paddingBottom = 4f; - box.style.paddingLeft = 4f; - box.style.paddingRight = 4f; - box.style.paddingTop = 4f; - box.style.marginBottom = 8f; - - var label = new Label(property.displayName); - var weight = label.style.unityFontStyleAndWeight; - weight.value = UnityEngine.FontStyle.Bold; - label.style.unityFontStyleAndWeight = weight; - box.Add(label); - - var overrideProperty = property.FindPropertyRelative("Override"); - var valueProperty = property.FindPropertyRelative("Value"); - - var overrideItem = new PropertyField(overrideProperty); - overrideItem.style.marginLeft = 8f; - var valueItem = new PropertyField(valueProperty); - valueItem.style.marginLeft = 8f; - var valueDefaultItem = new Label("Using DungeonFlow's corresponding values"); - valueDefaultItem.style.marginLeft = 11f; - - void SetDisplayState(bool state){ - valueItem.style.display = state ? DisplayStyle.Flex : DisplayStyle.None; - valueDefaultItem.style.display = !state ? DisplayStyle.Flex : DisplayStyle.None; - } - SetDisplayState(overrideProperty.boolValue); - overrideItem.RegisterValueChangeCallback(evt => SetDisplayState(evt.changedProperty.boolValue)); - - box.Add(overrideItem); - box.Add(valueItem); - box.Add(valueDefaultItem); - + var box = PropertyDrawerUtility.CreateBox(property.displayName); + PropertyDrawerUtility.SetupItemsBoolProperty(box, property, "Override", "Using DungeonFlow's corresponding values"); container.Add(box); return container; diff --git a/DunGenPlus/DunGenPlusEditor/ReadOnlyPropertyDrawer.cs b/DunGenPlus/DunGenPlusEditor/ReadOnlyPropertyDrawer.cs new file mode 100644 index 0000000..a83684f --- /dev/null +++ b/DunGenPlus/DunGenPlusEditor/ReadOnlyPropertyDrawer.cs @@ -0,0 +1,22 @@ +using DunGenPlus.Attributes; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using UnityEditor; +using UnityEngine; +using UnityEditor.UIElements; +using UnityEngine.UIElements; + +namespace DunGenPlusEditor { + [CustomPropertyDrawer(typeof(ReadOnlyAttribute))] + public class ReadOnlyPropertyDrawer : PropertyDrawer { + + public override VisualElement CreatePropertyGUI(SerializedProperty property) { + var item = new PropertyField(property); + item.SetEnabled(false); + return item; + } + } +}