@@ -1,117 +0,0 @@
|
||||
From 898ed50fc7a54f6c3612f0d51f4bd2d9d410e700 Mon Sep 17 00:00:00 2001
|
||||
From: bloodshot <jdroque@gmail.com>
|
||||
Date: Mon, 6 Jan 2014 16:29:51 -0500
|
||||
Subject: [PATCH] Update Chest Animation when Cancelling Event
|
||||
|
||||
Update chest animation after cancelling InventoryOpenEvent. Fixes BUKKIT-1440
|
||||
|
||||
Currently if a plugin cancels an InventoryOpenEvent for vanilla chests,
|
||||
the chest animation for clients is stuck in the open state since
|
||||
IInventory's closeChest method is never called. To fix the issue, closeChest
|
||||
is called before exiting the display GUI method.
|
||||
More info can be found here
|
||||
https://bukkit.atlassian.net/browse/BUKKIT-1440
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
index d32a2d2..fda1e26 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
@@ -634,7 +634,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerChest(this.inventory, iinventory));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ iinventory.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -647,7 +650,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openHopper(TileEntityHopper tileentityhopper) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerHopper(this.inventory, tileentityhopper));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ tileentityhopper.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -660,7 +666,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openMinecartHopper(EntityMinecartHopper entityminecarthopper) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerHopper(this.inventory, entityminecarthopper));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ entityminecarthopper.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -673,7 +682,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openFurnace(TileEntityFurnace tileentityfurnace) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerFurnace(this.inventory, tileentityfurnace));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ tileentityfurnace.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -686,7 +698,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openDispenser(TileEntityDispenser tileentitydispenser) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerDispenser(this.inventory, tileentitydispenser));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ tileentitydispenser.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -699,7 +714,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openBrewingStand(TileEntityBrewingStand tileentitybrewingstand) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerBrewingStand(this.inventory, tileentitybrewingstand));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ tileentitybrewingstand.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -712,7 +730,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openBeacon(TileEntityBeacon tileentitybeacon) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerBeacon(this.inventory, tileentitybeacon));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ tileentitybeacon.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
this.nextContainerCounter();
|
||||
@@ -755,7 +776,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
public void openHorseInventory(EntityHorse entityhorse, IInventory iinventory) {
|
||||
// CraftBukkit start - Inventory open hook
|
||||
Container container = CraftEventFactory.callInventoryOpenEvent(this, new ContainerHorse(this.inventory, iinventory, entityhorse));
|
||||
- if(container == null) return;
|
||||
+ if(container == null) {
|
||||
+ iinventory.l_();
|
||||
+ return;
|
||||
+ }
|
||||
// CraftBukkit end
|
||||
|
||||
if (this.activeContainer != this.defaultContainer) {
|
||||
--
|
||||
1.8.5.2.msysgit.0
|
||||
|
||||
Reference in New Issue
Block a user