Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.broken.cheststorage.ChestStorage;
- import org.broken.cheststorage.Guimenus.GuiUpgradePages;
- import org.broken.cheststorage.cache.ContainerRegistry;
- import org.broken.cheststorage.containerholders.InventoryHolder;
- import org.broken.cheststorage.util.MetadataEnumsForGui;
- import org.bukkit.Location;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.inventory.InventoryType;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.mineacademy.fo.SerializeUtil;
- import org.mineacademy.fo.remain.CompMetadata;
- public class MenuEvents implements Listener {
- ChestStorage plugin = ChestStorage.getInstance();
- @EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
- public void onInteract(InventoryClickEvent event) {
- if (event.getSlotType() != InventoryType.SlotType.OUTSIDE) return;
- Player player = (Player) event.getWhoClicked();
- if (player.hasMetadata(MetadataEnumsForGui.INVENTORY_CRAFTINGGUI.toString())) return;
- if (player.hasMetadata(MetadataEnumsForGui.INVENTORY_FILTERGUI.toString())) return;
- if (player.hasMetadata(MetadataEnumsForGui.INVENTORY_LINKTOCONTAINER.toString())) return;
- Inventory clickedInventory = event.getView().getTopInventory();
- ContainerRegistry registry = ContainerRegistry.getInstance();
- GuiUpgradePages upgradePages = GuiUpgradePages.getInstance();
- Location location = SerializeUtil.deserializeLocation(CompMetadata.getMetadata(player,
- MetadataEnumsForGui.CHEST_METADATA.toString()));
- if (location != null) {
- if (upgradePages.getBuyGuiForPlayer(player) != null)
- if (upgradePages.getBuyGuiForPlayer(player).equals(clickedInventory)) {
- event.setCancelled(true);
- return;
- }
- InventoryHolder defultchest = plugin.getClassinstans().createObjektInventoryHolder(location, player);
- if (defultchest != null && defultchest.getInventory(location) != null && registry.isRegistered(location) &&
- defultchest.getInventory(location).contains(clickedInventory)
- && registry.getTypeofContainer(location) == ContainerRegistry.TypeOfContainer.PAGEDCONTAINER) {
- defultchest.onClickingInsideGui(registry, upgradePages, location, event, player);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement