Exploding tnt minecarts drop minecart and tnt
The bug
Exploding tnt minecarts drop a minecart and can drop a tnt item if they were ignited by fire. Normally the explosion then destroys the items, but there should not be a reason for the minecart to drop anything in the first place. Additionally MC-116669 can be used to prevent the explosion from destroying the items.
How to reproduce
Use the steps provided in MC-116669 and then enter the world again after the crash.
→ All exploded minecarts dropped an item
Code analysis
Based on 1.11.2 decompiled using MCP 9.35 rc1
The method net.minecraft.entity.item.EntityMinecartTNT.killMinecart(DamageSource) calls the parent method and drops the tnt item regardless of whether or not the minecart exploded.
Important: If this is changed so that the parent method is not called all the time this method should first mark the entity as dead, otherwise MC-116669 could cause two exploding tnt minecarts to explode each other infinitely and multiple times.
2013-01-19, 03:23 PM
2017-06-26, 11:41 PM
2017-06-26, 11:41 PM
5
4
TNT, drop, explode, fire, minecart, redstone, tnt-minecart
Snapshot 13w03a - Minecraft 17w17b
Snapshot 13w03a, Snapshot 13w04a, Snapshot 13w05b, Minecraft 1.5, Snapshot 13w11a, Minecraft 1.5.1, Minecraft 1.6.2, Minecraft 1.6.4, Minecraft 13w37b, Minecraft 13w42b, Minecraft 13w43a, Minecraft 1.7.1, Minecraft 1.7.2, Minecraft 1.7.4, Minecraft 14w05b, Minecraft 1.10.2, Minecraft 1.11.2, Minecraft 17w17b