* Serialize the complete NBT data to avoid mismatches (#4665)
This might increase the network traffic a bit, but the amount of mods actually using the share tag seems to be very limited.
For now it is worth the risk as it solves the problem. In case we run into actual issues, there might still be other solutions, which will be way more complex and can potentially introduce additional problems.
(cherry picked from commit e90dd2f9c6)
(cherry picked from commit ab393b0ed1)
* Fixes#4669: Take NBT into account for comparing. (#4675)
This only covers combining different items together.
Fuzzy filtering is still a bit too fuzzy for corner cases.
Co-authored-by: yueh <yueh@users.noreply.github.com>
* Move model loader registration to the mod constructor because forge runs the model registry event concurrently, apparently.
* Do not register the loaders during data generation.
* Fixes removal of facades not invalidating the cached server-side collision boxes. (#4663)
(cherry picked from commit 957bc4c5cc)
* Move model loader registration to the mod constructor because forge runs the model registry event concurrently, apparently.
* Do not register the loaders during data generation.
* Fix Special Model Registration (#4577)
* Fixes#4575 by updating Forge (ModelRegistryEvent is a modbus event but was misflagged as not being one). And update Forge because their breaking change breaks our mod.
* Update gradle.properties
Co-authored-by: yueh <yueh@users.noreply.github.com>
* Update src/main/resources/META-INF/mods.toml
Co-authored-by: yueh <yueh@users.noreply.github.com>
Co-authored-by: yueh <yueh@users.noreply.github.com>
(cherry picked from commit 8733c2c11f)
* Strip pom.xml dependencies.
(cherry picked from commit 00d4c20d9f)
* Refactors all plane parts to use a common helper for
calculating connections to adjacent planes.
Also fixes problems with updating these connections on neighbor updates.
* Fix conflicting GuiSync ID.
* Slightly refactor PlaneConnectionHelper, and fix an issue where the bounding box was calculated incorrectly by using the wrong up-direction.
(cherry picked from commit 8617dc8340)
* Makes formation planes a bit more consistent and less violent.
Items will now have a slower speed when spawning as well as a narrower area to avoid having them glitch into a wall and be teleported around
* Removed debug output, added clarifying parenthesis and extracted method.
* Fixes various other issues with the formation plane
Also removed now useless code
(cherry picked from commit 12e3fa9127)
* Fixes#4508: Correctly construct the sparse lists.
Also renamed all uncondensed getters to sparse and all condensed to the simple ones.
* Apply suggestions from code review
Co-authored-by: shartte <shartte@users.noreply.github.com>
* Streamlined collapsing the sparse lists
* Extracted helper to condense stacks
* Sort lists desc by stack size
Co-authored-by: shartte <shartte@users.noreply.github.com>
Also use a client-side method to update connected textures
for crafting cubes if two previously distinct clusters are connected.
Refactored MBCalculator to use generics for type checks and remove more casts.
do not always recalculate existing multiblocks. Only do so,
if the adjacent block is either part of the multiblock's bounding
box, or if the adjacent block would be a valid part of the multiblock.