summaryrefslogtreecommitdiffstats
path: root/nms-patches
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches')
-rw-r--r--nms-patches/TileEntityBrewingStand.patch18
-rw-r--r--nms-patches/TileEntityContainer.patch3
2 files changed, 12 insertions, 9 deletions
diff --git a/nms-patches/TileEntityBrewingStand.patch b/nms-patches/TileEntityBrewingStand.patch
index 11833f96..fe3d21e3 100644
--- a/nms-patches/TileEntityBrewingStand.patch
+++ b/nms-patches/TileEntityBrewingStand.patch
@@ -1,6 +1,6 @@
--- a/net/minecraft/server/TileEntityBrewingStand.java
+++ b/net/minecraft/server/TileEntityBrewingStand.java
-@@ -3,6 +3,15 @@
+@@ -3,6 +3,16 @@
import java.util.Arrays;
import java.util.Iterator;
@@ -11,12 +11,13 @@
+import org.bukkit.entity.HumanEntity;
+import org.bukkit.event.inventory.BrewEvent;
+import org.bukkit.event.inventory.BrewingStandFuelEvent;
++import org.bukkit.inventory.InventoryHolder;
+// CraftBukkit end
+
public class TileEntityBrewingStand extends TileEntityContainer implements ITickable, IWorldInventory {
private static final int[] a = new int[] { 3};
-@@ -14,6 +23,31 @@
+@@ -14,6 +24,31 @@
private Item k;
private String l;
private int fuelLevel;
@@ -48,7 +49,7 @@
public TileEntityBrewingStand() {
this.items = NonNullList.a(5, ItemStack.a);
-@@ -55,8 +89,19 @@
+@@ -55,8 +90,19 @@
ItemStack itemstack = (ItemStack) this.items.get(4);
if (this.fuelLevel <= 0 && itemstack.getItem() == Items.BLAZE_POWDER) {
@@ -70,7 +71,7 @@
this.update();
}
-@@ -64,9 +109,14 @@
+@@ -64,9 +110,14 @@
boolean flag1 = this.brewTime > 0;
ItemStack itemstack1 = (ItemStack) this.items.get(3);
@@ -87,13 +88,14 @@
if (flag2 && flag) {
this.p();
-@@ -140,6 +190,15 @@
+@@ -140,6 +191,16 @@
private void p() {
ItemStack itemstack = (ItemStack) this.items.get(3);
+ // CraftBukkit start
-+ if (getOwner() != null) {
-+ BrewEvent event = new BrewEvent(world.getWorld().getBlockAt(position.getX(), position.getY(), position.getZ()), (org.bukkit.inventory.BrewerInventory) this.getOwner().getInventory(), this.fuelLevel);
++ InventoryHolder owner = this.getOwner();
++ if (owner != null) {
++ BrewEvent event = new BrewEvent(world.getWorld().getBlockAt(position.getX(), position.getY(), position.getZ()), (org.bukkit.inventory.BrewerInventory) owner.getInventory(), this.fuelLevel);
+ org.bukkit.Bukkit.getPluginManager().callEvent(event);
+ if (event.isCancelled()) {
+ return;
@@ -103,7 +105,7 @@
for (int i = 0; i < 3; ++i) {
this.items.set(i, PotionBrewer.d(itemstack, (ItemStack) this.items.get(i)));
-@@ -210,7 +269,7 @@
+@@ -210,7 +271,7 @@
}
public int getMaxStackSize() {
diff --git a/nms-patches/TileEntityContainer.patch b/nms-patches/TileEntityContainer.patch
index 3484ee4f..e49e2ca9 100644
--- a/nms-patches/TileEntityContainer.patch
+++ b/nms-patches/TileEntityContainer.patch
@@ -1,6 +1,6 @@
--- a/net/minecraft/server/TileEntityContainer.java
+++ b/net/minecraft/server/TileEntityContainer.java
-@@ -37,4 +37,11 @@
+@@ -37,4 +37,12 @@
public IChatBaseComponent getScoreboardDisplayName() {
return (IChatBaseComponent) (this.hasCustomName() ? new ChatComponentText(this.getName()) : new ChatMessage(this.getName(), new Object[0]));
}
@@ -8,6 +8,7 @@
+ // CraftBukkit start
+ @Override
+ public org.bukkit.Location getLocation() {
++ if (world == null) return null;
+ return new org.bukkit.Location(world.getWorld(), position.getX(), position.getY(), position.getZ());
+ }
+ // CraftBukkit end