geforkt von Mirrors/Paper
89d51d5f29
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable. It should be noted that this decision does not promise all future exploits will be configurable.
153 Zeilen
6.6 KiB
Diff
153 Zeilen
6.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sat, 16 Oct 2021 22:57:31 -0700
|
|
Subject: [PATCH] Add missing block data mins and maxes
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCandle.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCandle.java
|
|
index 2230160d5e04e979467a56346600436c1e5dd70c..08436bfeba2f35fb11b16c4f71f76e13c0d44b1a 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCandle.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCandle.java
|
|
@@ -31,6 +31,12 @@ public final class CraftCandle extends org.bukkit.craftbukkit.block.data.CraftBl
|
|
public int getMaximumCandles() {
|
|
return getMax(CraftCandle.CANDLES);
|
|
}
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumCandles() {
|
|
+ return getMin(CraftCandle.CANDLES);
|
|
+ }
|
|
+ // Paper end
|
|
|
|
// org.bukkit.craftbukkit.block.data.CraftLightable
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java
|
|
index af29ff861eb2c504ef31cc3236adf1e7f6b46049..bc32c5d4c7568ed4392e4bdb5872066846aa62b6 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java
|
|
@@ -51,4 +51,16 @@ public final class CraftCherryLeaves extends org.bukkit.craftbukkit.block.data.C
|
|
public void setWaterlogged(boolean waterlogged) {
|
|
this.set(CraftCherryLeaves.WATERLOGGED, waterlogged);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMaximumDistance() {
|
|
+ return getMax(DISTANCE);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public int getMinimumDistance() {
|
|
+ return getMin(DISTANCE);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java
|
|
index 7ce2e8b733bcd496dcfccb1ddfcb7c5c1b64052e..5ae27fc8f9d18bae949d335ea53e7e70917f0e80 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java
|
|
@@ -31,4 +31,11 @@ public final class CraftComposter extends org.bukkit.craftbukkit.block.data.Craf
|
|
public int getMaximumLevel() {
|
|
return getMax(CraftComposter.LEVEL);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumLevel() {
|
|
+ return getMin(CraftComposter.LEVEL);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftFluids.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftFluids.java
|
|
index 70d734fc71a4499bbf569b3908aa5fbbdf19e6a0..1af5fe48c5861077555e6bdeb6312859b7b37eb2 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftFluids.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftFluids.java
|
|
@@ -31,4 +31,11 @@ public final class CraftFluids extends org.bukkit.craftbukkit.block.data.CraftBl
|
|
public int getMaximumLevel() {
|
|
return getMax(CraftFluids.LEVEL);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumLevel() {
|
|
+ return getMin(CraftFluids.LEVEL);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLayeredCauldron.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLayeredCauldron.java
|
|
index bf0d53f65f8a672c385b2e798b109a9662725f9e..c0e0cbceb0b5c36f4ac4672f217027a5898900a6 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLayeredCauldron.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLayeredCauldron.java
|
|
@@ -31,4 +31,11 @@ public final class CraftLayeredCauldron extends org.bukkit.craftbukkit.block.dat
|
|
public int getMaximumLevel() {
|
|
return getMax(CraftLayeredCauldron.LEVEL);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumLevel() {
|
|
+ return getMin(CraftLayeredCauldron.LEVEL);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLeaves.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLeaves.java
|
|
index 33d9a950ed678595fe2573e9f89a8d1716040503..ab336b400c1937ff86b681b27b1550e4b7f1ab79 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLeaves.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLeaves.java
|
|
@@ -51,4 +51,16 @@ public final class CraftLeaves extends org.bukkit.craftbukkit.block.data.CraftBl
|
|
public void setWaterlogged(boolean waterlogged) {
|
|
this.set(CraftLeaves.WATERLOGGED, waterlogged);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMaximumDistance() {
|
|
+ return getMax(CraftLeaves.DISTANCE);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public int getMinimumDistance() {
|
|
+ return getMin(CraftLeaves.DISTANCE);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLight.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLight.java
|
|
index 49f314b1447212a1a5a7623d2302b5960a44ce6e..8c936a95effa84ba0337d2aaf880cc561591fb33 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLight.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftLight.java
|
|
@@ -32,6 +32,13 @@ public final class CraftLight extends org.bukkit.craftbukkit.block.data.CraftBlo
|
|
return getMax(CraftLight.LEVEL);
|
|
}
|
|
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumLevel() {
|
|
+ return getMin(CraftLight.LEVEL);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
// org.bukkit.craftbukkit.block.data.CraftWaterlogged
|
|
|
|
private static final net.minecraft.world.level.block.state.properties.BooleanProperty WATERLOGGED = getBoolean(net.minecraft.world.level.block.LightBlock.class, "waterlogged");
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftMangroveLeaves.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftMangroveLeaves.java
|
|
index 7a1f2fd2f7f8f1b46352fe2c4d0cdf23a88020fd..8b621aaeadcf2cc6e2ccdbab92f4ae2b89a6ca08 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftMangroveLeaves.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftMangroveLeaves.java
|
|
@@ -51,4 +51,16 @@ public final class CraftMangroveLeaves extends org.bukkit.craftbukkit.block.data
|
|
public void setWaterlogged(boolean waterlogged) {
|
|
this.set(CraftMangroveLeaves.WATERLOGGED, waterlogged);
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public int getMinimumDistance() {
|
|
+ return getMin(CraftMangroveLeaves.DISTANCE);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public int getMaximumDistance() {
|
|
+ return getMax(CraftMangroveLeaves.DISTANCE);
|
|
+ }
|
|
+ // Paper end
|
|
}
|