From 86991edbd263e868ed413150daf50121523d564a Mon Sep 17 00:00:00 2001 From: PhatPhuckDave Date: Fri, 27 Sep 2024 22:16:39 +0200 Subject: [PATCH] Add Melonpreferences --- ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.cs | 28 +++++++++++++------ .../ArmsTradeTycoonTanks.csproj | 17 +++++++++++ 2 files changed, 36 insertions(+), 9 deletions(-) diff --git a/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.cs b/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.cs index 7da9f85..fb6cd0a 100644 --- a/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.cs +++ b/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.cs @@ -2,15 +2,25 @@ using System.Linq; using Il2CppFunGI.ATTT.Game.Gameplay.FinancialReport; using MelonLoader; +using UnityEngine; namespace ArmsTradeTycoonTanks { public static class Global { - public static bool Debug = true; - public static float MoneyMultiplier = 1.0f; + private static MelonPreferences_Category category; + public static MelonPreferences_Entry Debug; + public static MelonPreferences_Entry MoneyMultiplier; + + public static void InitializePreferences() { + category = MelonPreferences.CreateCategory("ArmsTradeTycoonTanks"); + + Debug = category.CreateEntry("Debug", true, description: "Enable debug mode"); + MoneyMultiplier = category.CreateEntry("MoneyMultiplier", 1.0f, description: "Multiplier for money gains"); + } } - + public class ArmsTradeTycoonTanksMelonMod : MelonMod { public override void OnInitializeMelon() { + Global.InitializePreferences(); LoggerInstance.Msg("Phat Melon mod loaded"); HarmonyLib.Harmony harmony = HarmonyInstance; harmony.PatchAll(); @@ -28,15 +38,15 @@ namespace ArmsTradeTycoonTanks { [HarmonyLib.HarmonyPrefix] [HarmonyLib.HarmonyPatch(typeof(FinancialReportSystem), "HandleMoneyUpdated")] public static void PrefixMoney(ref long __0) { - if (Global.Debug) - Console.WriteLine($"Money is {__0}"); + if (Global.Debug.Value) + Debug.Log($"Money is {__0}"); if (__0 > 0) { - __0 = (long)(__0 * Global.MoneyMultiplier); - if (Global.Debug) - Console.WriteLine($"Money modified to {__0}"); + __0 = (long)(__0 * Global.MoneyMultiplier.Value); + if (Global.Debug.Value) + Debug.Log($"Money modified to {__0}"); } } - + // [HarmonyLib.HarmonyPostfix] // [HarmonyLib.HarmonyPatch(typeof(TechTreeModel), nameof(TechTreeModel.GetBonusPeoplePerMinute))] // public static void PostfixPeoplePerMinute(ref float __result) { diff --git a/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.csproj b/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.csproj index dbce295..bef7a31 100644 --- a/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.csproj +++ b/ArmsTradeTycoonTanks/ArmsTradeTycoonTanks.csproj @@ -3,8 +3,10 @@ C:/Games/Arms Trade Tycoon Tanks + $(GAME_DIR)/UserLibs $(GAME_DIR)/MelonLoader $(GAME_MELON)/Il2CppAssemblies + $(GAME_MELON)/net6 Debug AnyCPU {DA9D274E-486F-4F82-84FF-CD9388CB0B09} @@ -57,6 +59,21 @@ $(GAME_MANAGED)/Il2CppATTT.Game.dll + + $(GAME_MANAGED)/Il2CppSystem.dll + + + $(GAME_MANAGED)/Il2Cppmscorlib.dll + + + $(GAME_NET6)/Il2CppInterop.Runtime.dll + + + $(GAME_NET6)/Il2CppInterop.Common.dll + + + $(GAME_USER_LIBS)/UrGUI.dll +