diff --git a/StardewArchipelago/Integrations/GenericModConfigMenu/ConfigMenu.cs b/StardewArchipelago/Integrations/GenericModConfigMenu/ConfigMenu.cs index e89d76433..0856c2d7f 100644 --- a/StardewArchipelago/Integrations/GenericModConfigMenu/ConfigMenu.cs +++ b/StardewArchipelago/Integrations/GenericModConfigMenu/ConfigMenu.cs @@ -108,7 +108,7 @@ public void RegisterConfig() configMenu.AddBoolOption( mod: ModManifest, name: () => "Enable Seed Shop Overhaul", - tooltip: () => "", + tooltip: () => "Seed shops are rebalanced to be more in line with the lore and intended gameplay design of Archipelago", getValue: () => Config.EnableSeedShopOverhaul, setValue: (value) => Config.EnableSeedShopOverhaul = value ); @@ -116,15 +116,23 @@ public void RegisterConfig() configMenu.AddBoolOption( mod: ModManifest, name: () => "Hide Empty Archipelago Letters", - tooltip: () => "", + tooltip: () => "Letters that contain neither an item nor an unlock will be skipped, reducing clutter", getValue: () => Config.HideEmptyArchipelagoLetters, setValue: (value) => Config.HideEmptyArchipelagoLetters = value ); + configMenu.AddBoolOption( + mod: ModManifest, + name: () => "Disable Letter Templates", + tooltip: () => "All Archipelago letters will not use a very short and concise format instead of the funny ones full of fluff", + getValue: () => Config.DisableLetterTemplates, + setValue: (value) => Config.DisableLetterTemplates = value + ); + configMenu.AddBoolOption( mod: ModManifest, name: () => "Use Custom Archipelago Icons", - tooltip: () => "", + tooltip: () => "Alternate art style for the Archipelago icons used in various places in the mod", getValue: () => Config.UseCustomArchipelagoIcons, setValue: (value) => Config.UseCustomArchipelagoIcons = value ); @@ -132,7 +140,7 @@ public void RegisterConfig() configMenu.AddBoolOption( mod: ModManifest, name: () => "Skip Hold Up Animations", - tooltip: () => "", + tooltip: () => "Skip all the 'Hold an item above your head' animations", getValue: () => Config.SkipHoldUpAnimations, setValue: (value) => Config.SkipHoldUpAnimations = value ); @@ -140,7 +148,7 @@ public void RegisterConfig() configMenu.AddBoolOption( mod: ModManifest, name: () => "Disable Friendship Decay", - tooltip: () => "", + tooltip: () => "Friendship points no longer go down when you don't talk to NPCs", getValue: () => Config.DisableFriendshipDecay, setValue: (value) => Config.DisableFriendshipDecay = value ); diff --git a/StardewArchipelago/Items/Mail/Mailman.cs b/StardewArchipelago/Items/Mail/Mailman.cs index 4dd9aee8d..1b42ecde8 100644 --- a/StardewArchipelago/Items/Mail/Mailman.cs +++ b/StardewArchipelago/Items/Mail/Mailman.cs @@ -122,7 +122,9 @@ private string GetRandomApMailGiftString() private string GetRandomApMailString() { - var chosenString = ApMailStrings[_random.Next(0, ApMailStrings.Length)]; + var chosenString = ModEntry.Instance.Config.DisableLetterTemplates ? + ApConciseMailString: + ApMailStrings[_random.Next(0, ApMailStrings.Length)]; chosenString += "{3}[#]Archipelago Item"; // Argument {3} is the embed return chosenString; } @@ -173,6 +175,8 @@ public void SendMail(string mailTitle) "I know you've been trying hard to win over a partner for the Flower Dance. This {0} is sure to win over your crush. I just know they'll love it.^^ -{1} from {2}", }; + private const string ApConciseMailString = "{0} from [1] at {2}."; + // 0: Item // 1: Sender // 2: Location diff --git a/StardewArchipelago/ModConfig.cs b/StardewArchipelago/ModConfig.cs index 20d7f7f78..d358b1ae3 100644 --- a/StardewArchipelago/ModConfig.cs +++ b/StardewArchipelago/ModConfig.cs @@ -15,6 +15,12 @@ public class ModConfig /// public bool HideEmptyArchipelagoLetters { get; set; } = false; + /// + /// All Archipelago letters will not use a very short and concise format + /// instead of the funny ones full of fluff + /// + public bool DisableLetterTemplates { get; set; } = false; + /// /// When the archipelago icon shows up in-game, two version of the icons are available. /// The default are the "flat" icons, that come from Archipelago itself and are used in many games