Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.syn.alecho.main;
- import java.util.ArrayList;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.inventory.InventoryCloseEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import me.syn.alecho.utils.Format;
- import me.syn.alecho.utils.Message;
- public class ShardsGUI implements Listener {
- public static List<Player> open = new ArrayList<Player>();
- public static Inventory menu(Player p, int tier, String itemType) {
- Inventory inv = Bukkit.createInventory(null, 27, Format.color("&c&l" + itemType + " Crusher"));
- ItemStack i = new ItemStack(Material.STAINED_GLASS_PANE);
- i.setDurability((byte) 7);
- ItemMeta m = i.getItemMeta();
- m.setDisplayName(Format.color("&7"));
- i.setItemMeta(m);
- for (int x = 0; x < 27; x++) {
- inv.setItem(x, i);
- }
- i = new ItemStack(Material.PRISMARINE_SHARD);
- m = i.getItemMeta();
- List<String> l = new ArrayList<String>();
- m.setDisplayName(Format.color("&c&lConfirm Shard Destruction"));
- l.add(Format.color("&7"));
- l.add(Format.color("&7Clicking this item will destroy"));
- l.add(Format.color("&7the &cT" + tier + " " + itemType + "&7 in your hand in"));
- l.add(Format.color("&7exchange for a &cT" + tier + " " + itemType + " Shard"));
- m.setLore(l);
- i.setItemMeta(m);
- inv.setItem(12, i);
- i = new ItemStack(Material.PRISMARINE_CRYSTALS);
- m = i.getItemMeta();
- List<String> l = new ArrayList<String>();
- m.setDisplayName(Format.color("&c&lConfirm Destructing All " + itemtype + "s"));
- l.add(Format.color("&7"));
- l.add(Format.color("&7Clicking this item will destroy"));
- l.add(Format.color("&7 all the &cT " + itemType + "s &7 in your hand in"));
- l.add(Format.color("&7 This cannot be undone!"));
- m.setLore(l);
- i.setItemMeta(m);
- inv.setItem(14, i);
- return inv;
- }
- @EventHandler
- public void onClick(InventoryClickEvent e) {
- Player p = (Player) e.getWhoClicked();
- if (open.contains(p)) {
- if (e.getRawSlot() < 27) {
- e.setCancelled(true);
- if (e.getRawSlot() == 12) {
- ItemStack i = p.getItemInHand();
- if (Relics.isRelic(i)) {
- int tier = Relics.getTier(i);
- p.getInventory().setItemInHand(null);
- p.getInventory().addItem(Relics.shard(tier, i.getAmount()));
- p.updateInventory();
- p.closeInventory();
- Message.player(Main.prefix + "You turned &c" + i.getAmount() + " T" + tier
- + " Relic(s)&7 into &cShards", p);
- return;
- }
- if (Artefacts.isArtefact(i)) {
- int tier = Artefacts.getTier(i);
- p.getInventory().setItemInHand(null);
- p.getInventory().addItem(Artefacts.shard(tier, i.getAmount()));
- p.updateInventory();
- p.closeInventory();
- Message.player(Main.prefix + "You turned &c" + i.getAmount() + " T" + tier
- + " Artefact(s)&7 into &cShards", p);
- return;
- }
- }
- }
- }
- }
- public void onClick(InventoryClickEvent e) {
- Player p = (Player) e.getWhoClicked();
- if (open.contains(p)) {
- if (e.getRawSlot() < 27) {
- HashMap artefacts = new HashMap();
- HashMap relics = new HashMap();
- e.setCancelled(true);
- if (e.getRawSlot() == 14) {
- ItemStack it = p.getItemInHand();
- int type = 2;
- if(Relic.isRelic(it)){
- type = 0;
- }
- if(Artefact.isArtefact(it)){
- type = 1;
- }
- for(i = 0; i < 36; i++){
- player.getInventory().getItem(i);
- if (Relics.isRelic(i) && type == 0 ) {
- int tier = Relics.getTier(i);
- p.getInventory().setItemInHand(null);
- p.getInventory().addItem(Relics.shard(tier, i.getAmount()));
- p.updateInventory();
- if (relics.keySet().contains(tier)){
- i += relics.get(tier);
- }
- relics.put(tier, i);
- }
- if (Artefacts.isArtefact(i) && type == 1) {
- int tier = Artefacts.getTier(i);
- p.getInventory().setItemInHand(null);
- p.getInventory().addItem(Artefacts.shard(tier, i.getAmount()));
- p.updateInventory();
- if (artefacts.keySet().contains(tier)){
- i += artefacts.get(tier);
- }
- artefacts.put(tier, i);
- }
- }
- for(i in relics.keySet()){
- Message.player(Main.prefix + "You turned &c" + relics.get(i) + " T" + i
- + " Relics(s)&7 into &cShards", p);
- }
- for (j in artefacts.keySet()){
- Message.player(Main.prefix + "You turned &c" + artefacts.get(j) + " T" + j
- + " Artefact(s)&7 into &cShards", p);
- }
- p.closeInventory();
- return;
- }
- }
- }
- }
- @EventHandler
- public void onClose(InventoryCloseEvent e) {
- Player p = (Player) e.getPlayer();
- if (open.contains(p))
- open.remove(p);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement