-
Notifications
You must be signed in to change notification settings - Fork 34
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
Implement StackReferences & Separate CustomItems from external ItemStack references #334
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Previously CustomItems were used both for CustomItems saved via WU, and as references to external Items. That was very confusing! So now they follow a strict usage: * CustomItem represent the custom items saved in WolfyUtils (Stored and Read from registry). * StackReferences are used to reference ItemStack/Items from external sources. They may point to WU CustomItems, Oraxen Items, ItemsAdder Items, etc.
* Added various new methods to replace CustomItem usages. Including MergeOption, MergeAdapter, Result, Ingredient, and more * Deprecated old methods using CustomItems
This may be changed in the future, but for now caching the converted choices is more efficient than converting them each #getChoices call.
These new methods provide better readability. You can see what the data you put into the Items cache does like edit or create
* And fixed shift+right-click on ingredient/result variants not using the clicked variant
* Swap parser to a different type * Preview the item of the parser * Better Edit/Select buttons
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously CustomItems were used both for CustomItems saved via WU, and as references to external Items. That was very confusing and inefficient!
This PR depends on WolfyScript/WolfyUtils-Spigot#66
So now they follow a strict usage:
They do not contain any extra data, other then where the referenced item can be found, or cached values.
This way CustomItems are no longer used everywhere, making it easier to separate functionality, and reducing memory usage, as well as improving performance, because StackReferences are a lot leaner than CustomItems.
No longer does it have the overhead of CustomItems, when initiating simple placeholder items, etc.
To-do: