Releases: brunomikoski/ScriptableObjectCollection
Releases · brunomikoski/ScriptableObjectCollection
ISOCEnum and a lot of other fixes
What's Changed
Changed
- Fixed issue with name parser that would still treat digits as string and added to the final name
- Fixed issue with PropertyDrawer of indirect reference without attribute would cause a null reference
- Refactored the system to use ScriptableObject as a base class instead of
ScriptableObjectCollectionItemnow anyScriptableObjectcan be used as a collection item as long as implements theISCOIteminterface - Fixed issue with
CollectionItemPickerthat would not work properly withScriptableObjectthat are not in the same assembly as theScriptableObjectCollection - Added new buttons on CollectionRegistry to force guid validation on all items
- Reduced automatic collection guid reloading to reduce performance impact on larger projects
- Fixed issues with target scripts generation folder not being saved properly
- Minimum supported Unity version is now 2021 (I'm DONE with 2020, its the worst unity ever 😒)
- Refactored
CollectionItemPickerto only useLongGUIDand also the PropertyDrawer has been remade, now looks nicer 🤩 - Added multiple helpers to
CollectionItemPickerto be used more like a label system/ - Added
ISOCColorizedItemto allow colouring of theCollectionItemPickeron the inspector, I will expand this to other areas as well.
Removed
- Removed support for Addressables, it was not working properly and it was not being used by a lot of teams, I think the addressables support should be handled elsewhere.
Breaking Changes
- If you used the Addressables integration
SOC_ADDRESSABLES_SUPPORTbe extra careful when upgrading - The old string based guid system has been replaced for a lighter version
LongGuid - If you are using IndirectReferences all the references will be lost, you will need to re-set them
Upgrade Guide from 1.x.x to 2.x.x
- Update the package
- Make sure you click on the
CollectionRegistryand click on theValidate Collectionsbutton - Regenerate all your Static Code Files
Full Changelog: v1.9.6...2.0.0
New CollectionItemPicker and bug fix
What's Changed
- Feature/collection item picker by @RoyTheunissen in #111
- fix: array not displaying type correct by @brunomikoski in #112
Full Changelog: v1.9.5...v1.9.6
General tweaks and fixes
Changed
- Fixed Compiler Warning
- Fixed another nullreference on
GetCollectionItemHeight - Fixed
NullReferenceonCheckForKeyboardShortcuts() - Fixed reserved names C# names using
IgnoreCasefor comparison, now you can use reserved name as UpperCase - Now static generated classes will use the
cachednaming prefix, to avoid issues with reserved C# variables names - Fixed remaining Warning.
Bug Fixes
Changed
- Fixed namespace settings not being stored properly after changing once on the Wizard
- Fixed
NullReferenceon GetItemHeight()
What's Changed
- Feature/fixes by @brunomikoski in #106
Full Changelog: v1.9.3...v1.9.4
Fix namespace issues
Add
- Automatically define namespace for static collection generated file based on
CollectionItem
Changed
- Fixed static static file generation to use
Type.FullNameinstead ofType.Name
Full Changelog: v1.9.2...v1.9.3
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
CollectionItemEditorOptionsoption, 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;
}