geforkt von Mirrors/Paper
56d8811924
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: eda400d3 SPIGOT-6213: MinecraftFont.getWidth(" ") returns 2 when it should be 3 Spigot Changes: aa477927 #100: Allow sending messages from specific UUIDs
80 Zeilen
3.1 KiB
Diff
80 Zeilen
3.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
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 422b82f15c323f504458a1fdcd5cf7018ab53468..6aeea48d4cf4732f6a5a5dba12af873c2aee493b 100644
|
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
|
@@ -1075,12 +1075,13 @@ 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(new BlockPosition((double) blockposition.getX(), this.getBoundingBox().maxY, (double) blockposition.getZ()));
|
|
}
|
|
|
|
+ public final boolean isInBubbleColumn() { return k(); } // Paper - OBFHELPER
|
|
private boolean k() {
|
|
return this.world.getType(this.getChunkCoordinates()).a(Blocks.BUBBLE_COLUMN);
|
|
}
|
|
@@ -1094,6 +1095,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
|
return this.isInWater() || this.isInRain() || this.k();
|
|
}
|
|
|
|
+ public final boolean isInWaterOrBubbleColumn() { return aH(); } // Paper - OBFHELPER
|
|
public boolean aH() {
|
|
return this.isInWater() || this.k();
|
|
}
|
|
@@ -1236,6 +1238,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
|
return this.O == tag;
|
|
}
|
|
|
|
+ public final boolean isInLava() { return aQ(); } // Paper - OBFHELPER
|
|
public boolean aQ() {
|
|
return !this.justCreated && this.M.getDouble(TagsFluid.LAVA) > 0.0D;
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
index fdefdef19c5330d022a27ab626d18a8566f37899..2ca79b3e9b3418a2a8dd8ee9e3fb9d41aec1e43c 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
@@ -1115,5 +1115,33 @@ 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
|
|
}
|