2022-04-24 20:35:24 +02:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
|
|
Date: Thu, 30 Dec 2021 14:02:13 -0800
|
|
|
|
Subject: [PATCH] fix powder snow cauldrons not turning to water
|
|
|
|
|
|
|
|
Powder snow cauldrons should turn to water when
|
|
|
|
extinguishing an entity
|
|
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/LayeredCauldronBlock.java b/src/main/java/net/minecraft/world/level/block/LayeredCauldronBlock.java
|
2024-01-21 19:37:09 +01:00
|
|
|
index 542bc6be48d5c53eee988156e7aa6ecfccb51069..333cc37e4f3ca3ea95191dcaafda6be59ef79b96 100644
|
2022-04-24 20:35:24 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/level/block/LayeredCauldronBlock.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/level/block/LayeredCauldronBlock.java
|
2023-12-06 17:21:56 +01:00
|
|
|
@@ -69,7 +69,7 @@ public class LayeredCauldronBlock extends AbstractCauldronBlock {
|
2022-04-24 20:35:24 +02:00
|
|
|
if (!world.isClientSide && entity.isOnFire() && this.isEntityInsideContent(state, pos, entity)) {
|
|
|
|
// CraftBukkit start
|
|
|
|
if (entity.mayInteract(world, pos)) {
|
|
|
|
- if (!LayeredCauldronBlock.lowerFillLevel(state, world, pos, entity, CauldronLevelChangeEvent.ChangeReason.EXTINGUISH)) {
|
|
|
|
+ if (!this.handleEntityOnFireInsideWithEvent(state, world, pos, entity)) { // Paper - fix powdered snow cauldron extinguishing entities
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
2023-12-06 17:21:56 +01:00
|
|
|
@@ -79,6 +79,7 @@ public class LayeredCauldronBlock extends AbstractCauldronBlock {
|
2022-04-24 20:35:24 +02:00
|
|
|
|
|
|
|
}
|
|
|
|
|
2024-01-18 18:52:00 +01:00
|
|
|
+ @Deprecated // Paper - fix powdered snow cauldron extinguishing entities; use #handleEntityOnFireInsideWithEvent
|
2023-12-06 17:21:56 +01:00
|
|
|
private void handleEntityOnFireInside(BlockState state, Level world, BlockPos pos) {
|
|
|
|
if (this.precipitationType == Biome.Precipitation.SNOW) {
|
|
|
|
LayeredCauldronBlock.lowerFillLevel((BlockState) Blocks.WATER_CAULDRON.defaultBlockState().setValue(LayeredCauldronBlock.LEVEL, (Integer) state.getValue(LayeredCauldronBlock.LEVEL)), world, pos);
|
2023-12-06 19:26:53 +01:00
|
|
|
@@ -87,6 +88,15 @@ public class LayeredCauldronBlock extends AbstractCauldronBlock {
|
2023-12-06 17:21:56 +01:00
|
|
|
}
|
|
|
|
|
2022-04-24 20:35:24 +02:00
|
|
|
}
|
2024-01-18 18:52:00 +01:00
|
|
|
+ // Paper start - fix powdered snow cauldron extinguishing entities
|
2022-04-24 20:35:24 +02:00
|
|
|
+ protected boolean handleEntityOnFireInsideWithEvent(BlockState state, Level world, BlockPos pos, Entity entity) {
|
2023-12-06 19:26:53 +01:00
|
|
|
+ if (this.precipitationType == Biome.Precipitation.SNOW) {
|
|
|
|
+ return LayeredCauldronBlock.lowerFillLevel((BlockState) Blocks.WATER_CAULDRON.defaultBlockState().setValue(LayeredCauldronBlock.LEVEL, (Integer) state.getValue(LayeredCauldronBlock.LEVEL)), world, pos, entity, CauldronLevelChangeEvent.ChangeReason.EXTINGUISH);
|
|
|
|
+ } else {
|
|
|
|
+ return LayeredCauldronBlock.lowerFillLevel(state, world, pos, entity, CauldronLevelChangeEvent.ChangeReason.EXTINGUISH);
|
|
|
|
+ }
|
2022-04-24 20:35:24 +02:00
|
|
|
+ }
|
2024-01-18 18:52:00 +01:00
|
|
|
+ // Paper end - fix powdered snow cauldron extinguishing entities
|
2022-04-24 20:35:24 +02:00
|
|
|
|
|
|
|
public static void lowerFillLevel(BlockState state, Level world, BlockPos pos) {
|
|
|
|
// CraftBukkit start
|