/// <summary> Give player some starting stuff. Only used for freshly started games. </summary> private void AwardNewGame() { //Monitor.Log("Awarding new game stuff...", LogLevel.Trace); if (Config.GetConfig("newgame_tools")) { if (Config.GetFlagBoolean("ccJunimo")) { UpgradeTool("Watering Can"); UpgradeTool("Hoe"); Monitor.Log("NG+: Local Legend - awarding farming tools upgrade for a new game.", LogLevel.Info); } if (Config.GetFlagBoolean("ccJoja")) { UpgradeTool("Axe"); UpgradeTool("Pickaxe"); Monitor.Log("NG+: Joja Co. Member Of The Year - awarding gathering tools upgrade for a new game.", LogLevel.Info); } if (Config.GetFlagBoolean("fullShipment")) { Game1.player.increaseBackpackSize(12); Monitor.Log("NG+: Full Shipment - awarding backpack upgrade for a new game.", LogLevel.Info); } } if (Config.GetConfig("newgame_assets")) { // 0.1% of maximum held money is awarded int moneyBonus = decimal.ToInt32(Config.GetFlagDecimal("money") / 1000); if (moneyBonus > 0) { Game1.player.Money += moneyBonus; Monitor.Log($"NG+: Hoarder - awarding {moneyBonus}g for a new game.", LogLevel.Info); } if (decimal.ToInt32(Config.GetFlagDecimal("grandpaScore")) == 4) { Game1.player.addItemToInventory(new StardewValley.Object(628, 1)); Game1.player.addItemToInventory(new StardewValley.Object(629, 1)); Game1.player.addItemToInventory(new StardewValley.Object(630, 1)); Game1.player.addItemToInventory(new StardewValley.Object(631, 1)); Game1.player.addItemToInventory(new StardewValley.Object(632, 1)); Game1.player.addItemToInventory(new StardewValley.Object(633, 1)); Monitor.Log("NG+: Perfection - awarding a set of fruit tree saplings for a new game.", LogLevel.Info); } // Burglar's Ring for "Qi's Challenge" if (Config.GetFlagBoolean("QiChallengeComplete")) { Game1.player.leftRing.Value = new Ring(526); // Burglar's Ring Game1.player.leftRing.Value.onEquip(Game1.player, Game1.player.currentLocation); Monitor.Log("NG+: Qi's Challenge - awarding the Burglar's Ring for a new game.", LogLevel.Info); } // Iridium Band for "Protector Of The Valley" if (Config.GetFlagBoolean("areAllMonsterSlayerQuestsComplete")) { Game1.player.leftRing.Value = new Ring(527); // Iridium Band Game1.player.leftRing.Value.onEquip(Game1.player, Game1.player.currentLocation); Monitor.Log("NG+: Protector Of The Valley - awarding the Iridium Band for a new game.", LogLevel.Info); } // TODO: // Bonus 2 starting hearts with everyone for "Popular"? // Statue of Perfection for "Fector's Challenge"? } Monitor.Log("NG+: Awarding new game stuff completed.", LogLevel.Trace); }