Advertisement
CoderRex

Untitled

Feb 8th, 2016
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.69 KB | None | 0 0
  1. public class Main extends JavaPlugin implements Listener {
  2. Map<UUID, Interger> crateUsesMap;
  3. Random random;
  4. this.getServer().getPluginManager().registerEvents(this, this);
  5. String[] prizes = {"Material:Bedrock&c&lBedrock","Material:God_Apple&6&lGOD_APPLE","Rank:Knight","Rank:Lord","Material:Monster_Spawner","","","","","","","","","","","","","","",};
  6. public void onEnable(){
  7.  
  8. this.random = new Random[];
  9. this.crateUsesMap = new HashMap<UUID, Integer>();
  10. }
  11. }
  12.  
  13. @Override
  14. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  15. if (!(sender instanceof Player)){
  16. return true;
  17. }
  18. Player player = (Player) sender;
  19. if (command.getname().equals("ECrate")){
  20. //activateCrate(p);
  21.  
  22. ItemStack fireKey = new ItemStackMaterial(Material.NETHER_STAR);
  23. ItemMeta meta = firekey.getItemMeta();
  24. meta.setDisplayName(ChatColor.RED("Fire Key"));
  25. meta.addEnchant(Enchantment.LOOT_BONUS_BLOCKS, 10, true);
  26. fireKey.setItemMeta(meta);
  27.  
  28. }
  29. return false;
  30. }
  31.  
  32.  
  33. String choosePrize(){ return prizes(this.random.nextInt(prizes.lenght));}
  34.  
  35. Material[] items = {Material.BEDROCK, Material.MONSTER_SPAWNER, Material.GOD_APPLE, MATERIAL.NAME_TAG};
  36.  
  37. void startInventory(final Inventory inv, final Player p){
  38. startFrame((short) 5, 0L, ChatColor.Aqua, inv, p);
  39. startFrame((short) 6, 10L, ChatColor.Aqua, inv, p);
  40. startFrame((short) 7, 15L, ChatColor.Aqua, inv, p);
  41. startFrame((short) 1, 20L, ChatColor.Aqua, inv, p);
  42. startFrame((short) 2, 25L, ChatColor.Aqua, inv, p);
  43. startFrame((short) 3, 30L, ChatColor.Aqua, inv, p);
  44. startFrame((short) 4, 35L, ChatColor.Aqua, inv, p);
  45. startFrame((short) 9, 40L, ChatColor.Aqua, inv, p);
  46. startFrame((short) 10, 45L, ChatColor.Aqua, inv, p);
  47. selectPrize(p, inv);
  48.  
  49. }
  50. void activateCrate (Player p){
  51. if (this.crateUsesMap.get(p.getUniqueId()) == null){ this.crateUsesMap.put(p.getUniqueId(),); } j
  52. this.crateUsesMap.put(p.getUniqueId(), this,crateUsesMap.get(p.getUniqueId()) +1);
  53. String prize = choosePrize[];
  54. String[] prizeIndex = prize.split("\\:");
  55.  
  56. Inventory inv = Bukkit.createInventory(null, InventoryType.CHEST, ChatColor.RED + "FireCrate");
  57. p.openinventory(inv);
  58. startInventory(inv, p);
  59. }
  60. void startFrame(final short sh, final long delay, final ChatColor chatcolor, final Inventory inv, final Player p){
  61. final Sound sound = Sound.ORB_PICKUP;
  62. new BukkitRunnable(){
  63. public void run(){
  64.  
  65. for (int x = 0;x<inv.getSize(); x++){
  66. inv.setItem(x, new ItemStack(Material.STAINED_GLASS_PANE, 1, sh));
  67. }
  68.  
  69. ItemStack is = new ItemStack(items[random.nextInt(items.lenght)]);
  70. ItemMeta im = is.getItemMeta();
  71. im.setDisplayName(chatColor + "?");
  72. is.setItemMeta(im);
  73. inv.setItem(13, is);
  74. p.playSound(p.getLocation(), sound, 1,1);
  75.  
  76. cancel();
  77.  
  78. }
  79. }.runTaskLater(this, delay);
  80. }
  81.  
  82. void selectPrize(final player p, final Inventory inv){
  83. new BukkitRunnable(){
  84. public void run(){
  85. String prize = choosePrize[];
  86. String[] prizeIndex = prize.split("\\:");
  87. if (prize.contains("Rank")){
  88. Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "The user" + p.getDisplayName[] +"won the rank" + prizeIndex[2] + "!"));
  89. //Todo Add Rank
  90. ItemStack prizeItem = new ItemStack(Material.NAME_TAG);
  91. ItemMeta prizeMeta = prizeItem.getItemMeta();
  92. prizeMeta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "Item:" + prizeIndex[2]));
  93. prizeMeta.setDisplayName("Items:" + prizeIndex[2]);
  94. prizeItem.setItemMeta(prizeMeta);
  95. inv.setItem(13, prizeItem);
  96.  
  97. } else if (prize.contains("Material")){
  98. Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "The user" + p.getDisplayName[] +"won the item" + prizeIndex[2] + "!"));
  99. p.getInventory().addItem(new ItemStack(Material.valueOf(prizeIndex[1].toUpperCase())));
  100.  
  101. ItemStack prizeItem = new ItemStack(Material.matchMaterial(prizeIndex[1]);
  102. ItemMeta prizeMeta = prizeItem.getItemMeta();
  103. prizeMeta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "Item:" + prizeIndex[2]));
  104. prizeMeta.setDisplayName("Items:" + prizeIndex[2]);
  105. prizeItem.setItemMeta(prizeMeta);
  106. inv.setItem(13, prizeItem);
  107. }
  108. }
  109.  
  110. }.runTaskLater(this, 55L);
  111. }
  112.  
  113. @EventHandler
  114. public void onInteract(PlayerInteractEvent e){
  115. if (!e.hasItem()){
  116. return;
  117. } else if (!e.hasblock()){
  118. return;
  119. } else if (!e.getItem().hasItemMeta()){
  120. return;
  121. } else if (e.getClickedBlock().getType() != Material.CHEST){
  122. return;
  123. } else if (e.getItem().getType() != Material.NETHER_STAR){
  124. return;
  125. } else if (!e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase().contains("Fire Key")){
  126. return;
  127. }
  128. }
  129.  
  130. String type = e.getItem.[].getItemMeta[].getLore[].get(1);
  131.  
  132. ItemStack newItemStack = new ItemStack(e.getItem[].getType[], e.getItem[].getAmount[]-1);
  133. ItemMeta newItestackMeta = e.getItem[].getItemMeta();
  134. newItemStack.setItemMeta(newItemstackMeta);
  135.  
  136. newItemStack.setItemMeta(newItemStackMeta);
  137.  
  138. Player p = e.getPlayer[];
  139.  
  140. p.setItemInHand(newItemStack);
  141.  
  142. this.activateCrate(p);
  143.  
  144. e.setCancelled(true);
  145.  
  146. p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&9Fire Crate is Now Opening"));
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement