Built-in custom mappings for parity#6447
Conversation
There was a problem hiding this comment.
Pull request overview
Adds built-in (code-defined) custom block/item mappings that are registered via lifecycle events, intended to improve Java/Bedrock parity for specific blocks/items referenced in the linked issues (obsidian break time, mushroom block states, test blocks visibility, furnace minecart item mapping).
Changes:
- Registers built-in custom block overrides (obsidian/crying obsidian, mushroom blocks, test blocks) through
GeyserDefineCustomBlocksEvent. - Registers a built-in custom item definition (furnace minecart) through
GeyserDefineCustomItemsEvent. - Refactors custom item population flow so
ItemRegistryPopulatoralways calls the custom item populator, with the config gate moved intoCustomItemRegistryPopulator.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 10 comments.
| File | Description |
|---|---|
| core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java | Removes custom-content gating/special-casing and relies on the custom item populator for enablement checks. |
| core/src/main/java/org/geysermc/geyser/registry/populator/CustomItemRegistryPopulator.java | Adds early-return when custom content is disabled. |
| core/src/main/java/org/geysermc/geyser/registry/mappings/BuiltInMappings.java | Introduces built-in registrations for parity-related custom block overrides and a furnace minecart custom item definition. |
| core/src/main/java/org/geysermc/geyser/GeyserImpl.java | Subscribes built-in mappings to custom block/item lifecycle events during initialization. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
This looks clean and I like it. Would you mind adding comments on each mapping addition explaining its use-case? |
Novampr
left a comment
There was a problem hiding this comment.
This + most of the copilot reviews, but otherwise this is looking good 👀
f0b4c89 to
afcd909
Compare
593c5a4 to
e0100e9
Compare
…s, obsidian, and furnace minecart
e0100e9 to
827feb2
Compare
onebeastchris
left a comment
There was a problem hiding this comment.
Please PR the GeyserIntegratedPack changes into the repo first - other than that, LGTM. Would be a lovely parity addition, and i could retire my extension for the obsidian breaking fix :p
There is a PR GeyserMC/GeyserIntegratedPack#78 ^^ |
# Conflicts: # core/src/main/java/org/geysermc/geyser/registry/populator/CustomItemRegistryPopulator.java # core/src/main/resources/GeyserIntegratedPack.mcpack
Fixes #5094, #6380, #6164
also moved the furnace_minecart mapping there, to remove that edge-case