aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/1040-Conduit-API.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/1040-Conduit-API.patch')
-rw-r--r--patches/server/1040-Conduit-API.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/patches/server/1040-Conduit-API.patch b/patches/server/1040-Conduit-API.patch
new file mode 100644
index 0000000000..9df9ff716b
--- /dev/null
+++ b/patches/server/1040-Conduit-API.patch
@@ -0,0 +1,50 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Tamion <[email protected]>
+Date: Sat, 27 Jan 2024 20:46:40 +0100
+Subject: [PATCH] Conduit API
+
+== AT ==
+public net.minecraft.world.level.block.entity.ConduitBlockEntity effectBlocks
+public net.minecraft.world.level.block.entity.ConduitBlockEntity destroyTarget
+
+diff --git a/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
+index 761d009cdeea28b6fd593c5bf1e4dcfa45f3fc27..37e0b762b86e74f607a4541ecb7b24ad7a591d0e 100644
+--- a/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
++++ b/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
+@@ -187,7 +187,7 @@ public class ConduitBlockEntity extends BlockEntity {
+
+ private static void applyEffects(Level world, BlockPos pos, List<BlockPos> activatingBlocks) {
+ int i = activatingBlocks.size();
+- int j = i / 7 * 16;
++ int j = i / 7 * 16; // Paper - Conduit API; diff on change
+ int k = pos.getX();
+ int l = pos.getY();
+ int i1 = pos.getZ();
+diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
+index 29bcac10a7edf53015941e4c28c4f2d9a5a3db56..f0b0348e105fb27c829ec29e638433c57bfd5f64 100644
+--- a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
++++ b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
+@@ -18,4 +18,23 @@ public class CraftConduit extends CraftBlockEntityState<ConduitBlockEntity> impl
+ public CraftConduit copy() {
+ return new CraftConduit(this);
+ }
++
++ // Paper start - Conduit API
++ @Override
++ public boolean isActive() {
++ requirePlaced();
++ return this.getTileEntity().isActive();
++ }
++
++ @Override
++ public int getRange() {
++ requirePlaced();
++ return this.getTileEntity().effectBlocks.size() / 7 * 16;
++ }
++
++ @Override
++ public org.bukkit.entity.LivingEntity getTarget() {
++ return this.getTileEntity().destroyTarget == null ? null : this.getTileEntity().destroyTarget.getBukkitLivingEntity();
++ }
++ // Paper end - Conduit API
+ }