diff --git a/paper-server/patches/sources/net/minecraft/world/level/block/FireBlock.java.patch b/paper-server/patches/sources/net/minecraft/world/level/block/FireBlock.java.patch index 057c594736fc..8feb87460747 100644 --- a/paper-server/patches/sources/net/minecraft/world/level/block/FireBlock.java.patch +++ b/paper-server/patches/sources/net/minecraft/world/level/block/FireBlock.java.patch @@ -102,7 +102,7 @@ } } } -@@ -226,19 +_,40 @@ +@@ -226,19 +_,44 @@ : this.igniteOdds.getInt(state.getBlock()); } @@ -127,7 +127,12 @@ + // CraftBukkit end if (random.nextInt(age + 10) < 5 && !level.isRainingAt(pos)) { int newAge = Math.min(age + random.nextInt(5) / 4, 15); - level.setBlockAndUpdate(pos, this.getStateWithAge(level, pos, newAge)); +- level.setBlockAndUpdate(pos, this.getStateWithAge(level, pos, newAge)); ++ // Paper start - Add missing BlockSpreadEvent; fire replacing the burnt block should fire BlockSpreadEvent ++ if (!org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockSpreadEvent(level, sourcePos, pos, this.getStateWithAge(level, pos, newAge), UPDATE_ALL)) { ++ return; ++ } ++ // Paper end - Add missing BlockSpreadEvent } else { - level.removeBlock(pos, false); + if (!oldState.is(Blocks.TNT)) level.removeBlock(pos, false); // Paper - TNTPrimeEvent; We might be cancelling it below, move the setAir down