Skip to content

Releases: brunomikoski/ScriptableObjectCollection

ISOCEnum and a lot of other fixes

02 Apr 18:05
61ef012

Choose a tag to compare

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 ScriptableObjectCollectionItem now any ScriptableObject can be used as a collection item as long as implements the ISCOItem interface
  • Fixed issue with CollectionItemPicker that would not work properly with ScriptableObject that are not in the same assembly as the ScriptableObjectCollection
  • 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 CollectionItemPicker to only use LongGUID and also the PropertyDrawer has been remade, now looks nicer 🤩
  • Added multiple helpers to CollectionItemPicker to be used more like a label system/
  • Added ISOCColorizedItem to allow colouring of the CollectionItemPicker on 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_SUPPORT be 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 CollectionRegistry and click on the Validate Collections button
  • Regenerate all your Static Code Files

Full Changelog: v1.9.6...2.0.0

New CollectionItemPicker and bug fix

12 Dec 20:52

Choose a tag to compare

What's Changed

Full Changelog: v1.9.5...v1.9.6

General tweaks and fixes

29 Oct 15:38

Choose a tag to compare

Changed

  • Fixed Compiler Warning
  • Fixed another nullreference on GetCollectionItemHeight
  • Fixed NullReference on CheckForKeyboardShortcuts()
  • Fixed reserved names C# names using IgnoreCase for comparison, now you can use reserved name as UpperCase
  • Now static generated classes will use the cached naming prefix, to avoid issues with reserved C# variables names
  • Fixed remaining Warning.

Bug Fixes

28 Oct 16:08
f136ff2

Choose a tag to compare

Changed

  • Fixed namespace settings not being stored properly after changing once on the Wizard
  • Fixed NullReference on GetItemHeight()

What's Changed

Full Changelog: v1.9.3...v1.9.4

Fix namespace issues

26 Oct 07:56

Choose a tag to compare

Add

  • Automatically define namespace for static collection generated file based on CollectionItem

Changed

  • Fixed static static file generation to use Type.FullName instead of Type.Name

Full Changelog: v1.9.2...v1.9.3

Unity 2021 Support Fixes

24 Oct 20:27
0f98396

Choose a tag to compare

What's Changed

Full Changelog: v1.9.1...v1.9.2

Mobile Hotfix

19 Jul 12:02
64ac734

Choose a tag to compare

What's Changed

Full Changelog: v1.9.0...v1.9.1

New Collection References

11 Jul 19:58
6a33498

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.8.3...v1.9.0

Unity 2021 Support

11 May 17:56
8495848

Choose a tag to compare

Changed

  • Fixed [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] issue with unity 2021 and generics.

Bug Fixes and Method Validation

09 May 19:35
2a4d0a9

Choose a tag to compare

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;
}