Skip to content

Instantly share code, notes, and snippets.

@RenegadeEagle
Created July 31, 2014 06:56
Show Gist options
  • Save RenegadeEagle/3bb6ab35eb9763effdfb to your computer and use it in GitHub Desktop.
Save RenegadeEagle/3bb6ab35eb9763effdfb to your computer and use it in GitHub Desktop.
AutoSmelt plugin
package co.renegadeeagle.plugins.autosmelt;
import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment;
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;
import java.util.Random;
/**
* Created by Ryan on 7/31/2014.
*/
public class AutoSmelt extends JavaPlugin implements Listener{
public void onEnable(){
this.getServer().getPluginManager().registerEvents(this, this);
this.getConfig().options().copyDefaults(true);
this.saveDefaultConfig();
}
public void onDisable(){
}
Random random = new Random();
@EventHandler
public void onBlockBreak(BlockBreakEvent event){
if(!event.isCancelled()){
if(event.getPlayer().getItemInHand().getType() == Material.DIAMOND_PICKAXE || event.getPlayer().getItemInHand().getType() == Material.IRON_PICKAXE || event.getPlayer().getItemInHand().getType() == Material.GOLD_PICKAXE || event.getPlayer().getItemInHand().getType() == Material.STONE_PICKAXE || event.getPlayer().getItemInHand().getType() == Material.WOOD_PICKAXE){
if(event.getBlock().getType() == Material.IRON_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.IRON_INGOT, randomAmount));
}
}
if(event.getBlock().getType() == Material.GOLD_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.GOLD_INGOT));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.GOLD_INGOT, randomAmount));
}
}
if(event.getBlock().getType() == Material.DIAMOND_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.DIAMOND));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.DIAMOND, randomAmount));
}
}
if(event.getBlock().getType() == Material.EMERALD_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.EMERALD));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.EMERALD, randomAmount));
}
}
if(event.getBlock().getType() == Material.LAPIS_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.LAPIS_ORE));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.LAPIS_ORE, randomAmount));
}
}
if(event.getBlock().getType() == Material.REDSTONE_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.REDSTONE));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.REDSTONE, randomAmount));
}
}
if(event.getBlock().getType() == Material.COAL_ORE){
event.getBlock().getWorld().getBlockAt(event.getBlock().getLocation()).setType(Material.AIR);
event.getPlayer().getInventory().addItem(new ItemStack(Material.COAL));
if(this.getConfig().getBoolean("multiply_per_fortune_level") && event.getPlayer().getItemInHand().getEnchantments().containsKey(Enchantment.LOOT_BONUS_BLOCKS)){
int level = event.getPlayer().getItemInHand().getEnchantmentLevel(Enchantment.LOOT_BONUS_BLOCKS);
int randomAmount = random.nextInt(level);
event.getPlayer().getInventory().addItem(new ItemStack(Material.COAL, randomAmount));
}
}
}
}
}
}
@NightWorldSky
Copy link

wow thats 3l1t3 m8

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment