From 67727945da9c7b028c6f012ab02eaa5ea0070c29 Mon Sep 17 00:00:00 2001 From: David Higueros <111460331+TheDavSmasher@users.noreply.github.com> Date: Sun, 21 Jun 2026 20:35:47 -0600 Subject: [PATCH] Changed to store a reference to the property's value instance --- MiraAPI/GameOptions/Attributes/ModdedOptionListAttribute.cs | 5 +++-- MiraAPI/GameOptions/ModdedOptionsManager.cs | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/MiraAPI/GameOptions/Attributes/ModdedOptionListAttribute.cs b/MiraAPI/GameOptions/Attributes/ModdedOptionListAttribute.cs index 3e26432..4a89375 100644 --- a/MiraAPI/GameOptions/Attributes/ModdedOptionListAttribute.cs +++ b/MiraAPI/GameOptions/Attributes/ModdedOptionListAttribute.cs @@ -15,7 +15,7 @@ public abstract class ModdedOptionListAttribute(Func titler) : Prop internal PropertyInfo? BaseProperty { get; set; } - internal AbstractOptionGroup? Group { get; set; } + internal object? Value { get; set; } /// /// Gets the function to title of the options. @@ -28,6 +28,7 @@ public abstract class ModdedOptionListAttribute(Func titler) : Prop /// The new values as an object. public override void SetValue(object value) { + Value = value; var list = (IList)value; if (list.Count != HolderOptionList!.Count) { @@ -53,7 +54,7 @@ public abstract class ModdedOptionListAttribute(Func titler) : Prop /// The value of the options as an object. public override object GetValue() { - return BaseProperty!.GetValue(Group)!; + return Value!; } /// diff --git a/MiraAPI/GameOptions/ModdedOptionsManager.cs b/MiraAPI/GameOptions/ModdedOptionsManager.cs index 3dbab02..d9c42bc 100644 --- a/MiraAPI/GameOptions/ModdedOptionsManager.cs +++ b/MiraAPI/GameOptions/ModdedOptionsManager.cs @@ -194,6 +194,7 @@ public static class ModdedOptionsManager OptionAttributes.Add(property, attribute); attribute.HolderOptionList = optionList; + attribute.Value = propertyVal; for (int i = 0; i < optionList.Count; i++) {