From d717b8e7a3dacbccd8efc83a643e200bd766cbbe Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 14 Apr 2016 17:48:56 -0500 Subject: [PATCH] Water mobs should only spawn in the water diff --git a/src/main/java/net/minecraft/server/EntityWaterAnimal.java b/src/main/java/net/minecraft/server/EntityWaterAnimal.java index 76394a3..e61f9a2 100644 --- a/src/main/java/net/minecraft/server/EntityWaterAnimal.java +++ b/src/main/java/net/minecraft/server/EntityWaterAnimal.java @@ -11,7 +11,15 @@ public abstract class EntityWaterAnimal extends EntityInsentient implements IAni } public boolean cK() { - return true; + // Paper start - Don't let water mobs spawn in non-water blocks + // Based around EntityAnimal's implementation + int i = MathHelper.floor(this.locX); + int j = MathHelper.floor(this.getBoundingBox().b); // minY of bounding box + int k = MathHelper.floor(this.locZ); + Block block = this.world.getType(new BlockPosition(i, j, k)).getBlock(); + + return block == Blocks.WATER || block == Blocks.FLOWING_WATER; + // Paper end } public boolean canSpawn() { -- 2.10.0.windows.1