diff --git a/Spigot-API-Patches/Add-entity-liquid-API.patch b/Spigot-API-Patches/Add-entity-liquid-API.patch new file mode 100644 index 000000000..1c70cd114 --- /dev/null +++ b/Spigot-API-Patches/Add-entity-liquid-API.patch @@ -0,0 +1,51 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: William Blake Galbreath +Date: Thu, 2 Jul 2020 18:11:33 -0500 +Subject: [PATCH] Add entity liquid API + + +diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/org/bukkit/entity/Entity.java ++++ b/src/main/java/org/bukkit/entity/Entity.java +@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent + */ + @NotNull + org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason getEntitySpawnReason(); ++ ++ /** ++ * Check if entity is in water ++ */ ++ public boolean isInWater(); ++ ++ /** ++ * Check if entity is in rain ++ */ ++ public boolean isInRain(); ++ ++ /** ++ * Check if entity is in bubble column ++ */ ++ public boolean isInBubbleColumn(); ++ ++ /** ++ * Check if entity is in water or rain ++ */ ++ public boolean isInWaterOrRain(); ++ ++ /** ++ * Check if entity is in water or bubble column ++ */ ++ public boolean isInWaterOrBubbleColumn(); ++ ++ /** ++ * Check if entity is in water or rain or bubble column ++ */ ++ public boolean isInWaterOrRainOrBubbleColumn(); ++ ++ /** ++ * Check if entity is in lava ++ */ ++ public boolean isInLava(); + // Paper end + } diff --git a/Spigot-Server-Patches/Add-entity-liquid-API.patch b/Spigot-Server-Patches/Add-entity-liquid-API.patch new file mode 100644 index 000000000..16adb9c09 --- /dev/null +++ b/Spigot-Server-Patches/Add-entity-liquid-API.patch @@ -0,0 +1,79 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: William Blake Galbreath +Date: Thu, 2 Jul 2020 18:11:43 -0500 +Subject: [PATCH] Add entity liquid API + + +diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/server/Entity.java ++++ b/src/main/java/net/minecraft/server/Entity.java +@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke + return this.inWater; + } + +- private boolean isInRain() { ++ public boolean isInRain() { // Paper - private -> public + BlockPosition blockposition = this.getChunkCoordinates(); + + return this.world.isRainingAt(blockposition) || this.world.isRainingAt(blockposition.a(0.0D, (double) this.size.height, 0.0D)); + } + ++ public boolean isInBubbleColumn() { return k(); } // Paper - OBFHELPER + private boolean k() { + return this.world.getType(this.getChunkCoordinates()).a(Blocks.BUBBLE_COLUMN); + } +@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke + return this.isInWater() || this.isInRain() || this.k(); + } + ++ public boolean isInWaterOrBubbleColumn() { return aD(); } // Paper - OBFHELPER + public boolean aD() { + return this.isInWater() || this.k(); + } +@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke + this.inLava = true; + } + ++ public boolean isInLava() { return aN(); } // Paper - OBFHELPER + public boolean aN() { + return this.inLava; + } +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +@@ -0,0 +0,0 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { + public org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason getEntitySpawnReason() { + return getHandle().spawnReason; + } ++ ++ public boolean isInWater() { ++ return getHandle().isInWater(); ++ } ++ ++ public boolean isInRain() { ++ return getHandle().isInRain(); ++ } ++ ++ public boolean isInBubbleColumn() { ++ return getHandle().isInBubbleColumn(); ++ } ++ ++ public boolean isInWaterOrRain() { ++ return getHandle().isInWaterOrRain(); ++ } ++ ++ public boolean isInWaterOrBubbleColumn() { ++ return getHandle().isInWaterOrBubbleColumn(); ++ } ++ ++ public boolean isInWaterOrRainOrBubbleColumn() { ++ return getHandle().isInWaterOrRainOrBubble(); ++ } ++ ++ public boolean isInLava() { ++ return getHandle().isInLava(); ++ } + // Paper end + }