diff --git a/BetterJunimos/BetterJunimos.cs b/BetterJunimos/BetterJunimos.cs index f9cda87..5139147 100644 --- a/BetterJunimos/BetterJunimos.cs +++ b/BetterJunimos/BetterJunimos.cs @@ -251,6 +251,12 @@ void OnDayStarted(object sender, DayStartedEventArgs e) { } if (huts.Any()) { + // players turn this on by mistake and then report items not being used up + if (Config.FunChanges.InfiniteJunimoInventory) { + Monitor.LogOnce("FunChanges.InfiniteJunimoInventory is on: Junimos don't use up seeds, " + + "fertilizer, wages or ability items.", LogLevel.Info); + } + CheckHutsForWagesAndProgressionItems(); Util.Progression.DayStartedProgressionPrompt(Game1.IsWinter, Game1.isRaining); JunimoAbilities.ResetCooldowns(); @@ -503,7 +509,8 @@ private void SetupGenericModConfigMenu() { AddBoolOption( () => Config.JunimoPayment.WorkForWages, val => Config.JunimoPayment.WorkForWages = val, - "cfg.work-for-wages" + "cfg.work-for-wages", + "cfg.work-for-wages.tooltip" ); AddNumberOption( () => Config.JunimoPayment.DailyWage.ForagedItems, diff --git a/BetterJunimos/ModConfig.cs b/BetterJunimos/ModConfig.cs index bea7819..3bc4d19 100644 --- a/BetterJunimos/ModConfig.cs +++ b/BetterJunimos/ModConfig.cs @@ -55,6 +55,7 @@ internal class FunSettings { public float RainyJunimoSpiritFactor = 0.65f; public bool JunimosAlwaysHaveLeafUmbrellas { get; set; } = false; public bool MoreColorfulLeafUmbrellas { get; set; } = false; + // Cheat: Junimos never use up items from the hut chest; see Util.RemoveItemFromChest. public bool InfiniteJunimoInventory { get; set; } = false; } diff --git a/BetterJunimos/Utils/JunimoProgression.cs b/BetterJunimos/Utils/JunimoProgression.cs index c2c3374..f14f43f 100644 --- a/BetterJunimos/Utils/JunimoProgression.cs +++ b/BetterJunimos/Utils/JunimoProgression.cs @@ -366,6 +366,11 @@ private string QuestsDetail() { $"{Get("tracker.working-radius")}: {Util.CurrentWorkingRadius} {Get("tracker.current")}, {BetterJunimos.Config.JunimoHuts.MaxRadius} {Get("tracker.configured")}" }; + // easy to turn on by mistake; show it here where players look when troubleshooting + if (BetterJunimos.Config.FunChanges.InfiniteJunimoInventory) { + quests.Add(Get("cfg.infinite-inventory")); + } + if (!Context.IsMainPlayer) { quests.Add(Get("tracker.progression-info-host-only")); } else { diff --git a/BetterJunimos/Utils/Util.cs b/BetterJunimos/Utils/Util.cs index 987ca2f..d924264 100644 --- a/BetterJunimos/Utils/Util.cs +++ b/BetterJunimos/Utils/Util.cs @@ -88,6 +88,7 @@ public static void AddItemToChest(GameLocation farm, Chest chest, SObject item) for (int index = 0; index < obj.Stack; ++index) Game1.createObjectDebris(item.ItemId, (int)pos.X + 1, (int)pos.Y + 1, -1, item.Quality, 1f, farm); } + // Every item the Junimos use up is removed here; the infinite inventory cheat skips this. public static void RemoveItemFromChest(Chest chest, Item item, int count = 1) { if (BetterJunimos.Config.FunChanges.InfiniteJunimoInventory) { return; diff --git a/BetterJunimos/i18n/default.json b/BetterJunimos/i18n/default.json index b1272a1..be837a5 100644 --- a/BetterJunimos/i18n/default.json +++ b/BetterJunimos/i18n/default.json @@ -40,7 +40,7 @@ "cfg.free": "Free To Construct", "cfg.improvements": "Improvements", "cfg.skills-progression": "Skills Progression", - "cfg.skills-progression.tooltip": "Require each skill to be unlocked", + "cfg.skills-progression.tooltip": "The Junimos ask for items to learn each ability, like working in rain or winter.", "cfg.can-work-in-rain": "Can Work In Rain", "cfg.can-work-in-winter": "Can Work In Winter", "cfg.can-work-in-evenings": "Can Work In Evenings", @@ -61,6 +61,7 @@ "cfg.plant-mixed-seeds.tooltip": "Allow Junimos to plant Mixed Seeds and Mixed Flower Seeds", "cfg.payment": "Payment", "cfg.work-for-wages": "Work For Wages", + "cfg.work-for-wages.tooltip": "Junimos need a daily payment in their hut before they'll work; set the amounts below. This is separate from the items they ask for when Skills Progression is on.", "cfg.foraged-items": "Foraged items", "cfg.flowers": "Flowers", "cfg.fruit": "Fruit", @@ -74,8 +75,8 @@ "cfg.always-have-umbrellas.tooltip": "Junimos always have leaf umbrellas", "cfg.more-colorful-umbrellas": "More colorful umbrellas", "cfg.more-colorful-umbrellas.tooltip": "More Colorful Leaf Umbrellas", - "cfg.infinite-inventory": "Infinite inventory", - "cfg.infinite-inventory.tooltip": "Infinite Junimo inventory", + "cfg.infinite-inventory": "Infinite inventory: Junimos never use up items", + "cfg.infinite-inventory.tooltip": "Cheat: seeds, fertilizer, wages and the items in hut inventory don't get removed.", "cfg.spawn-junimo-keybind": "Spawn Junimo keybind", "cfg.receive-messages": "Receive messages", "cfg.hut-menu-keybind": "Progression tracker keybind", @@ -95,7 +96,7 @@ "tracker.disabled": "disabled by configuration", "tracker.enabled": "enabled", "tracker.unlocked": "unlocked", - "tracker.prompted": "prompted", + "tracker.prompted": "waiting for items", "tracker.not-triggered": "not triggered", "tracker.progression-info-host-only": "Progression info is only available to the host", "debug.prompting-all-quests": "Prompting all quests", diff --git a/BetterJunimos/i18n/zh.json b/BetterJunimos/i18n/zh.json index 01e7ef4..6ec1496 100644 --- a/BetterJunimos/i18n/zh.json +++ b/BetterJunimos/i18n/zh.json @@ -66,8 +66,8 @@ "cfg.always-have-umbrellas.tooltip": "祝尼魔会一直顶着叶子", "cfg.more-colorful-umbrellas": "其他颜色的伞", "cfg.more-colorful-umbrellas.tooltip": "其他颜色的叶子", - "cfg.infinite-inventory": "小屋容量", - "cfg.infinite-inventory.tooltip": "小屋容量无限", + "cfg.infinite-inventory": "无限库存:祝尼魔不会消耗物品", + "cfg.infinite-inventory.tooltip": "作弊:种子、肥料、工资和小屋里的物品都不会被消耗。", "cfg.spawn-junimo-keybind": "召唤祝尼魔按键", "cfg.receive-messages": "小屋有提示信息", "tracker.tracker-title": "查看祝尼魔进度: {{Percentage}}%^^任务:^{{quests}}^^解锁条件:^{{details}}",