From c6fc8f61c36b97c13202e5fa2b0d46cede355509 Mon Sep 17 00:00:00 2001 From: Auxilor Date: Mon, 12 Jul 2021 21:16:44 +0200 Subject: [PATCH] Cleaned up CommandGiverandombook --- .../ecoenchants/command/CommandGiverandombook.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/command/CommandGiverandombook.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/command/CommandGiverandombook.java index 4cb97e0d..2ebdabd1 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/command/CommandGiverandombook.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/command/CommandGiverandombook.java @@ -5,16 +5,15 @@ import com.willfp.eco.core.command.CommandHandler; import com.willfp.eco.core.command.TabCompleteHandler; import com.willfp.eco.core.command.impl.Subcommand; import com.willfp.eco.core.config.ConfigUpdater; +import com.willfp.eco.core.items.builder.EnchantedBookBuilder; import com.willfp.eco.util.NumberUtils; import com.willfp.ecoenchants.display.EnchantmentCache; import com.willfp.ecoenchants.enchantments.EcoEnchant; import com.willfp.ecoenchants.enchantments.meta.EnchantmentRarity; import org.bukkit.Bukkit; -import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.EnchantmentStorageMeta; import org.bukkit.util.StringUtil; import org.jetbrains.annotations.NotNull; @@ -64,9 +63,6 @@ public class CommandGiverandombook extends Subcommand { return; } - ItemStack itemStack = new ItemStack(Material.ENCHANTED_BOOK); - EnchantmentStorageMeta meta = (EnchantmentStorageMeta) itemStack.getItemMeta(); - List allowed = Arrays.stream(Enchantment.values()).filter(enchantment -> { if (enchantment instanceof EcoEnchant) { return ((EcoEnchant) enchantment).isEnabled(); @@ -81,10 +77,13 @@ public class CommandGiverandombook extends Subcommand { } return true; }).collect(Collectors.toList()); + Enchantment enchantment = allowed.get(NumberUtils.randInt(0, allowed.size() - 1)); int level = NumberUtils.randInt(1, enchantment.getMaxLevel()); - meta.addStoredEnchant(enchantment, level, true); - itemStack.setItemMeta(meta); + + ItemStack itemStack = new EnchantedBookBuilder() + .addStoredEnchantment(enchantment, level) + .build(); for (ItemStack stack : player.getInventory().addItem(itemStack).values()) { player.getWorld().dropItem(player.getLocation(), stack);