From 4a7962cd1321197f9e02ce514b17bd8dac33dad0 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Wed, 18 Nov 2020 11:33:29 -0800 Subject: [PATCH] Zombie API - breaking doors --- LICENSE.md | 1 + .../0250-Zombie-API-breaking-doors.patch | 30 +++++++++++++ .../0634-Zombie-API-breaking-doors.patch | 44 +++++++++++++++++++ 3 files changed, 75 insertions(+) create mode 100644 Spigot-API-Patches/0250-Zombie-API-breaking-doors.patch create mode 100644 Spigot-Server-Patches/0634-Zombie-API-breaking-doors.patch diff --git a/LICENSE.md b/LICENSE.md index 2e6c2acc6..a65ef3f4c 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -44,4 +44,5 @@ JRoy Robert Norman , ysl3000 KennyTV +Machine_Maker ``` diff --git a/Spigot-API-Patches/0250-Zombie-API-breaking-doors.patch b/Spigot-API-Patches/0250-Zombie-API-breaking-doors.patch new file mode 100644 index 000000000..e2a1a8350 --- /dev/null +++ b/Spigot-API-Patches/0250-Zombie-API-breaking-doors.patch @@ -0,0 +1,30 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Wed, 18 Nov 2020 11:32:15 -0800 +Subject: [PATCH] Zombie API - breaking doors + + +diff --git a/src/main/java/org/bukkit/entity/Zombie.java b/src/main/java/org/bukkit/entity/Zombie.java +index 1217576e6f08abf0175ab800cfca058d5deda116..a39fbc9fa0903be8ed8e89f3ef39f93c02dfc90b 100644 +--- a/src/main/java/org/bukkit/entity/Zombie.java ++++ b/src/main/java/org/bukkit/entity/Zombie.java +@@ -140,5 +140,19 @@ public interface Zombie extends Monster, Ageable { + * @param shouldBurnInDay True to burn in sunlight + */ + void setShouldBurnInDay(boolean shouldBurnInDay); ++ ++ /** ++ * Check if this zombie can break doors ++ * ++ * @return True if zombie can break doors ++ */ ++ boolean canBreakDoors(); ++ ++ /** ++ * Sets if this zombie can break doors ++ * ++ * @param canBreakDoors True if zombie can break doors ++ */ ++ void setCanBreakDoors(boolean canBreakDoors); + // Paper end + } diff --git a/Spigot-Server-Patches/0634-Zombie-API-breaking-doors.patch b/Spigot-Server-Patches/0634-Zombie-API-breaking-doors.patch new file mode 100644 index 000000000..08073e65f --- /dev/null +++ b/Spigot-Server-Patches/0634-Zombie-API-breaking-doors.patch @@ -0,0 +1,44 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Wed, 18 Nov 2020 11:32:46 -0800 +Subject: [PATCH] Zombie API - breaking doors + + +diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java +index e3606722cb1b3f6a11d34e1cdef7210280dba677..096c345da09b273c9e3e30e93759f5901c5e6fb4 100644 +--- a/src/main/java/net/minecraft/server/EntityZombie.java ++++ b/src/main/java/net/minecraft/server/EntityZombie.java +@@ -79,10 +79,12 @@ public class EntityZombie extends EntityMonster { + return (Boolean) this.getDataWatcher().get(EntityZombie.DROWN_CONVERTING); + } + ++ public boolean canBreakDoors() { return this.eU(); } // Paper - OBFHELPER + public boolean eU() { + return this.bs; + } + ++ public void setCanBreakDoors(boolean canBreakDoors) { this.u(canBreakDoors); } // Paper - OBFHELPER + public void u(boolean flag) { + if (this.eK() && PathfinderGoalUtil.a(this)) { + if (this.bs != flag) { +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java +index d334e656ea0f442a14864a05d4701df162487851..7fc71fad484502ad0e9c6c6f6b32aaaf7599a6dd 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java +@@ -129,6 +129,16 @@ public class CraftZombie extends CraftMonster implements Zombie { + public void setShouldBurnInDay(boolean shouldBurnInDay) { + getHandle().setShouldBurnInDay(shouldBurnInDay); + } ++ ++ @Override ++ public boolean canBreakDoors() { ++ return getHandle().canBreakDoors(); ++ } ++ ++ @Override ++ public void setCanBreakDoors(boolean canBreakDoors) { ++ getHandle().setCanBreakDoors(canBreakDoors); ++ } + // Paper end + + @Override