Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private String invBanner = "Bannière";
- ArrayList<Pattern> patternList = new ArrayList<Pattern>();
- DyeColor dyeColor = DyeColor.WHITE;
- int getPage = 1;
- boolean itIsBlack = false;
- public void openInv(Player p){
- Inventory menu = Bukkit.createInventory(null, 54, invBanner);
- updateItems(menu);
- p.openInventory(menu);
- }
- //tempo
- @EventHandler
- public void onSneak(PlayerToggleSneakEvent e){
- if(e.getPlayer().isSneaking())
- openInv(e.getPlayer());
- }
- //tempo
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onClick(InventoryClickEvent e){
- Player p = (Player)e.getWhoClicked();
- if(e.getInventory().getName().equalsIgnoreCase(invBanner)){
- if(e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR)
- return;
- if(e.getCurrentItem()!= null || e.getCurrentItem().getType() != Material.AIR)
- e.setCancelled(true);
- if(e.getCurrentItem().getType().equals(Material.TRIPWIRE_HOOK)){
- if(patternList.toArray().length > 0){
- patternList.remove(patternList.toArray().length - 1);
- }
- updateItems(e.getInventory());
- p.updateInventory();
- return;
- }
- if(e.getCurrentItem().getType().equals(Material.BARRIER)){
- p.playSound(p.getLocation(), Sound.BLOCK_ANVIL_HIT, 9, 1);
- return;
- }
- if(e.getCurrentItem().getType().equals(Material.SIGN)){
- if(e.getCurrentItem().getItemMeta().getDisplayName().contains("2") && e.getSlot() == 53)
- getPage = 2;
- if(e.getCurrentItem().getItemMeta().getDisplayName().contains("1") && e.getSlot() == 45)
- getPage = 1;
- if(e.getCurrentItem().getItemMeta().getDisplayName().contains("3") && e.getSlot() == 53)
- getPage = 3;
- if(e.getCurrentItem().getItemMeta().getDisplayName().contains("2") && e.getSlot() == 45)
- getPage = 2;
- updateItems(e.getInventory());
- p.updateInventory();
- return;
- }
- if(e.getCurrentItem().getType().equals(Material.INK_SACK)){
- itIsBlack = false;
- if(e.getCurrentItem().getData().getData() == 0)
- dyeColor = DyeColor.WHITE;itIsBlack = true;
- if(e.getCurrentItem().getData().getData() == 1)
- dyeColor = DyeColor.RED;
- if(e.getCurrentItem().getData().getData() == 2)
- dyeColor = DyeColor.GREEN;
- if(e.getCurrentItem().getData().getData() == 3)
- dyeColor = DyeColor.BROWN;
- if(e.getCurrentItem().getData().getData() == 4)
- dyeColor = DyeColor.BLUE;
- if(e.getCurrentItem().getData().getData() == 5)
- dyeColor = DyeColor.PURPLE;
- if(e.getCurrentItem().getData().getData() == 6)
- dyeColor = DyeColor.CYAN;
- if(e.getCurrentItem().getData().getData() == 7)
- dyeColor = DyeColor.GRAY;
- if(e.getCurrentItem().getData().getData() == 8)
- dyeColor = DyeColor.SILVER;
- if(e.getCurrentItem().getData().getData() == 9)
- dyeColor = DyeColor.PINK;
- if(e.getCurrentItem().getData().getData() == 10)
- dyeColor = DyeColor.LIME;
- if(e.getCurrentItem().getData().getData() == 11)
- dyeColor = DyeColor.YELLOW;
- if(e.getCurrentItem().getData().getData() == 12)
- dyeColor = DyeColor.LIGHT_BLUE;
- if(e.getCurrentItem().getData().getData() == 13)
- dyeColor = DyeColor.MAGENTA;
- if(e.getCurrentItem().getData().getData() == 14)
- dyeColor = DyeColor.ORANGE;
- if(e.getCurrentItem().getData().getData() == 15)
- dyeColor = DyeColor.WHITE;
- updateItems(e.getInventory());
- p.updateInventory();
- }
- if(e.getCurrentItem().getType().equals(Material.BANNER)){
- if(e.getSlot() == 0){
- ItemStack banner = new ItemStack(Material.BANNER, 1);
- BannerMeta bannermeta = (BannerMeta) banner.getItemMeta();
- if(patternList != null){bannermeta.setPatterns(patternList);}
- banner.setItemMeta(bannermeta);
- p.getInventory().addItem(banner);
- p.closeInventory();
- return;
- }
- patternList.addAll(((BannerMeta) e.getCurrentItem().getItemMeta()).getPatterns());
- updateItems(e.getInventory());
- p.updateInventory();
- }
- }
- }
- @EventHandler
- public void onInventory(InventoryCloseEvent e){
- if(e.getInventory().getName().equals(invBanner)){
- patternList.clear();
- dyeColor = DyeColor.WHITE;
- getPage = 1;
- }
- }
- public void updateItems(Inventory menu){
- if(getPage == 3){
- for(int i = 0; i < 54; i++){
- menu.setItem(i, new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)7));
- }
- }
- ItemStack banner = new ItemStack(Material.BANNER, 1);
- BannerMeta bannermeta = (BannerMeta) banner.getItemMeta();
- bannermeta.setDisplayName("§aTerminer");
- if(patternList != null){bannermeta.setPatterns(patternList);}
- banner.setItemMeta(bannermeta);
- menu.setItem(0, banner);
- if(patternList.size() > 0){
- ItemStack undo = new ItemStack(Material.TRIPWIRE_HOOK, 1);
- ItemMeta undometa = undo.getItemMeta();
- undometa.setDisplayName("§aAnnuler");
- undo.setItemMeta(undometa);
- menu.setItem(9, undo);
- }else{
- ItemStack remove = new ItemStack(Material.BARRIER, 1);
- ItemMeta removemeta = remove.getItemMeta();
- removemeta.setDisplayName("§cVous n'avez aucune action précédente!");
- remove.setItemMeta(removemeta);
- menu.setItem(9, remove);
- }
- int item = 2;
- int data = 15;
- for(int i = 2; i < 18; i++){
- ItemStack dye = new ItemStack(Material.INK_SACK, 1, (short)data);
- ItemMeta dyemeta = dye.getItemMeta();
- dye.setItemMeta(dyemeta);
- menu.setItem(item, dye);
- item++;
- data--;
- if(item == 9){
- item = item + 2;
- }
- if(item == 18){
- item = item + 7;
- }
- }
- if(getPage == 1){
- setPage1(menu);
- }
- if(getPage == 2){
- setPage2(menu);
- }
- if(getPage == 3){
- setPage3(menu);
- }
- for(int i = 0; i < 54; i++){
- if(menu.getItem(i) == null || menu.getItem(i).getType() == Material.AIR){
- menu.setItem(i, new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)7));
- }
- }
- }
- public void setPage1(Inventory menu){
- ItemStack page = new ItemStack(Material.SIGN, 1);
- ItemMeta pagemeta = page.getItemMeta();
- pagemeta.setDisplayName("§aPage 2");
- page.setItemMeta(pagemeta);
- menu.setItem(53, page);
- int i = 36;
- for(PatternType patterns : PatternType.values()){
- if(i < 53){
- ItemStack banner = new ItemStack(Material.BANNER, 1);
- BannerMeta bannermeta = (BannerMeta) banner.getItemMeta();
- ArrayList<Pattern> bannerpattern = new ArrayList<Pattern>();
- bannerpattern.add(new Pattern(dyeColor, patterns));
- bannermeta.setPatterns(bannerpattern);
- banner.setItemMeta(bannermeta);
- menu.setItem(i, banner);
- i++;
- }
- }
- }
- public void setPage2(Inventory menu){
- ItemStack page = new ItemStack(Material.SIGN, 1);
- ItemMeta pagemeta = page.getItemMeta();
- pagemeta.setDisplayName("§aPage 1");
- page.setItemMeta(pagemeta);
- menu.setItem(45, page);
- ItemStack page1 = new ItemStack(Material.SIGN, 1);
- ItemMeta pagemeta1 = page1.getItemMeta();
- pagemeta1.setDisplayName("§aPage 3");
- page1.setItemMeta(pagemeta1);
- menu.setItem(53, page1);
- int i = 19;
- for(PatternType patterns : PatternType.values()){
- if(i < 53){
- if(i == 45)
- i++;
- ItemStack banner = new ItemStack(Material.BANNER, 1);
- BannerMeta bannermeta = (BannerMeta) banner.getItemMeta();
- ArrayList<Pattern> bannerpattern = new ArrayList<Pattern>();
- bannerpattern.add(new Pattern(dyeColor, patterns));
- bannermeta.setPatterns(bannerpattern);
- banner.setItemMeta(bannermeta);
- if(i >= 36)
- menu.setItem(i, banner);
- i++;
- }
- }
- }
- public void setPage3(Inventory menu){
- ItemStack page = new ItemStack(Material.SIGN, 1);
- ItemMeta pagemeta = page.getItemMeta();
- pagemeta.setDisplayName("§aPage 2");
- page.setItemMeta(pagemeta);
- menu.setItem(45, page);
- int i = 3;
- for(PatternType patterns : PatternType.values()){
- if(i < 53){
- if(i == 45)
- i++;
- ItemStack banner = new ItemStack(Material.BANNER, 1);
- BannerMeta bannermeta = (BannerMeta) banner.getItemMeta();
- ArrayList<Pattern> bannerpattern = new ArrayList<Pattern>();
- bannerpattern.add(new Pattern(dyeColor, patterns));
- bannermeta.setPatterns(bannerpattern);
- banner.setItemMeta(bannermeta);
- if(i >= 36)
- menu.setItem(i, banner);
- i++;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement