More peoples and more prestiges

This commit is contained in:
2024-09-26 15:16:01 +02:00
parent 6d782ef9ed
commit 4eee4d89e3

View File

@@ -15,6 +15,9 @@ namespace TavernDave {
public static ConfigEntry<float> moneyMultiplier;
public static ConfigEntry<int> fastSpeed;
public static ConfigEntry<float> staffXpMultiplier;
public static ConfigEntry<float> peoplePerMinuteMultiplier;
public static ConfigEntry<float> peoplePerMinuteOffset;
public static ConfigEntry<float> prestigeMultiplier;
public void Awake() {
moneyMultiplier = Config.Bind("General", "MoneyMultiplier", 1f);
@@ -54,7 +57,7 @@ namespace TavernDave {
Console.WriteLine($"Game speed modified to {gameSpeed}");
}
}
[HarmonyPrefix]
[HarmonyPatch(typeof(StaffModel), "UpdateXp")]
public static void PrefixXp(ref int id, ref int amount) {
@@ -64,5 +67,25 @@ namespace TavernDave {
Console.WriteLine($"Staff xp modified to {amount}");
}
}
[HarmonyPostfix]
[HarmonyPatch(typeof(TechTreeModel), nameof(TechTreeModel.GetBonusPeoplePerMinute))]
public static void PrefixGetBonusPeoplePerMinute(ref float __result) {
__result *= Main.peoplePerMinuteMultiplier.Value;
__result += Main.peoplePerMinuteOffset.Value;
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TavernModel), "RecalculateQuality")]
public static void PrefixRecalculateQuality(ref TavernModel __instance) {
Traverse traverse = Traverse.Create(__instance);
var quality = (int)traverse.Field("Quality").GetValue();
Console.WriteLine($"Quality is {quality}");
if (quality > 0) {
quality = (int)(quality * Main.prestigeMultiplier.Value);
Console.WriteLine($"Quality modified to {quality}");
traverse.Field("Quality").SetValue(quality);
}
}
}
}