From 144be5addc2dfb70a195606a4c869af0a2da4165 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 20 Mar 2024 02:11:50 -0400 Subject: [PATCH 1/3] add CurseForge download link to main page --- src/SMAPI.Web/Views/Index/Index.cshtml | 3 ++- .../wwwroot/Content/images/curseforge-icon.png | Bin 0 -> 217 bytes .../Content/images/direct-download-icon.png | Bin 250 -> 0 bytes .../wwwroot/Content/images/github-logo.png | Bin 0 -> 1143 bytes 4 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 src/SMAPI.Web/wwwroot/Content/images/curseforge-icon.png delete mode 100644 src/SMAPI.Web/wwwroot/Content/images/direct-download-icon.png create mode 100644 src/SMAPI.Web/wwwroot/Content/images/github-logo.png diff --git a/src/SMAPI.Web/Views/Index/Index.cshtml b/src/SMAPI.Web/Views/Index/Index.cshtml index d6472fcb6..29befae65 100644 --- a/src/SMAPI.Web/Views/Index/Index.cshtml +++ b/src/SMAPI.Web/Views/Index/Index.cshtml @@ -27,7 +27,8 @@ Download SMAPI @Model.StableVersion.Version
Player guide
diff --git a/src/SMAPI.Web/wwwroot/Content/images/curseforge-icon.png b/src/SMAPI.Web/wwwroot/Content/images/curseforge-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e43f675be979cd97342698004d77170d65a8fe03 GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%G}c0*}aI1_r*vAk26?e?fO-}#- literal 0 HcmV?d00001 diff --git a/src/SMAPI.Web/wwwroot/Content/images/direct-download-icon.png b/src/SMAPI.Web/wwwroot/Content/images/direct-download-icon.png deleted file mode 100644 index 6c30ca366009323a01ffecb05128410370d1d0a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VOS+@4BLl<6e(pbstUx|zfk$L9 z0|Vb75M~tB@M-`GN|v}rlmzFem6RtIr7{#GX6BXX<)xM=nCKbk85w?5$eapPRPO2G z7-Hf7wkMj8L6L)b@BgKdCYp)awRPD>Zta(n(t`h7(SBg5occ_3*Ck5@IJK)_3&Z|d z$LF(Go~Se9Uf#CSMHFnGH9xvXw z)kV+acCcq<_@>FRtP?!Aoq4VMr%6nV9d&Pv=Uo#!zvQ+^{|5_$zJw`^U8;Bfw8%== z_SCoDn;|;!rpoontXje^1D~9!nR+)!Z{d3zBijWZqvrvwW=!&Scd7QjwDk{=!&%@F zS`sf3ua+fMy@lbR!0H#IC{D`hDcoYo$%A#DNv-f|MKcH zlG0N$mQ6QG(O8+`#Nj&A>4eSs-|Nfcw@&-!UtatAPW8Up&K0dQzp^bpnPT$d=tQ6a z&S|GNT(!zE?B`gc6lBrKXyykdhlSh{6AUe% z&Y8!_mhM~pnR^1W&q9L@5w};VY+`9~7U^aDm^w|xQ`d9PB!;9wFQ%0xv3?hge>AG3 zHe5Bmc4gr-=hqHxn+~)!N3S&8rD?Ni3+t0@|JT1?(hz%!d#_W=&fcAKEA!aF#LD>W ze7EZRowXN5S*kgT`Xg3U>Db!t|MKnY>$t}4-x*z9b$Ae;Id+`rXnfeIgGGU)2)Vh?11Vl2ohYqEsNoU}RuqqHAERYiJo_U}|MxXk}oe zZD3$!U~uM0{UH<$x%nxXX_dG&?45bM4yZu`ZbM0CZfbE!Vr~JZ9zz3&B^!5s7X#{H N@O1TaS?83{1OUMjW4-_Y literal 0 HcmV?d00001 From f114904ca25e209788465a3bf9fee0ddb35c323d Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 20 Mar 2024 02:11:50 -0400 Subject: [PATCH 2/3] fix error in some cases when rewritten mod code removes an item from an inventory --- docs/release-notes.md | 4 ++++ .../Internal/InventoryToNetObjectList.cs | 10 ++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/release-notes.md b/docs/release-notes.md index 3413ae041..1b1758415 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,6 +1,10 @@ ← [README](README.md) # Release notes +# Upcoming release +* For players: + * Fixed error in some cases when rewritten mod code removes an item from an inventory. + ## 4.0.0 Released 19 March 2024 for Stardew Valley 1.6.0 or later. See [release highlights](https://www.patreon.com/posts/100388693). diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/StardewValley_1_6/Internal/InventoryToNetObjectList.cs b/src/SMAPI/Framework/ModLoading/Rewriters/StardewValley_1_6/Internal/InventoryToNetObjectList.cs index 5d22fcdfb..585fd2752 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/StardewValley_1_6/Internal/InventoryToNetObjectList.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/StardewValley_1_6/Internal/InventoryToNetObjectList.cs @@ -85,8 +85,14 @@ public override void RemoveAt(int index) /// The new value. private void OnInventorySlotChanged(Inventory inventory, int index, Item before, Item after) { - // don't use `this` to avoid re-editing the inventory - base[index] = after; + try + { + base[index] = after; + } + catch + { + this.RebuildList(); // if the item list is out of sync, rebuild it + } } /// Handle the underlying inventory getting replaced with a new list. From 59d9a01a325be9e9bf284083aa895e3a7668596e Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 20 Mar 2024 02:15:34 -0400 Subject: [PATCH 3/3] prepare for release --- build/common.targets | 2 +- docs/release-notes.md | 9 +++++++-- src/SMAPI.Mods.ConsoleCommands/manifest.json | 4 ++-- src/SMAPI.Mods.SaveBackup/manifest.json | 4 ++-- src/SMAPI/Constants.cs | 2 +- 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/build/common.targets b/build/common.targets index 18feca830..35dcdfc93 100644 --- a/build/common.targets +++ b/build/common.targets @@ -7,7 +7,7 @@ repo. It imports the other MSBuild files as needed. - 4.0.0 + 4.0.1 SMAPI latest $(AssemblySearchPaths);{GAC} diff --git a/docs/release-notes.md b/docs/release-notes.md index 1b1758415..0add523cf 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,9 +1,14 @@ ← [README](README.md) # Release notes -# Upcoming release +# 4.0.1 +Released 20 March 2024 for Stardew Valley 1.6.0 or later. + * For players: - * Fixed error in some cases when rewritten mod code removes an item from an inventory. + * Fixed error in some cases when rewritten mod code removes items from an inventory. + +* For the web UI: + * Added CurseForge download link to main page for cases where Nexus is unavailable. ## 4.0.0 Released 19 March 2024 for Stardew Valley 1.6.0 or later. See [release highlights](https://www.patreon.com/posts/100388693). diff --git a/src/SMAPI.Mods.ConsoleCommands/manifest.json b/src/SMAPI.Mods.ConsoleCommands/manifest.json index 8267c9ae5..0711bc561 100644 --- a/src/SMAPI.Mods.ConsoleCommands/manifest.json +++ b/src/SMAPI.Mods.ConsoleCommands/manifest.json @@ -1,9 +1,9 @@ { "Name": "Console Commands", "Author": "SMAPI", - "Version": "4.0.0", + "Version": "4.0.1", "Description": "Adds SMAPI console commands that let you manipulate the game.", "UniqueID": "SMAPI.ConsoleCommands", "EntryDll": "ConsoleCommands.dll", - "MinimumApiVersion": "4.0.0" + "MinimumApiVersion": "4.0.1" } diff --git a/src/SMAPI.Mods.SaveBackup/manifest.json b/src/SMAPI.Mods.SaveBackup/manifest.json index e45015093..35e5a0bf4 100644 --- a/src/SMAPI.Mods.SaveBackup/manifest.json +++ b/src/SMAPI.Mods.SaveBackup/manifest.json @@ -1,9 +1,9 @@ { "Name": "Save Backup", "Author": "SMAPI", - "Version": "4.0.0", + "Version": "4.0.1", "Description": "Automatically backs up all your saves once per day into its folder.", "UniqueID": "SMAPI.SaveBackup", "EntryDll": "SaveBackup.dll", - "MinimumApiVersion": "4.0.0" + "MinimumApiVersion": "4.0.1" } diff --git a/src/SMAPI/Constants.cs b/src/SMAPI/Constants.cs index 9d836b3b9..7acc8ca54 100644 --- a/src/SMAPI/Constants.cs +++ b/src/SMAPI/Constants.cs @@ -49,7 +49,7 @@ internal static class EarlyConstants internal static int? LogScreenId { get; set; } /// SMAPI's current raw semantic version. - internal static string RawApiVersion = "4.0.0"; + internal static string RawApiVersion = "4.0.1"; } /// Contains SMAPI's constants and assumptions.