Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.14 KB | None | 0 0
  1. package at.lukas.main;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.Location;
  5. import org.bukkit.Material;
  6. import org.bukkit.entity.Player;
  7. import org.bukkit.event.EventHandler;
  8. import org.bukkit.event.Listener;
  9. import org.bukkit.event.block.Action;
  10. import org.bukkit.event.inventory.InventoryType;
  11. import org.bukkit.event.player.PlayerInteractEvent;
  12. import org.bukkit.inventory.Inventory;
  13. import org.bukkit.inventory.ItemStack;
  14.  
  15. import java.util.ArrayList;
  16. import java.util.HashMap;
  17. import java.util.List;
  18. import java.util.Random;
  19.  
  20. public class PlayerInteractListener implements Listener {
  21.  
  22. public static HashMap<Location,Inventory> chest = new HashMap<>();
  23. private List<ItemStack> items = new ArrayList<>();
  24. private Inventory inv;
  25. private int i = 1;
  26. private int i2;
  27. private int i3;
  28.  
  29. Random rdm = new Random();
  30. Random rdm2 = new Random();
  31. Random rdm3 = new Random();
  32.  
  33. @EventHandler
  34. public void onInteract(PlayerInteractEvent e){
  35.  
  36. Player p = e.getPlayer();
  37.  
  38. if(e.getAction() == Action.RIGHT_CLICK_BLOCK){
  39. if(e.getClickedBlock().getType() == Material.CHEST){
  40. e.setCancelled(true);
  41. if(this.chest.containsKey(e.getClickedBlock().getLocation())){
  42. p.openInventory(this.chest.get(e.getClickedBlock().getLocation()));
  43. }else {
  44.  
  45. i = rdm.nextInt(14);
  46. inv = Bukkit.createInventory(null,InventoryType.CHEST);
  47.  
  48. items.add(new ItemStack(Material.WOOD_SWORD));
  49. items.add(new ItemStack(Material.STONE_SWORD));
  50. items.add(new ItemStack(Material.IRON_SWORD));
  51. items.add(new ItemStack(Material.DIAMOND_SWORD));
  52. items.add(new ItemStack(Material.OBSIDIAN));
  53. items.add(new ItemStack(Material.BOW));
  54. items.add(new ItemStack(Material.BRICK,64));
  55. items.add(new ItemStack(Material.COOKED_BEEF,32));
  56. items.add(new ItemStack(Material.ARROW,16));
  57.  
  58. while(i !=0) {
  59. i--;
  60. i2 = rdm2.nextInt(items.size());
  61. i3 = rdm3.nextInt(27);
  62. inv.setItem(i3,items.get(i2));
  63. }
  64.  
  65. this.chest.put(e.getClickedBlock().getLocation(),inv);
  66. p.openInventory(this.chest.get(e.getClickedBlock().getLocation()));
  67. return;
  68. }
  69. }
  70. }
  71.  
  72. }
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement