SHARE
TWEET

Untitled

a guest Jun 24th, 2019 69 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package fr.pierrot.risitas.listeners;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import java.util.Map;
  7. import java.util.Map.Entry;
  8.  
  9. import org.bukkit.Sound;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.EventHandler;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.event.inventory.ClickType;
  14. import org.bukkit.event.inventory.InventoryClickEvent;
  15. import org.bukkit.inventory.Inventory;
  16. import org.bukkit.inventory.ItemStack;
  17. import org.bukkit.inventory.PlayerInventory;
  18. import org.bukkit.inventory.meta.ItemMeta;
  19.  
  20. import fr.pierrot.risitas.Risitas;
  21.  
  22. public class InventoryClick implements Listener {
  23.    
  24.     private Risitas main;
  25.     public InventoryClick(Risitas main) {
  26.         this.main = main;
  27.     }
  28.    
  29.     public static  HashMap<Player, HashMap<ItemStack, Integer>> items = new HashMap<Player, HashMap<ItemStack, Integer>>();
  30.    
  31.     public static HashMap<Player, List<String>> lore = new HashMap<Player, List<String>>();
  32.  
  33.     public static  HashMap<Player, HashMap<ItemStack, Integer>> sold = new HashMap<Player, HashMap<ItemStack, Integer>>();
  34.    
  35.     @SuppressWarnings("deprecation")
  36.     @EventHandler
  37.     public void onClick(InventoryClickEvent e) {
  38.        
  39.         if(e.getCurrentItem() == null) return;
  40.         if(!e.getCurrentItem().hasItemMeta()) return;
  41.        
  42.         Player p = (Player) e.getWhoClicked();
  43.        
  44.         ItemStack t = e.getCurrentItem();
  45.        
  46.         String tM = t.getItemMeta().getDisplayName();
  47.        
  48.         Inventory inv = p.getInventory();
  49.        
  50.         String invName = e.getInventory().getTitle();
  51.        
  52.         if(tM == "§7Aya") {
  53.            
  54.             e.setCancelled(true);
  55.        
  56.             p.playSound(p.getLocation(), Sound.LEVEL_UP, 5, 5);
  57.  
  58.             p.closeInventory();
  59.  
  60.             main.blocksInventory.openInv(p);
  61.  
  62.         }
  63.  
  64.         if(invName.equals("§7Risitas") || invName.equals("§7Jesus")) {
  65.        
  66.             if(t.getItemMeta().hasLore()) {
  67.                
  68.                     if(e.getClick() == ClickType.LEFT) {
  69.                        
  70.                                 p.closeInventory();
  71.                                
  72.                                 p.sendMessage(main.prefix + "Bien vu !");
  73.  
  74.                                 HashMap<ItemStack, Integer> map = new HashMap<ItemStack, Integer>();
  75.  
  76.                                 map.put(t, 1);
  77.                                
  78.                                 items.put(p, map);
  79.                                 lore.put(p, t.getItemMeta().getLore());
  80.                                 main.stop.put(p, 1);
  81.                            
  82.                        
  83.                     } else if(e.getClick() == ClickType.RIGHT) {
  84.                        
  85.                         PlayerInventory inventory = e.getWhoClicked().getInventory();
  86.                        
  87.                         if(!t.getItemMeta().getLore().get(2).equalsIgnoreCase("§7Issou")) {
  88.                        
  89.                             if(inventory.contains(t.getTypeId())) {
  90.                                
  91.                                 p.closeInventory();
  92.                                
  93.                                 p.sendMessage(main.prefix + "Wut ?");
  94.                                
  95.                                 HashMap<ItemStack, Integer> map = new HashMap<ItemStack, Integer>();
  96.                                
  97.                                 map.put(t, 1);
  98.                                
  99.                                 sold.put(p, map);
  100.                                
  101.                                 lore.put(p, t.getItemMeta().getLore());
  102.                                
  103.                                 main.stop2.put(p, 1);
  104.                                
  105.                             }
  106.                        
  107.                         }
  108.                        
  109.                     } else if(e.getClick() == ClickType.MIDDLE) {
  110.                        
  111.                         PlayerInventory inventory = e.getWhoClicked().getInventory();
  112.                        
  113.                         if(!t.getItemMeta().getLore().get(2).equalsIgnoreCase("§7Issou")) {
  114.                        
  115.                             if(inventory.contains(t.getTypeId())) {
  116.                                
  117.                                 Map<Integer, ? extends ItemStack> matches = inventory.all(t.getType());
  118.                                
  119.                                 int count = 0;
  120.        
  121.                                 for(int slot : matches.keySet()) {
  122.                                    
  123.                                     ItemStack item = matches.get(slot);
  124.                                    
  125.                                     if(item.getType() == t.getType() && item.getData().getData() == t.getData().getData()){
  126.                                        
  127.                                         count += item.getAmount();
  128.                                        
  129.                                         inventory.clear(slot);
  130.                                    
  131.                                         p.sendMessage(main.prefix + count);
  132.                                        
  133.                                         p.playSound(p.getLocation(), Sound.SUCCESSFUL_HIT, 3, 3);
  134.    
  135.                                         p.closeInventory();
  136.                                        
  137.                                         break;
  138.                                        
  139.                                     }
  140.                                    
  141.                                    
  142.                                 }
  143.                                
  144.                             }
  145.                        
  146.                         }
  147.                            
  148.                     }
  149.                    
  150.                 }
  151.                
  152.             }
  153.            
  154.             e.setCancelled(true);
  155.            
  156.         }
  157.        
  158.     public static void setItem(Player p) {
  159.        
  160.         if(items.containsKey(p)) {
  161.            
  162.             for(Entry<ItemStack, Integer> i : items.get(p).entrySet()) {
  163.                
  164.                     ItemStack item = i.getKey();
  165.                     item.setAmount(i.getValue());
  166.                    
  167.                     if(item.hasItemMeta()) {
  168.                        
  169.                         ItemMeta itm = item.getItemMeta();
  170.                        
  171.                         if(itm.hasLore()) {
  172.                            
  173.                             itm.setLore(new ArrayList<String>());
  174.                            
  175.                         }
  176.                        
  177.                         if(itm.hasDisplayName()) {
  178.                            
  179.                             itm.setDisplayName("");
  180.                            
  181.                         }
  182.                        
  183.                         item.setItemMeta(itm);
  184.                        
  185.                     }
  186.                    
  187.                     p.getInventory().addItem(item);
  188.  
  189.             }
  190.            
  191.         }
  192.        
  193.     }
  194.    
  195. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top