package de.cactus.stone; import java.util.Random; import org.apache.commons.lang.Validate; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.GameMode; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.BlockBreakEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.plugin.java.JavaPlugin; public class stone extends JavaPlugin implements Listener{ public void onEnable(){ Bukkit.getPluginManager().registerEvents(this, this); System.out.print("Ladowanie pluginu.."); } public void onDisable(){ System.out.println("Wylaczanie Paa Kamil nie zjadles steaka ;3"); } Random rand = new Random(); public double getRandomDouble(double min, double max) throws IllegalArgumentException { Validate.isTrue(max > min, "Max nie moze byc mniejszy niz min"); return this.rand.nextDouble() * (max - min) + min; } public boolean getChance(double chance){ return (chance >= 100.0D) || (chance >= getRandomDouble(0.0D, 100.0D)); } @EventHandler public void onBreak(BlockBreakEvent e){ Player p = e.getPlayer(); Block b = e.getBlock(); if (b.getType() == Material.STONE){ if ((b.getLocation().getBlockY() <= 64) && (p.getGameMode() == GameMode.SURVIVAL) && (getChance(50.0D))){ b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.IRON_INGOT, 1)); p.sendMessage(ChatColor.GRAY + "Znalazles zelazo :D"); } if ((b.getLocation().getBlockY() <= 24) && (getChance(25.0D))){ b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.DIAMOND, 1)); p.sendMessage(ChatColor.AQUA + "Znalazles diament :D"); } if ((b.getLocation().getBlockY() <= 30) && (p.getItemInHand().getType() == Material.DIAMOND_PICKAXE) && (p.getItemInHand().getItemMeta().getEnchants().containsKey(Enchantment.LOOT_BONUS_BLOCKS)) && (p.getItemInHand().getItemMeta().getEnchantLevel(Enchantment.LOOT_BONUS_BLOCKS) == 3) && (getChance(50.0D))){ int goldAmount = this.rand.nextInt(3) + 1; b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(Material.GOLD_INGOT, goldAmount)); } } if ((b.getType() == Material.IRON_ORE) || (b.getType() == Material.DIAMOND_ORE)){ b.setType(Material.AIR); p.sendMessage(ChatColor.GOLD + "Jest drop ze stone :D"); } } }