Advertisement
XlAlbertlX

Untitled

Oct 9th, 2023 (edited)
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.74 KB | Gaming | 0 0
  1. public void onBlockBreakEvent(BlockBreakEvent event) {
  2. Block block = event.getBlock();
  3. if (block.getType() != Material.SPAWNER) return;
  4.  
  5. Player player = event.getPlayer();
  6. ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
  7.  
  8. boolean validItem = itemInMainHand.getType() == Material.DIAMOND_PICKAXE
  9. || itemInMainHand.getType() == Material.NETHERITE_PICKAXE;
  10.  
  11. boolean validEnchant = itemInMainHand.containsEnchantment(Enchantment.SILK_TOUCH);
  12.  
  13. if (!validItem || !validEnchant) {
  14. player.sendMessage("§c§lЧтобы получить спавнер, у вас должна быть алмазная или незеритовая кирка с шелковым касанием!");
  15. return;
  16. }
  17.  
  18. boolean dropItem = false;
  19. if (player.hasPermission("blockBreaked.shogun")) {
  20. if ((random.nextDouble() < chanceShogun)) {
  21. dropItem = true;
  22. }
  23. } else if (player.hasPermission("blockBreaked.samurai")) {
  24. if ((random.nextDouble() < chanceSamurai)) {
  25. dropItem = true;
  26. }
  27. } else {
  28. player.sendMessage("§c§lУ вас должна быть как минимум привилегия §fꑴ §c§l для выпадения спавнеров!");
  29. return;
  30. }
  31.  
  32. if (!dropItem) {
  33. player.sendMessage("§c§lНе повезло, блок не выпал :(");
  34. return;
  35. }
  36.  
  37. ItemStack spawner = new ItemStack(block.getType(), 1);
  38. Location blockLocation = block.getLocation();
  39. block.getWorld().dropItemNaturally(blockLocation, spawner);
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement