- Add a "loadPrivately" method to be used when GetChunks are called to avoid synchronocity issues with super classes being used on different threads
- Synchronise the call method so we're not attempting to call whilst also loading/updating
- We don't want to flush if we're setting from the main thread, as that's going to be another plugin doing it
- It's better to have a concurrent error thrown than use a concurrent set, so concurrency issues can actually be fixed rather than handled unsafely
- Only send chunk packets up to once a tick (it really doesn't use any memory to cache IntPairs).
* Get rid of FastSchematicReader/Writer and document changed JNBT classes
This commit includes changes from upstream to the schematic classes
(`com.sk89q.worldedit.extent.clipboard.io`). It also documents the JNBT
classes, specifying what has been changed in FAWE. This was done in preparation
for the upcoming move to adventure-nbt.
The PlotSquared schematic handler classes will now use SpongeSchematicReader/Writer rather than FastSchematicReader/Writer.
This is yet untested and the entire branch is a W.I.P.
* Fix JNBT mutability misuse in FAWE
FAWE previously had mutable compound and list tags. The previous commit changed that, and this commit will fix misuse of the tag API.
I've tried to identify the places where mutability was assumed, but I might have missed something. This needs quite extensive testing.
This is yet another change which increases upstream compatibility in FAWE.
* Fix FAWE_Spigot_<..>#getEntity
* Fix JNBT usage in the AsyncBlockState code
* Readd FastSchematicReader/Writer and add a new schematic format (`FAST`)
* Update dead repository
* Implement missing AsyncChunk#getTileEntities
* handle entities properly and add "brokenentity" format
* Fix fast schematic reader
lazily reading means it's read in order of appearance in the inputstream so we need to read schematic version first (skip past everything) and then reset the stream
* Fix p2 FAWE
* Go back to fast schematics in P2/CompressedSchematicTag (#819)
* Fix compile
Co-authored-by: N0tMyFaultOG <mc.cache@web.de>
Co-authored-by: Alexander Söderberg <Sauilitired@users.noreply.github.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: Aurora <aurora@relanet.eu>
* Perform part of the move of //fast to //perf (#1377)
This re-adds a deprecated `//fast` and moves the current logic to
`//perf`. Later `//perf` will have its syntax reworked, when Piston
finally supports sub-commands properly!
* Names via Translation (#1268)
* Deprecate BiomeRegistry, etc.
* Update some libraries, e.g. text
* Move to new translation renderer
* Revert "Deprecate BiomeRegistry, etc."
This reverts commit 59a5d6c92aec52739a8dc68ac3d23898af7593dd.
This was not a good idea for potential mod shenanigans.
* Move BiomeData#getName to BiomeRegistry, use i18n
* Use getRichName instead of getName
* Implement getRichName for NullBiomeRegistry
* Add getRichName for blocks
* Relocate net.kyori.minecraft
* Update adapters for getRichBlockName
* Add getRichName for items
* Update adapters for getRichItemName
* Update adapters JAR for merge
(cherry picked from commit cfd26253b6fb59ff6c65a0157a6780be7db4ea5a)
* Follow-up fixes for 92f8776796
* Don't send deprecation warning and improve info message
* Fix click command for perf box
(cherry picked from commit 7ee60060c31df2f8b41212b430a0875312189339)
* update R3 adapter§
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Aurora <aurora@relanet.eu>
* Full support for 3D biomes
Since we're only supporting 1.15+ there's no need to try anything other than compatibility
* this is not part of the PR
* Clipboards should still always be y 0 for biomes
(this "bug" has existed for ages)