Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-07-05 | fix PyTK compatibility mode not handling some edge cases | Jesse Plamondon-Willard | |
2022-06-10 | add image compatibility mode for PyTK | Jesse Plamondon-Willard | |
2022-06-10 | fix accidental case-sensitivity change | Jesse Plamondon-Willard | |
2022-06-10 | use IRawTextureData instead of intermediate tuple | Jesse Plamondon-Willard | |
2022-06-10 | simplify asset type validaiton | Jesse Plamondon-Willard | |
2022-06-10 | apply style conventions | Jesse Plamondon-Willard | |
2022-06-10 | Refactored ModContentManager.cs so it actually fit on my 1440p screens. | Ameisen | |
Changed LocalTilesheetExtensions into an array. Marked 'CreateTemporary' as 'Obsolete' which is conventional for methods that only throw. Moved the type validation logic into its own method as it's largely shared for each loader. Changed allocators to use `GC.AllocateUninitializedArray`, as the data does not need to be initialized. Changed `LoadRawImageData` to use a `ValueTuple` return instead of returning with multiple `out`s, which is bad practice. Preferred rethrowing handlers rather than exception filters (which generate bizarre and _very difficult to patch_ code). Marked GetLoadError as debugger step through and hidden, as it's just an exception generator. Marked PremultiplyTransparency, GetContentKeyForTilesheetImageSource, and LoadRawImageData as static as they have no dependency on instance data (nor should they). Fixed `.xnb` extension search to properly use OrdinalIgnoreCase. | |||
2022-06-10 | simplify pixel conversion loop | Jesse Plamondon-Willard | |
2022-06-10 | encapsulate loading the raw image data for mod patching | Jesse Plamondon-Willard | |
2022-06-10 | add validation error when loading XNB file as IRawTextureData | Jesse Plamondon-Willard | |
2022-06-10 | enable raw image loading by default, rename setting | Jesse Plamondon-Willard | |
2022-06-10 | add IRawTextureData asset type | Jesse Plamondon-Willard | |
2022-06-10 | add experimental image load rewrite | Jesse Plamondon-Willard | |
2022-05-27 | fix typo | Jesse Plamondon-Willard | |
2022-05-15 | fix typo | Jesse Plamondon-Willard | |
2022-05-11 | add error code to SContentLoadException | Jesse Plamondon-Willard | |
2022-05-07 | simplify and rewrite case-insensitive file path feature | Jesse Plamondon-Willard | |
2022-05-04 | remove aggressive memory optimizations option | Jesse Plamondon-Willard | |
2022-05-04 | disable case-insensitive paths by default pending performance rework | Jesse Plamondon-Willard | |
2022-04-16 | move case-insensitive path lookup into toolkit for reuse | Jesse Plamondon-Willard | |
2022-04-13 | enable nullable annotations in the rest of SMAPI core (#837) | Jesse Plamondon-Willard | |
2022-04-06 | enable nullable annotations by default (#837) | Jesse Plamondon-Willard | |
This adds `#nullable disable` to all existing code (except where null is impossible like enum files), so it can be migrated incrementally. | |||
2022-04-06 | remove some unused/redundant code | Jesse Plamondon-Willard | |
2022-04-06 | fix asset name truncation when loading XNB mod file without file extension | Jesse Plamondon-Willard | |
2022-04-03 | split mod content load method, make error-handling more consistent | Jesse Plamondon-Willard | |
2022-04-01 | make mod file paths case-insensitive in all SMAPI APIs | Jesse Plamondon-Willard | |
2022-04-01 | fix local file path asset name parsing locale codes in rare cases (#766) | Jesse Plamondon-Willard | |
Mod file paths can't be localized through the content pipeline. Normally the locale would be ignored anyway due to the file extension, but it'd be incorrectly parsed if the file name ended with a locale and no file extension (like "assets/example.fr-FR"). | |||
2022-04-01 | keep old XNB file extension behavior for backwards compatibility (#766) | Jesse Plamondon-Willard | |
2022-03-27 | add asset type to AssetRequested event (#766) | Jesse Plamondon-Willard | |
2022-03-26 | rewrite content loading to allow handling locale variants (#766, #786, #812) | Jesse Plamondon-Willard | |
The game's content pipeline automatically loads localized variants if present. For example, it will try to load "Maps/cave.fr-FR", then "Maps/cave_international", then "Maps/cave". The old content API obfuscates this logic and treats them as interchangeable, which causes edge cases like bundle corruption (#812). This commit rewrites the loading logic to match the game logic when using the new content events, while maintaining the legacy behavior for the old IAssetLoader/IAssetEditor interfaces that'll be removed in SMAPI 4.0.0. | |||
2022-03-05 | add DoesAssetExist to support the upcoming Stardew Valley 1.6 (#766) | Jesse Plamondon-Willard | |
2022-03-05 | migrate more internal code to IAssetName (#766) | Jesse Plamondon-Willard | |
2022-03-05 | fix regression with mod XNB files in the content pipeline (#766) | Jesse Plamondon-Willard | |
2022-02-22 | avoid SetData when premultiplying texture with no semi-transparency | Jesse Plamondon-Willard | |
2022-02-18 | add AssetName to encapsulate asset name handling (#766) | Jesse Plamondon-Willard | |
2021-11-28 | add support for loading BmFont files for custom languages | Jesse Plamondon-Willard | |
2021-11-28 | remove libgdiplus workaround on macOS | Jesse Plamondon-Willard | |
This is no longer needed after the .NET 5 migration. | |||
2021-07-30 | migrate to the new Harmony patch pattern used in my mods | Jesse Plamondon-Willard | |
That improves validation and error-handling. | |||
2021-07-20 | fix error loading .xnb files from the local mod folder since SMAPI 3.0 | Jesse Plamondon-Willard | |
2021-05-02 | add verbose logs for map tilesheet changes | Jesse Plamondon-Willard | |
2021-05-02 | add support for dot-ignoring local map tilesheet files (#732) | Jesse Plamondon-Willard | |
2021-05-01 | match tilesheets without extension to .png files automatically if possible | Jesse Plamondon-Willard | |
2021-02-21 | use inheritdoc, minor cleanup | Jesse Plamondon-Willard | |
2021-01-31 | add experimental 'aggressive memory optimization' flag (#757) | Jesse Plamondon-Willard | |
2021-01-20 | fix SDV 1.5 compatibility with content packs that still load XNB maps | Jesse Plamondon-Willard | |
2020-12-26 | fix SMAPI using a cached translation when the game asks for an untranslated ↵ | Jesse Plamondon-Willard | |
asset This mainly affects community center bundles in Stardew Valley 1.5, | |||
2020-12-20 | update for map tilesheet changes | Jesse Plamondon-Willard | |
2020-08-29 | format code | Jesse Plamondon-Willard | |
2020-07-26 | use ordinal comparison/sorting instead of invariant | Jesse Plamondon-Willard | |
2020-06-07 | improve premultiplication performance | Jesse Plamondon-Willard | |