Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GetAll with casting fails in some cases #20

Closed
ashblue opened this issue May 29, 2024 · 1 comment
Closed

GetAll with casting fails in some cases #20

ashblue opened this issue May 29, 2024 · 1 comment
Labels
bug Something isn't working released

Comments

@ashblue
Copy link
Owner

ashblue commented May 29, 2024

When calling GetAll<T> with an item entry type (line 180). The cast will fail if you're using a custom item entry type and a custom item entry type that forks the base item entry. A LINQ cast is being made and it needs to be converted to a cast type that takes into account potential failure of the conversion.

// Add the items
inventory.Add(generic default item)
inventory.Add(new custom item entry)

// This now fails
var myCustomEntries = inventory.GetAll<MyCustomItemEntry>();
@ashblue ashblue added the bug Something isn't working label May 29, 2024
ashblue pushed a commit that referenced this issue Jan 11, 2025
# [2.0.0](v1.0.1...v2.0.0) (2025-01-11)

### Bug Fixes

* **id repair:** null and empty string IDs are now repaired ([489ec64](489ec64))
* **inventory add:** no longer crashes when read only items are added ([afb6b44](afb6b44)), closes [#17](#17)
* **inventory.getall<t>():** no longer crashes when used with a custom item entry type ([c8678b0](c8678b0)), closes [#20](#20)
* **semantic-release:** was not picking up the main branch ([7124ae0](7124ae0))

### Features

* **inventory window:** categories now live display in the item table ([53193c4](53193c4)), closes [#21](#21)
* **item definitions:** display name must now be implemented on all ItemDefinitionBase classes ([56e69c2](56e69c2))

### BREAKING CHANGES

* **item definitions:** Find all classes that inherit ItemDefinitionBase and add `[SerializeField] string
_displayName; public override string DisplayName => _displayName;`. To fix the error that your
classes do not implement  the display name get accessor.
@ashblue
Copy link
Owner Author

ashblue commented Jan 11, 2025

🎉 This issue has been resolved in version 2.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working released
Projects
None yet
Development

No branches or pull requests

1 participant