Brewery/src/com/dre/brewery/listeners/InventoryListener.java
2013-07-03 18:06:13 +02:00

50 lines
1.2 KiB
Java

package com.dre.brewery.listeners;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.BrewEvent;
import org.bukkit.inventory.BrewerInventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.Material;
import com.dre.brewery.Brew;
public class InventoryListener implements Listener {
@EventHandler(priority = EventPriority.HIGH)
public void onBrew(BrewEvent event) {
int slot = 0;
BrewerInventory inv = event.getContents();
ItemStack item;
boolean custom = false;
Boolean[] contents = new Boolean[3];
while (slot < 3) {
item = inv.getItem(slot);
contents[slot] = false;
if (item != null) {
if (item.getType() == Material.POTION) {
if (item.hasItemMeta()) {
int uid = Brew.getUID(item);
if (Brew.potions.containsKey(uid)) {
// has custom potion in "slot"
if (Brew.get(uid).canDistill()) {
// is further distillable
contents[slot] = true;
custom = true;
}
}
}
}
}
slot++;
}
if (custom) {
event.setCancelled(true);
Brew.distillAll(inv, contents);
}
}
}