Facebook
From YOUR HEAD, 9 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 641
  1. package de.cactus.stone;
  2.  
  3. import java.util.Random;
  4.  
  5. import org.apache.commons.lang.Validate;
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.ChatColor;
  8. import org.bukkit.GameMode;
  9. import org.bukkit.Material;
  10. import org.bukkit.block.Block;
  11. import org.bukkit.enchantments.Enchantment;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.event.EventHandler;
  14. import org.bukkit.event.Listener;
  15. import org.bukkit.event.block.BlockBreakEvent;
  16. import org.bukkit.inventory.ItemStack;
  17. import org.bukkit.plugin.java.JavaPlugin;
  18.  
  19. public class stone extends JavaPlugin implements Listener{
  20.        
  21.         public void onEnable(){
  22.                 Bukkit.getPluginManager().registerEvents(this, this);
  23.                 System.out.print("Ladowanie pluginu..");
  24.         }
  25.        
  26.         public void onDisable(){
  27.                 System.out.println("Wylaczanie Paa Kamil nie zjadles steaka ;3");
  28.         }
  29.        
  30.   Random rand = new Random();
  31.  
  32.   public double getRandomDouble(double min, double max)
  33.     throws IllegalArgumentException {
  34.     Validate.isTrue(max > min, "Max nie moze byc mniejszy niz min");
  35.     return this.rand.nextDouble() * (max - min) + min;
  36.   }
  37.  
  38.   public boolean getChance(double chance){
  39.     return (chance >= 100.0D) || (chance >= getRandomDouble(0.0D, 100.0D));
  40.   }
  41.  
  42.   @EventHandler
  43.   public void onBreak(BlockBreakEvent e){
  44.     Player p = e.getPlayer();
  45.     Block b = e.getBlock();
  46.     if (b.getType() == Material.STONE){
  47.       if ((b.getLocation().getBlockY() <= 64) &&
  48.         (p.getGameMode() == GameMode.SURVIVAL) &&
  49.         (getChance(50.0D))){
  50.         b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.IRON_INGOT, 1));
  51.         p.sendMessage(ChatColor.GRAY + "Znalazles zelazo :D");
  52.       }
  53.       if ((b.getLocation().getBlockY() <= 24) &&
  54.         (getChance(25.0D))){
  55.         b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.DIAMOND, 1));
  56.         p.sendMessage(ChatColor.AQUA + "Znalazles diament :D");
  57.       }
  58.       if ((b.getLocation().getBlockY() <= 30) &&
  59.         (p.getItemInHand().getType() == Material.DIAMOND_PICKAXE) &&
  60.         (p.getItemInHand().getItemMeta().getEnchants().containsKey(Enchantment.LOOT_BONUS_BLOCKS)) &&
  61.         (p.getItemInHand().getItemMeta().getEnchantLevel(Enchantment.LOOT_BONUS_BLOCKS) == 3) &&
  62.         (getChance(50.0D))){
  63.         int goldAmount = this.rand.nextInt(3) + 1;
  64.        
  65.         b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.GOLD_INGOT, goldAmount));
  66.       }
  67.     }
  68.     if ((b.getType() == Material.IRON_ORE) || (b.getType() == Material.DIAMOND_ORE)){
  69.       b.setType(Material.AIR);
  70.       p.sendMessage(ChatColor.GOLD + "Jest drop ze stone :D");
  71.     }
  72.   }
  73. }
  74.