Use a separate tree registry for tree placement #2829
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.
This PR swaps the current tree implementation to using its own registry based on PlacedFeature, and directly exposing that via commands rather than using WorldEdit's internal tree type system. This has better mod compatibility, automatically supports new trees, and in general is better at tree generation.
Due to recent changes in MC this has become more feasible, although it does appear more restrictive than prior tree generation. Given most people want the tree commands to generate sensible trees, it makes sense to move the trees to this new system IMO, and allow the existing feature generation commands to be used for the less restrictive tree generation.
Not all existing API trees can be perfectly replicated with the new system in MC, such as giant mushroom trees. These must be generated via the feature generators instead.
Works around #2008