Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of Regenerate Shards v1.0.0
RegenerateShards.dll
Decompiled 7 months agousing System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Configuration; using GlobalSettings; using HarmonyLib; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("RegenerateShards")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("RegenerateShards")] [assembly: AssemblyCopyright("Copyright © 2025")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("858bb454-93ea-4d92-9b19-d5301dcab3da")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] [assembly: AssemblyVersion("1.0.0.0")] [BepInPlugin("com.slimybonesjones.regenerateshards", "Regenerate Shards", "1.0.0")] public class RegenerateShards : BaseUnityPlugin { private ConfigEntry<int> configShardIncrement; private ConfigEntry<int> configTimePeriod; private ConfigEntry<bool> configPendantRequired; public static float timer; public static bool flag; private void Awake() { configShardIncrement = ((BaseUnityPlugin)this).Config.Bind<int>("General", "ShardIncrement", 5, "The number of shards gained per increment"); configTimePeriod = ((BaseUnityPlugin)this).Config.Bind<int>("General", "TimePeriod", 30, "The amount of time passed in seconds before shards are incremented. Takes Integer Values."); configPendantRequired = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "PendantRequired", false, "Decides if Shard Pendant is required for the effect to work."); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Plugin loaded and initialised"); Harmony.CreateAndPatchAll(typeof(RegenerateShards), (string)null); } private void Update() { if ((!configPendantRequired.Value || ToolItemManager.IsToolEquipped("Bone Necklace")) && CurrencyManager.GetCurrencyAmount((CurrencyType)1) < Gameplay.GetCurrencyCap((CurrencyType)1)) { timer += Time.deltaTime; if (timer >= (float)configTimePeriod.Value) { CurrencyManager.AddShards(configShardIncrement.Value); timer = 0f; } } } }