From b2fdaaf89f46dbb903c0520cd1cc61c4488d0a91 Mon Sep 17 00:00:00 2001 From: WanderingPixel <126269533+WanderingPix@users.noreply.github.com> Date: Thu, 4 Sep 2025 12:29:19 +0100 Subject: [PATCH] Timed Modifier Enhancements in TaskAdderGame --- MiraAPI/Patches/Freeplay/TaskAdderPatches.cs | 6 ++++++ MiraAPI/Resources/TimedModifierFile.png | Bin 0 -> 5246 bytes MiraAPI/Utilities/Assets/MiraAssets.cs | 5 +++++ 3 files changed, 11 insertions(+) create mode 100644 MiraAPI/Resources/TimedModifierFile.png diff --git a/MiraAPI/Patches/Freeplay/TaskAdderPatches.cs b/MiraAPI/Patches/Freeplay/TaskAdderPatches.cs index ae49ed4..db4c5b0 100644 --- a/MiraAPI/Patches/Freeplay/TaskAdderPatches.cs +++ b/MiraAPI/Patches/Freeplay/TaskAdderPatches.cs @@ -355,6 +355,12 @@ internal static class TaskAdderPatches } })); + if (Modifier is TimedModifer timed) + { + taskAddButton.FileImage.sprite = MiraAssets.TimedModifierFile.LoadAsset(); + taskAddButton.Text.text += $"\n {timed.Duration}s"; + } + instance.AddFileAsChildCustom(taskAddButton, ref num, ref num2, ref num3); ControllerManager.Instance.AddSelectableUiElement(taskAddButton.Button); diff --git a/MiraAPI/Resources/TimedModifierFile.png b/MiraAPI/Resources/TimedModifierFile.png new file mode 100644 index 0000000000000000000000000000000000000000..666bd48f31afd7cc804d2c0b55c43d588baa8a1c GIT binary patch literal 5246 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 Skj(#nqJh-))EZT6qyGo?l+QH) literal 0 HcmV?d00001 diff --git a/MiraAPI/Utilities/Assets/MiraAssets.cs b/MiraAPI/Utilities/Assets/MiraAssets.cs index 148c65a..0da66ae 100644 --- a/MiraAPI/Utilities/Assets/MiraAssets.cs +++ b/MiraAPI/Utilities/Assets/MiraAssets.cs @@ -99,4 +99,9 @@ public static class MiraAssets /// Gets the sprite used for the Keybind icons. /// public static LoadableResourceAsset KeybindButton { get; } = new("MiraAPI.Resources.KeybindButton.png"); + + /// + /// Gets the sprite used for timed modifier file in TaskAdderGame. + /// + public static LoadableResourceAsset TimedModifierFile { get; } = new("MiraAPI.Resources.TimedModifierFile.png"); }