mirror of
https://gitlab.com/phoenix-dvpmt/mmoitems.git
synced 2025-03-11 13:11:50 +01:00
Autosmelt now supports fortune
This commit is contained in:
parent
0b57a2d47a
commit
c7c153257c
@ -4,18 +4,18 @@ import io.lumine.mythic.lib.MythicLib;
|
||||
import io.lumine.mythic.lib.UtilityMethods;
|
||||
import io.lumine.mythic.lib.api.item.NBTItem;
|
||||
import io.lumine.mythic.lib.comp.flags.CustomFlag;
|
||||
import io.lumine.mythic.lib.version.OreDrops;
|
||||
import net.Indyuce.mmoitems.MMOItems;
|
||||
import net.Indyuce.mmoitems.api.event.BouncingCrackBlockBreakEvent;
|
||||
import net.Indyuce.mmoitems.api.player.PlayerData;
|
||||
import org.bukkit.*;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.enchantments.Enchantment;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
import org.bukkit.util.Vector;
|
||||
|
||||
import java.util.Map;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class Tool extends UseItem {
|
||||
public Tool(Player player, NBTItem item) {
|
||||
@ -31,15 +31,14 @@ public class Tool extends UseItem {
|
||||
* @param block Block being broken
|
||||
* @return If the mining event should be canceled
|
||||
*/
|
||||
public boolean miningEffects(Block block) {
|
||||
public boolean miningEffects(@NotNull Block block) {
|
||||
boolean cancel = false;
|
||||
|
||||
if (getNBTItem().getBoolean("MMOITEMS_AUTOSMELT")) {
|
||||
Map<Material, Material> oreDrops = MythicLib.plugin.getVersion().getWrapper().getOreDrops();
|
||||
Material drop = oreDrops.get(block.getType());
|
||||
if (drop != null) {
|
||||
UtilityMethods.dropItemNaturally(block.getLocation(), new ItemStack(drop));
|
||||
block.getWorld().spawnParticle(Particle.CLOUD, block.getLocation().add(.5, .5, .5), 0);
|
||||
final OreDrops drops = MythicLib.plugin.getVersion().getWrapper().getOreDrops(block.getType());
|
||||
if (drops != null) {
|
||||
UtilityMethods.dropItemNaturally(block.getLocation(), drops.generate(getFortuneLevel()));
|
||||
block.getWorld().spawnParticle(Particle.LAVA, block.getLocation().add(.5, .5, .5), 4);
|
||||
block.setType(Material.AIR);
|
||||
cancel = true;
|
||||
}
|
||||
@ -76,4 +75,9 @@ public class Tool extends UseItem {
|
||||
|
||||
return cancel;
|
||||
}
|
||||
|
||||
private int getFortuneLevel() {
|
||||
if (!getItem().hasItemMeta()) return 0;
|
||||
return getItem().getItemMeta().getEnchantLevel(Enchantment.LOOT_BONUS_BLOCKS);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user