As of 26.4 Snapshot 6, minecarts no longer take fall damage.
Steps to reproduce: Place TNT minecart on rail more than 3 blocks above the ground then break the rail supporting block (and rail).
Expected result: TNT minecart explodes after hitting the ground.
Actual result: It does not.
Code Analysis: In 26.4 Snapshot 6, fall damage is now a part of the applyEffectsFromBlocks logic. Non-experimental behavior carts are an exception to most entities in that they only run this check around their post Entity::move and ending position(s) and appear to intentionally not use any of it’s actual movements.
This causes the fall damage check which now relies on applyEffectsFromBlocks to calculate a momentY (and subsequently fallDistance) of 0.
WARNING: When fixing this, please ensure that carts preserve their pre-26.4 snapshot 6 applyEffectsFromBlocks behavior - i.e. not callstate.entityInside, advance effectCollector or trigger fluidInteraction’s if the block would not be checked from just the cart’s ending position.
Note: onInsideBlock will need to be called throughout the movement path in order for the new fall distance resetting check to work as intended / roughly akin to the old behavior.
Comments 0
No comments.