diff --git a/source/funkin/modding/PolymodHandler.hx b/source/funkin/modding/PolymodHandler.hx index ae5ca163a..b6b557145 100644 --- a/source/funkin/modding/PolymodHandler.hx +++ b/source/funkin/modding/PolymodHandler.hx @@ -403,9 +403,9 @@ class PolymodHandler // `flixel.util.FlxSave` // resolveFlixelClasses() can access blacklisted packages - Polymod.blacklistStaticFields(flixel.util.FlxSave, ['resolveFlixelClasses', 'save']); + Polymod.blacklistStaticFields(flixel.util.FlxSave, ['resolveFlixelClasses']); // Disallow direct manipulation of save data. - Polymod.blacklistInstanceFields(flixel.util.FlxSave, ['data']); + Polymod.blacklistStaticFields(flixel.FlxG, ['save']); // `funkin.save.Save` // Direct access to save data is important for scripts (like checking unlocks), diff --git a/source/funkin/save/Save.hx b/source/funkin/save/Save.hx index 93b7a1341..fc0834699 100644 --- a/source/funkin/save/Save.hx +++ b/source/funkin/save/Save.hx @@ -217,6 +217,16 @@ class Save implements ConsoleClass } #end + /** + * NOTE: Modifications will not be saved without calling `Save.flush()`! + */ + public var modOptions(get, never):Map; + + function get_modOptions():Map + { + return data.mods.modOptions; + } + /** * The user's current volume setting. */