|
@@ -406,39 +406,41 @@ public class InventoryListener implements Listener {
|
|
|
|
|
|
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
|
|
public void onInventoryMoveItemEvent(InventoryMoveItemEvent event) {
|
|
|
+ final Inventory inventory = event.getDestination();
|
|
|
+
|
|
|
+ if (!(inventory instanceof BrewerInventory)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
/* WORLD BLACKLIST CHECK */
|
|
|
+ final Location sourceLocation = event.getSource().getLocation();
|
|
|
+ if (sourceLocation != null && WorldBlacklist.isWorldBlacklisted(sourceLocation.getWorld())) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- if (event.getSource().getLocation() != null) {
|
|
|
- if (WorldBlacklist.isWorldBlacklisted(event.getSource().getLocation().getWorld())) {
|
|
|
- return;
|
|
|
- }
|
|
|
+ ItemStack item = event.getItem();
|
|
|
+
|
|
|
+ if (mcMMO.p.getGeneralConfig().getPreventHopperTransferIngredients()
|
|
|
+ && item.getType() != Material.POTION && item.getType() != Material.SPLASH_POTION
|
|
|
+ && item.getType() != Material.LINGERING_POTION) {
|
|
|
+ event.setCancelled(true);
|
|
|
+ return;
|
|
|
}
|
|
|
|
|
|
- final Inventory inventory = event.getDestination();
|
|
|
+ if (mcMMO.p.getGeneralConfig().getPreventHopperTransferBottles() && (
|
|
|
+ item.getType() == Material.POTION || item.getType() == Material.SPLASH_POTION
|
|
|
+ || item.getType() == Material.LINGERING_POTION)) {
|
|
|
+ event.setCancelled(true);
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- if (!(inventory instanceof BrewerInventory)) {
|
|
|
+ if (!mcMMO.p.getGeneralConfig().getEnabledForHoppers()) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
final InventoryHolder holder = inventory.getHolder();
|
|
|
|
|
|
if (holder instanceof BrewingStand brewingStand) {
|
|
|
-
|
|
|
- ItemStack item = event.getItem();
|
|
|
-
|
|
|
- if (mcMMO.p.getGeneralConfig().getPreventHopperTransferIngredients()
|
|
|
- && item.getType() != Material.POTION && item.getType() != Material.SPLASH_POTION
|
|
|
- && item.getType() != Material.LINGERING_POTION) {
|
|
|
- event.setCancelled(true);
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- if (mcMMO.p.getGeneralConfig().getPreventHopperTransferBottles() && (
|
|
|
- item.getType() == Material.POTION || item.getType() == Material.SPLASH_POTION
|
|
|
- || item.getType() == Material.LINGERING_POTION)) {
|
|
|
- event.setCancelled(true);
|
|
|
- return;
|
|
|
- }
|
|
|
int ingredientLevel = 1;
|
|
|
|
|
|
OfflinePlayer offlinePlayer = ContainerMetadataUtils.getContainerOwner(brewingStand);
|
|
@@ -449,8 +451,7 @@ public class InventoryListener implements Listener {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (mcMMO.p.getGeneralConfig().getEnabledForHoppers()
|
|
|
- && AlchemyPotionBrewer.isValidIngredientByLevel(ingredientLevel, item)) {
|
|
|
+ if (AlchemyPotionBrewer.isValidIngredientByLevel(ingredientLevel, item)) {
|
|
|
AlchemyPotionBrewer.scheduleCheck(brewingStand);
|
|
|
}
|
|
|
}
|