PaperMC/patches/server/Conduit-API.patch
2024-02-09 23:03:27 +01:00

50 lines
2.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tamion <70228790+notTamion@users.noreply.github.com>
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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 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
@@ -0,0 +0,0 @@ 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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
@@ -0,0 +0,0 @@ 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
}