The following caveats apply because selectively removing or modifying the score numbers on Bedrock cannot be done without removing all of them:
* "blank" and "styled" number formats are ignored for "list" and "sidebar" display slots
* The "fixed" number format is appended to the end of the "list" and "sidebar" entry names instead of replacing the score number
* The "below_name" slot has no limitations and displays identically to Java
* Reset metadata and attributes if needed when respawning
* Minor edits
* Reset attributes in JavaLoginTranslator
* Fix client bug when updating absorption and health in the same tick
* ported camotoy's attempt of implementing structure blocks, removal of a few TODO's
* no more parsing of java structure templates
* Don't attempt to re-request structure size
* ensure we can load structures in even if we know the size
* init: send correct structure size/offset/rotation to java, not fully working yet
* restore offsets so we are sending correct values to the java server regarding where we want the structure to be placed
* something something mirror
* attempt at proper offsets for mirroring AND rotations. this was not fun at all
* rotation, mirror, offsetting all seem to work
* undo import changes
* fix NPE
* Proper handling of empty structures, ensure that we can clear the structure block outline when a zero vector was sent for structure size
* oops
* Update core/src/main/java/org/geysermc/geyser/session/cache/StructureBlockCache.java
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
* Update core/src/main/java/org/geysermc/geyser/translator/level/block/entity/StructureBlockBlockEntityTranslator.java
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
* Update core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockStructureBlockUpdateTranslator.java
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
* Update core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockStructureTemplateDataRequestTranslator.java
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
* consolidate java structure sending into one method
* fix merge conflict
---------
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
* Fix lecterns on 1.20.60, start on virtual lecterns
* Fix: virtual books & actual books opening twice, resolve other issues, remove debug
* undo some unnecessary diff
* Don't try to send virtual books to pre 1.20.60 clients
* address review by camotoy
* Implemented ViaProxy bootstrap
* Applied requested changes to code
* Override indra settings to Java 17
* Removed explicit java source/target version
* Added ViaProxy artifact to build.yml
* Added ViaProxy artifact to pullrequest.yml
* Updated ViaProxy API usage
* Implemented floodgate support for ViaProxy
* Depend on stable ViaProxy release
* Initialize command manager and ping passthrough before Geyser#start
* Revert "Initialize command manager and ping passthrough before Geyser#start"
This reverts commit 39356071c4.
* Some ping passthrough improvements
* Merged code properly
* Updated ViaProxy API usage
* Implemented better command handling
* Updated ViaProxy and Geyser API usage
* Combine bootstrap and plugin into one class
* Minor code improvements
* Call Geyser shutdown on plugin disable
* Only call disable if Geyser was enabled once
* Don't send two shutdown done messages
* Use setter for enabled boolean
* Gracefully handle invalid stone cutter recipes
Further various little fixes:
- bump source version in AP to 17 to silence build log spam
- remove unneeded close() on auto-closable resource
* Fix collision problem,the wide for bedrock is 0.5 but for java is 0.5625 when only one side connect.
* Fixed an issue where the collision box was abnormal at the corner when two sides of the glass panel were connected.
* Merge similar methods, adjust code.
* More lenient judgment; reduce redundant code to avoid repeated calls.
We only need to use recipe tags when there is more than one possible ingredient option. For example, before this, we applied a logs item tag to the planks recipe, which caused an issue with plank type suggestions. (#4321)
* Clear mob spawners if the Java server so requests
* Empty spawners by replacing the spawner block with a new one instead of adding an invalid identifier to them.
Unfortunately, sending one UpdateBlockPacket that replaces the spawner does not work, we need to set the spawner to air first. Cool. But at least we don't summon particles for all empty spawners now
* store position vector (address review by @konicai)
* remove empty line
* Start on 1.20.50
* Add 1.20.50 block_palette.1_20_50.nbt, creative_items.1_20_50.json and runtime_item_states.1_20_50.json
* fix stone and planks mappings
* add and do something with the new SetPlayerInventoryOptionsPacket
* Add readme version bump
* Cleanup/Explain the new BedrockSetPlayerInventoryOptionsTranslator
* Start on 1.20.10+ recipe unlocking system
* Keeping track of multiple Bedrock recipes to unlock for a single Java recipe
* Unlock stonecutter recipes
* Stonecutter recipes
* Unlock tipped arrows/shulker box recipes even when Java doesnt (why..?), and dont send trims if Java doesn't
* Translate FurnaceDataRecipes
* Revert FurnaceRecipe translation, revert stone cutter recipe identifier caching - Bedrock does not need the smelting recipe, and doesn't (un)lock stonecutter recipes (yet...?)
* Remove debug message
* Make decorated pot crafting just a little bit smoother :p
* formatting
* Use itemTag descriptors to fix https://github.com/GeyserMC/Geyser/issues/3784
* Use hashmap instead to store item tag overrides
* remove unnecessary comment
* Address review by @Konicai
* Support for 1.20.30
* undo add whitespace
* Merge upstream, use FastUtil maps, rename a few methods
* Address Camotoy's review
* Fix formatting
* This ensures bossbars are cleared on server switch. Additionally, this clears the EntityCache - which should resolve issues around air supply/hearts persisting visually.
* - Also reset attributes on server switch, aswell as air
* Tell the server we loaded the resource pack
* Decline resource packs if they are not required
---------
Co-authored-by: onebeastchris <github@onechris.mozmail.com>
* Initial pass for 1.20.2, compiling
* Remove unused level events
* handle null GameProfile in ClientboundPlayerInfoUpdatePacket
* Handle level events BRUSH_BLOCK_COMPLETE and EGG_CRACK
* Account for null tag in DecoratedPotBlockEntityTranslator
* Explicitly show that 1.20.31 is supported