diff --git a/Projects/BlacksmithMaster/BlacksmithMaster/Class1.cs b/Projects/BlacksmithMaster/BlacksmithMaster/Class1.cs index 5af870d..89b27ac 100644 --- a/Projects/BlacksmithMaster/BlacksmithMaster/Class1.cs +++ b/Projects/BlacksmithMaster/BlacksmithMaster/Class1.cs @@ -119,26 +119,30 @@ namespace BlacksmithMaster { } } - [HarmonyPatch(typeof(StaffModel), "RefreshGlobalModifiers")] - public class StaffModel_RefreshGlobalModifiers { - public static void Postfix(StaffModel __instance) { - var instanceTrav = Traverse.Create(__instance); + [HarmonyPatch(typeof(TavernModel), "GetNumberOfCustomersPerDay")] + public class TavernModel_GetNumberOfCustomersPerDay { + public static void Postfix(ref int __result) { + Main.LogDebug("Original number of customers per day: " + __result); + __result = (int)(__result * Main.dailyCustomerMultiplier.Value + Main.dailyCustomerOffset.Value); + Main.LogDebug("Modified number of customers per day: " + __result); + } + } - var globalCustomersPerDayMultiplierField = instanceTrav.Field("GlobalCustomersPerDayMultiplier"); - var globalDecorationAdditionMultiplierField = instanceTrav.Field("GlobalDecorationAdditionMultiplier"); - var globalSpeedModifierField = instanceTrav.Field("GlobalSpeedModifier"); + [HarmonyPatch(typeof(TavernModel), "GetBonusPercentageFromDecorations")] + public class TavernModel_GetBonusPercentageFromDecorations { + public static void Postfix(ref int __result) { + Main.LogDebug("Original bonus percentage from decorations: " + __result); + __result = (int)(__result * Main.decorationAdditionMultiplier.Value + Main.decorationAdditionOffset.Value); + Main.LogDebug("Modified bonus percentage from decorations: " + __result); + } + } - Main.LogDebug("Original daily customer: " + globalCustomersPerDayMultiplierField.GetValue()); - globalCustomersPerDayMultiplierField.SetValue(globalCustomersPerDayMultiplierField.GetValue() * Main.dailyCustomerMultiplier.Value + Main.dailyCustomerOffset.Value); - Main.LogDebug("Modified daily customer: " + globalCustomersPerDayMultiplierField.GetValue()); - - Main.LogDebug("Original decoration addition: " + globalDecorationAdditionMultiplierField.GetValue()); - globalDecorationAdditionMultiplierField.SetValue(globalDecorationAdditionMultiplierField.GetValue() * Main.decorationAdditionMultiplier.Value + Main.decorationAdditionOffset.Value); - Main.LogDebug("Modified decoration addition: " + globalDecorationAdditionMultiplierField.GetValue()); - - Main.LogDebug("Original global speed: " + globalSpeedModifierField.GetValue()); - globalSpeedModifierField.SetValue(globalSpeedModifierField.GetValue() * Main.globalSpeedMultiplier.Value + Main.globalSpeedOffset.Value); - Main.LogDebug("Modified global speed: " + globalSpeedModifierField.GetValue()); + [HarmonyPatch(typeof(Economy), "GetWalkingSpeed")] + public class Economy_GetWalkingSpeed { + public static void Postfix(ref float __result) { + Main.LogDebug("Original walking speed: " + __result); + __result = __result * Main.globalSpeedMultiplier.Value + Main.globalSpeedOffset.Value; + Main.LogDebug("Modified walking speed: " + __result); } }