Commit Graph

3625 Commits

Author SHA1 Message Date
bladeoflight16 db06291fdb Removing duplicate import of common.targets, eliminates several warnings 2021-07-31 15:30:27 -04:00
bladeoflight16 f7f49aa8df Target typed constructors are not yet supported by Mono. Adding explicit class name to resolve build error. 2021-07-31 15:28:22 -04:00
Jesse Plamondon-Willard 80d5672cdb
fix crash when farm name contains invalid-in-file-path characters (#791) 2021-07-31 01:50:31 -04:00
Jesse Plamondon-Willard dc78d944e8
recover save when mods leave null objects in the world 2021-07-30 01:48:22 -04:00
Jesse Plamondon-Willard 940bf92241
refactor save game patcher to minimize repeated iterations 2021-07-30 01:40:43 -04:00
Jesse Plamondon-Willard 10b7758bd2
fix build error on Linux 2021-07-30 00:56:37 -04:00
Jesse Plamondon-Willard 948c800a98
migrate to the new Harmony patch pattern used in my mods
That improves validation and error-handling.
2021-07-30 00:54:15 -04:00
Jesse Plamondon-Willard 4074f697d7
rename patch classes for consistency 2021-07-30 00:40:12 -04:00
Jesse Plamondon-Willard aa65b2e2f6
split patch classes which target multiple types 2021-07-30 00:34:53 -04:00
Jesse Plamondon-Willard 737a434ad6
reduce ErrorHandler's direct references to internal SMAPI code
That will allow removing the InternalsVisibleTo attribute to avoid namespace conflicts in an upcoming commit.
2021-07-29 22:50:50 -04:00
Jesse Plamondon-Willard 880cd7b8ba
fix handling of Unicode characters in console 2021-07-28 21:20:44 -04:00
Jesse Plamondon-Willard e8ad5d0a24
fix Data\Movies error regression when patching dictionary (#711) 2021-07-28 18:03:49 -04:00
Jesse Plamondon-Willard b4f307e1ba
fix rewritten Harmony 1.x code not raising 'detected game patch' flag (#711) 2021-07-28 00:51:45 -04:00
Jesse Plamondon-Willard 6a6c484b98
add accessed key to dictionary KeyNotFoundException message 2021-07-28 00:49:54 -04:00
Jesse Plamondon-Willard b2a1a51dea
Merge pull request #793 from bladeoflight16/clearremoveable
Add an option to world_clear that leaves permanent objects alone
2021-07-28 00:38:26 -04:00
Jesse Plamondon-Willard e3010f7c41
refactor new code a bit 2021-07-28 00:36:34 -04:00
Jesse Plamondon-Willard 507154bf34
Merge pull request #792 from bladeoflight16/monofix
Fix build error in MonoDevelop
2021-07-28 00:28:23 -04:00
bladeoflight16 428f0c5880 world_clear: Adding 'removeable' option that includes everything except permanent bushes 2021-07-27 17:23:54 -04:00
bladeoflight16 ec7af3e2ee world_clear: Lining up parameter descriptions 2021-07-27 17:23:54 -04:00
bladeoflight16 97710d6f47 Fixing mono incompatibility (case exception type statement without variable) 2021-07-27 17:17:56 -04:00
Jesse Plamondon-Willard bdae52c9ae
fix rewriting for Harmony ExceptionBlock type (#711) 2021-07-26 22:28:32 -04:00
Jesse Plamondon-Willard 175eaad683
remove now-unneeded Mono.Cecil aliases (#711) 2021-07-23 20:37:26 -04:00
Jesse Plamondon-Willard 167d5831d1
use unmerged Harmony assembly (#711)
Harmony merges Mono.Cecil and MonoMod.Common into its DLL, and keeps some (but not all) of the merged types public. That causes type conflicts in SMAPI's code since it uses both Harmony and Mono.Cecil, and extern aliases break on Linux due to IDE/compiler limitations. This commit uses a custom build of Harmony without the assembly merging, so SMAPI can use and manage Mono.Cecil itself.
2021-07-23 20:29:44 -04:00
Jesse Plamondon-Willard 88be0cee94
fix new validation checks 2021-07-21 23:28:18 -04:00
Jesse Plamondon-Willard 163511e68e
merge release note sections 2021-07-21 23:08:18 -04:00
Jesse Plamondon-Willard 92bcb8405c
Merge branch 'harmony-2' into develop 2021-07-21 22:49:53 -04:00
Jesse Plamondon-Willard 7e5d77fb8c
add error if some SMAPI DLLs have mismatched versions 2021-07-21 00:43:43 -04:00
Jesse Plamondon-Willard c74702b027
fix error loading .xnb files from the local mod folder since SMAPI 3.0 2021-07-20 22:18:57 -04:00
Jesse Plamondon-Willard defa1b9a95
fix concurrency issue in interface proxying 2021-07-20 18:43:56 -04:00
Jesse Plamondon-Willard 735893c1d5
add error if player manually installs wrong SMAPI bitness 2021-07-17 18:52:06 -04:00
Jesse Plamondon-Willard 72b3c9d143
add workaround for Harmony 2.x breaking XNA content pipeline for some assets (#711, #722) 2021-07-14 18:02:13 -04:00
Jesse Plamondon-Willard 8df578edb6
migrate to Harmony 2.1 (#711) 2021-07-13 09:14:07 -04:00
Jesse Plamondon-Willard bd20c2e137
alias Mono.Cecil references (#711)
This is needed to migrate to Harmony 2.0 because it uses MonoMod, which has a copy of Mono.Cecil merged into its assembly, which leads to "type X exists in both 0Harmony.dll and Mono.Cecil.dll" errors. We can't use the version bundled with MonoMod since only some of the types are publicly accessible.
2021-07-11 01:44:02 -04:00
Jesse Plamondon-Willard 8f96a97f07
Merge branch 'develop' into stable 2021-07-09 22:30:13 -04:00
Jesse Plamondon-Willard 60af28760a
prepare for release 2021-07-09 22:29:43 -04:00
Jesse Plamondon-Willard 40a4992170
update launch script on macOS for 1.4.5 multiplayer hotfix (#789)
Thanks to Mr. Podunkian for his help investigating this on macOS!
2021-07-07 13:10:55 -04:00
Jesse Plamondon-Willard 7b097c4f6f
update launch script on Linux for 1.4.5 multiplayer hotfix (#789) 2021-07-02 20:52:22 -04:00
Jesse Plamondon-Willard 5e3a1abbd4
improve error if SMAPI fails to dispose on exit 2021-06-26 11:16:12 -04:00
Jesse Plamondon-Willard 66f8920c29
log trace message if conflicting software is detected 2021-06-24 20:17:34 -04:00
Jesse Plamondon-Willard 4df8f4a656
fix edge case where save constants aren't set correctly 2021-06-11 19:14:59 -04:00
Jesse Plamondon-Willard c212ff15d2
fix installer error for some Windows players 2021-06-11 18:39:38 -04:00
Jesse Plamondon-Willard dfa3beb6a6
fix i18n schema requiring wrong $schema value 2021-05-28 20:24:29 -04:00
Jesse Plamondon-Willard 03f8777afd
add asset propagation for paint masks 2021-05-27 22:59:06 -04:00
Jesse Plamondon-Willard be93327a80
update release notes 2021-05-26 20:11:01 -04:00
Jesse Plamondon-Willard ce84bbd9ae
Merge pull request #779 from DiscipleOfEris/develop
Add `World.FurnitureListChanged` event
2021-05-26 20:04:46 -04:00
DiscipleOfEris 9d7b31afc4 Update FurnitureListChangedEventArgs.cs
Prune unnecessary `using` statements
2021-05-26 11:57:52 -07:00
DiscipleOfEris b149e11338 Add `World.FurnitureListChanged` event
Create a new event available to SMAPI mods to track furniture changes. To facilitate the event, a `FurnitureListChangedEventArgs` class is added as well.

Fixes #778
2021-05-26 11:50:49 -07:00
Jesse Plamondon-Willard 112b505118
update schema for Content Patcher 1.23 2021-05-25 17:42:24 -04:00
Jesse Plamondon-Willard 38a76b5108
allow comments and trailing commas in schemas for VSCode
The `allowComments` and `allowTrailingCommas` fields are VSCode-specific extensions to JSON Schema.
2021-05-22 11:24:34 -04:00
Jesse Plamondon-Willard c310875f90
fix 'loaded with custom settings' message shown with default settings 2021-05-19 23:38:10 -04:00