Releases: brunomikoski/ScriptableObjectCollection
Releases · brunomikoski/ScriptableObjectCollection
Unity 2021 Support Fixes
Mobile Hotfix
New Collection References
What's Changed
- Feature/add references by @IkeikeP in #99
- fix: meta by @brunomikoski in #102
New Contributors
Full Changelog: v1.8.3...v1.9.0
Unity 2021 Support
Changed
- Fixed
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
issue with unity 2021 and generics.
Bug Fixes and Method Validation
Changed
- Fix issue where entering in playmode with a missing collection reference in the CollectionRegistry would throw a nullref and not reload collections
- Added new condition to consider an item as a "Bad Item" and for it to be cleared. This fixed an edge case where a collection can have a non existing item but it is not being cleared out from the collection
- Added validation method as an
CollectionItemEditorOptions
option, you can now define a method to validate what CollectionItem can appear, like this:
[SerializeField, CollectionItemEditorOptions(ValidateMethod = nameof(IsValidConsumable))]
private Consumable onlyUnlockedHardCurrency;
public bool IsValidConsumable(Consumable consumable)
{
if (consumable is HardCurrency hardCurrency)
return hardCurrency.IsUnlocked;
return true;
}
New Collection Wizard
Added
- Renamed uses of
Wizzard
toWizard
- Wizard foldouts now work
- The collection name is now based on the item name by default. You can still override it.
- The script folder now mirrors the Scriptable Object folder by default
- The namespace is now inferred from the script folder by default, with options for how it should be formatted. Can still manually override.
- Improved wizard readability by tweaking the layout, adding a help text, adding a scrollbar and defining a reasonable minimum size
- Settings that are serialized using Editor Prefs now use the new EditorPreference utility class
Changed
- Renamed uses of
Wizzard
toWizard
- Wizard now focuses on Item Name by default so you can type immediately
- Reformatted wizard to look more like a Unity built-in feature
- Parent folders are no longer created by default in preference to mirroring the ScriptableObject hierarchy
Deprecated
- ScriptableObjectCollectionUtils is no longer responsible for appending any parent directories. If you were using any of those methods, please use the recommended method instead.
- ScriptableObjectCollectionSettings.SetDefaultNamespace has been renamed. Please use SetNamespacePrefix instead.
Thanks for this awesome collaboration RoyTheunissen
Stabilization and QoL improvements
Changed
- BREAKING CHANGE Removed Obsolete methods related to Previous Naming, if you are still on version bellow [1.5.4] consider implementing the suggested warnings before upgrading
ScriptableObjectCollection
its now abstract to avoid issues mentioned here here- Fixed partial toggle has been disabled when non-target generated folder is set
- Fixed issue when its not possible to read the current
ScriptableObjectItem
assembly @RoyTheunissen - Fixed a bunch of grammar mistakes on the Readme file @RoyTheunissen
- Added more information to the faq @RoyTheunissen
- Replaced TypeUtility by Unity TypeCache
- Fixed issue when a broken script between a CollectionItem is missing would cause null references on the inspector
QoL Fixes
Added
- More display options (Hide Preview button / Hide GoTo Button) @FreezyExp
Changed
- Fixed null reference on the GoTo button on the indirect references. @FreezyExp
- Fixed warning from ResourceLoading @FreezyExp
- Fixed issue where CollectionRegistry would be stripped depending on the stripping level @FreezyExp
- More small improvements and changes (#83
Fix possible AOT issues
Changed
- Changed the
ResourceScriptableObjectSingleton
to have generic type on methods again, to prevent AOT issues.
Delete Collection and bug fix
Added
- Added Delete Collection button under advanced settings, I will delete all the related assets and unregister from the registry
Changed
- Renamed the
Settings
menu on the Collection Editor toAdvanced
- Fixed an issue when drawing indirect references inside arrays.