File tree Expand file tree Collapse file tree 2 files changed +9
-1
lines changed
src/main/java/net/glowstone/entity Expand file tree Collapse file tree 2 files changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -440,7 +440,7 @@ private GlowInventory getTopInventory() {
440
440
return (GlowInventory ) getOpenInventory ().getTopInventory ();
441
441
}
442
442
443
- private void resetInventoryView () {
443
+ void resetInventoryView () {
444
444
openInventory (new GlowInventoryView (this ));
445
445
}
446
446
Original file line number Diff line number Diff line change 160
160
import org .bukkit .event .entity .EntityRegainHealthEvent ;
161
161
import org .bukkit .event .entity .EntityRegainHealthEvent .RegainReason ;
162
162
import org .bukkit .event .entity .FoodLevelChangeEvent ;
163
+ import org .bukkit .event .inventory .InventoryOpenEvent ;
163
164
import org .bukkit .event .player .AsyncPlayerChatEvent ;
164
165
import org .bukkit .event .player .PlayerAchievementAwardedEvent ;
165
166
import org .bukkit .event .player .PlayerBedEnterEvent ;
@@ -3042,6 +3043,13 @@ public void openInventory(InventoryView view) {
3042
3043
invMonitor = new InventoryMonitor (getOpenInventory ());
3043
3044
int viewId = invMonitor .getId ();
3044
3045
if (viewId != 0 ) {
3046
+ InventoryOpenEvent event = EventFactory .getInstance ().callEvent (
3047
+ new InventoryOpenEvent (view ));
3048
+ if (event .isCancelled ()) {
3049
+ // close the inventory but don't fire the InventoryCloseEvent
3050
+ resetInventoryView ();
3051
+ return ;
3052
+ }
3045
3053
String title = view .getTitle ();
3046
3054
boolean defaultTitle = Objects .equals (view .getType ().getDefaultTitle (), title );
3047
3055
if (view .getTopInventory () instanceof PlayerInventory && defaultTitle ) {
You can’t perform that action at this time.
0 commit comments