* Initial work towards Fabric compat. This does not compile yet
* Further updates - should compile but Gradle is being weird.
* Remove useless buildscript extras
* Added mixins to buildscript classpath to fix Loom crash
* Make it compile
* Got it building and added interaction
* Fixed review comments
* Use ServerPlayerEntity for FakePlayer
* Use method references for nicer names
* Fixed remaining comments and added networking for CUI
* Output as dist.jar
* Added mixins for left click air
* Use regex for cleanliness
Should remain backwards compatible with 1.13. Removed blocks/items will
be forwarded to the "replacement" block/item. (e.g. BlockTypes.SIGN will
find OAK_SIGN on 1.14.)
The new command now writes a json file to WorldEdit's working directory with instructions on which chunks to delete, which is read by the plugin/mod at startup and calls the ChunkDeleter.
The chunk deleter parses the json and iterates the instructions, backing up .mca files as it goes and overwriting the offset headers with 0 wherever a chunk needs to be deleted.
This allows Minecraft to reclaim the space used for that chunk, as well as forcing it to be generated from scratch next time the area is loaded.
New to 1.14, Mojang stores .mca files which don't contain chunks in the
poi folder.
Note: we explicitly filter *out* the poi folder, instead of filtering
*to* the regions folder, since old versions of minecraft had regions
directly in the world folder (instead of a regions subfolder).
This change fixes the block count report, and also makes
naturalize act more like a "//replace dirt grass" where
we only attempt block changes if the block is not already
what we're looking for.
They now additionally take a direction in which the simulated item usage
should be facing.
Also allow the item parser to parse "hand" and "offhand" as items, to
allow platforms with NBT item support return items with NBT (since
parsing is a slightly more complex task).