mirror of
https://github.com/exituser/Brewery.git
synced 2026-09-17 08:59:01 +00:00
Barrel implements InventoryHolder
This commit is contained in:
@@ -11,6 +11,7 @@ import org.bukkit.entity.Player;
|
|||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.event.player.PlayerInteractEvent;
|
import org.bukkit.event.player.PlayerInteractEvent;
|
||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
|
import org.bukkit.inventory.InventoryHolder;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.PotionMeta;
|
import org.bukkit.inventory.meta.PotionMeta;
|
||||||
import org.bukkit.configuration.ConfigurationSection;
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
@@ -26,7 +27,7 @@ import com.dre.brewery.integration.LogBlockBarrel;
|
|||||||
|
|
||||||
import org.apache.commons.lang.ArrayUtils;
|
import org.apache.commons.lang.ArrayUtils;
|
||||||
|
|
||||||
public class Barrel {
|
public class Barrel implements InventoryHolder {
|
||||||
|
|
||||||
public static CopyOnWriteArrayList<Barrel> barrels = new CopyOnWriteArrayList<Barrel>();
|
public static CopyOnWriteArrayList<Barrel> barrels = new CopyOnWriteArrayList<Barrel>();
|
||||||
private static int check = 0;
|
private static int check = 0;
|
||||||
@@ -49,9 +50,9 @@ public class Barrel {
|
|||||||
this.spigot = spigot;
|
this.spigot = spigot;
|
||||||
this.signoffset = sign;
|
this.signoffset = sign;
|
||||||
if (isLarge()) {
|
if (isLarge()) {
|
||||||
this.inventory = org.bukkit.Bukkit.createInventory(null, 27, P.p.languageReader.get("Etc_Barrel"));
|
this.inventory = org.bukkit.Bukkit.createInventory(this, 27, P.p.languageReader.get("Etc_Barrel"));
|
||||||
} else {
|
} else {
|
||||||
this.inventory = org.bukkit.Bukkit.createInventory(null, 9, P.p.languageReader.get("Etc_Barrel"));
|
this.inventory = org.bukkit.Bukkit.createInventory(this, 9, P.p.languageReader.get("Etc_Barrel"));
|
||||||
}
|
}
|
||||||
if (items != null) {
|
if (items != null) {
|
||||||
for (String slot : items.keySet()) {
|
for (String slot : items.keySet()) {
|
||||||
@@ -220,9 +221,9 @@ public class Barrel {
|
|||||||
public void open(Player player) {
|
public void open(Player player) {
|
||||||
if (inventory == null) {
|
if (inventory == null) {
|
||||||
if (isLarge()) {
|
if (isLarge()) {
|
||||||
inventory = org.bukkit.Bukkit.createInventory(null, 27, P.p.languageReader.get("Etc_Barrel"));
|
inventory = org.bukkit.Bukkit.createInventory(this, 27, P.p.languageReader.get("Etc_Barrel"));
|
||||||
} else {
|
} else {
|
||||||
inventory = org.bukkit.Bukkit.createInventory(null, 9, P.p.languageReader.get("Etc_Barrel"));
|
inventory = org.bukkit.Bukkit.createInventory(this, 9, P.p.languageReader.get("Etc_Barrel"));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (time > 0) {
|
if (time > 0) {
|
||||||
@@ -262,6 +263,11 @@ public class Barrel {
|
|||||||
player.openInventory(inventory);
|
player.openInventory(inventory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Inventory getInventory() {
|
||||||
|
return inventory;
|
||||||
|
}
|
||||||
|
|
||||||
// Returns true if this Block is part of this Barrel
|
// Returns true if this Block is part of this Barrel
|
||||||
public boolean hasBlock(Block block) {
|
public boolean hasBlock(Block block) {
|
||||||
if (block != null) {
|
if (block != null) {
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import org.bukkit.inventory.meta.PotionMeta;
|
|||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
|
||||||
|
import com.dre.brewery.Barrel;
|
||||||
import com.dre.brewery.Brew;
|
import com.dre.brewery.Brew;
|
||||||
import com.dre.brewery.P;
|
import com.dre.brewery.P;
|
||||||
import com.dre.brewery.integration.LogBlockBarrel;
|
import com.dre.brewery.integration.LogBlockBarrel;
|
||||||
@@ -60,11 +61,7 @@ public class InventoryListener implements Listener {
|
|||||||
if (event.getSlot() > 2) {
|
if (event.getSlot() > 2) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else if (event.getInventory().getType() == InventoryType.CHEST) {
|
} else if (!(event.getInventory().getHolder() instanceof Barrel)) {
|
||||||
if (!event.getInventory().getTitle().equals(P.p.languageReader.get("Etc_Barrel"))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -96,8 +93,7 @@ public class InventoryListener implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onInventoryClose(InventoryCloseEvent event) {
|
public void onInventoryClose(InventoryCloseEvent event) {
|
||||||
if (P.p.useLB) {
|
if (P.p.useLB) {
|
||||||
if (event.getInventory().getType() == InventoryType.CHEST) {
|
if (event.getInventory().getHolder() instanceof Barrel) {
|
||||||
if (event.getInventory().getTitle().equals(P.p.languageReader.get("Etc_Barrel"))) {
|
|
||||||
try {
|
try {
|
||||||
LogBlockBarrel.closeBarrel(event.getPlayer(), event.getInventory());
|
LogBlockBarrel.closeBarrel(event.getPlayer(), event.getInventory());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@@ -109,4 +105,3 @@ public class InventoryListener implements Listener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user