* Alter the CUI lifecycle to be more consistent
This handling reduces the platform-specific behaviour of CUI handshakes,
and ensures that the appropriate state is maintained when a client
connection ends but a LocalSession remains cached.
* Apply review suggestions
* fabric: Update to new networking API
* session: Correct field grouping for cui attempts
* Add WorldEdit version and platform to schematics
* Use an actual platform ID rather than name, for more accurate info.
* Put the platform data within another nested tag
* Use a best-effort legacy platform ID
* Review changes
* Move the getId impl to Platform
* Review notes
* Review notes
* 😓
* Move to packaged translations
* License that file
* Fix some checkstyle too
* Support reloading translation files
* Add missing dash for unpack directory
* Mark unpacked zips as owner-only
* Added a method to check whether a block can be placed at a location
* Make the snow system only place at locations that it can by game logic
* Make canPlaceAt a default method
* Fixed PR comments
* Use a World field
* Just throw directly
* IAE makes more sense
* Remove unused import
* Check for editsession without a world
* Fixed an issue where upwards resolved schematics would break schem list
* Missed diff
* PR changes
* Further fixes
* Improve sorting logic
* Pass in comparator rather than using sort type
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
* Add tracing feature to EditSessions
This helps track down what plugin (or more specifically, extent) is
blocking actions from happening.
* Set a trace hook instead of a one-off command
* Correct the logic for determining tracing active
* Fix extra newline in AbstractPlayerActor
* Fix checkstyle
* Improve messaging of trace mode
* Localise the ExceptionConverter
* Further work on localising exceptions
* Everything but input parsing is now localised
* Finish making errors localisable
* Fixed a few notes from review
* Fixed another spot
* More changes
* Specialise parser errors
* Add RegenOptions to the API
* Integerate regen options into //regen
* Rename isRegenBiomes to shouldRegenBiomes
* Go through the EditSession for setting biomes
* Respect 3D biome support in regen
* Add RegenOptions implementation for 1.16 Bukkit adapter.
Co-authored-by: wizjany <wizjany@gmail.com>
* Allow API detection of the biome fuzzer in use
This allows us to warn, fix, or optimize biome edits to the overworld.
* Drop edits to Y = 0 for biomes in overworld
* Re-work ArbitraryBiomeShape to simplify logic
Also fixes not being able to use THE_VOID with it
* Initial work on 3D biomes. Not implemented for Bukkit, and history is unfinished
* Further implement 3D Biomes. It's now usable on Forge/Fabric
* Fix a few cases of apply. Gotta fix the deprecated methods at some point
* Add Bukkit support
* Add clipboard support. Schematics are still not great, but the Sponge schem format doesn't support this yet.
* Fix the last of the issues
* Fixed up review comments
* Fixed review notes
* Simplify
* max is inclusive
* Standardize non-abstract compatibility handling
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
* feat(i18n): use a translation loader to allow CB/WG to use WorldEdit's TranslationManager
* Replace the old ResourceLoader with the new one
* Make ResourceLoader per-platform
* Update worldedit-core/src/main/java/com/sk89q/worldedit/util/io/WorldEditResourceLoader.java
* Improve the impl to allow a default
* Update based on review suggestions
* Local resource should be pathName too
* Delegate to getRootResource, and prevent pathName from starting with /
* HTML
* Format javadoc a little better
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
* Delay command block active update if needed
If we are checking if a command block session is active, and we are not
on the main thread, schedule a task instead to update the active status
eventually, rather than waiting on the main thread.
Fixes#1284.
* What's that? Non-static state, you say?
Just saw we have a field for the plugin here. Might as well use it.
* Check if chunk is loaded for sender before type