From 7f707e2dd6d76cd88273ef7cab7b603858bfac89 Mon Sep 17 00:00:00 2001 From: Auxilor Date: Mon, 26 Jul 2021 17:56:53 +0100 Subject: [PATCH] Remove ItemConversions things out of display options --- .../display/options/DisplayOptions.java | 35 -------- .../util/ItemConversionOptions.java | 80 +++++++++++++++++++ .../enchantments/util/ItemConversions.java | 53 +++--------- 3 files changed, 93 insertions(+), 75 deletions(-) create mode 100644 eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversionOptions.java diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/display/options/DisplayOptions.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/display/options/DisplayOptions.java index 182a8e70..96ce299c 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/display/options/DisplayOptions.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/display/options/DisplayOptions.java @@ -49,35 +49,6 @@ public class DisplayOptions extends PluginDependent { */ @Getter private EnchantmentSorter sorter; - /** - * Allow reading enchantments from lore-based plugins. - */ - @Getter - private boolean usingLoreGetter = false; - - /** - * Allow reading enchantments from lore-based plugins aggressively. - */ - @Getter - private boolean usingAggressiveLoreGetter = false; - - /** - * If the experimental hide fixer is being used. - */ - @Getter - private boolean usingExperimentalHideFixer = false; - - /** - * If the aggressive experimental hide fixer is being used. - */ - @Getter - private boolean usingAggressiveExperimentalHideFixer = false; - - /** - * If all items should have hide enchants removed. - */ - @Getter - private boolean usingForceHideFixer = false; /** * If item must be a target. @@ -118,12 +89,6 @@ public class DisplayOptions extends PluginDependent { .collect(Collectors.toList())); sortedRarities.addAll(EnchantmentRarity.values().stream().filter(enchantmentRarity -> !sortedRarities.contains(enchantmentRarity)).collect(Collectors.toList())); - usingLoreGetter = this.getPlugin().getConfigYml().getBool("advanced.lore-getter.enabled"); - usingAggressiveLoreGetter = this.getPlugin().getConfigYml().getBool("advanced.lore-getter.aggressive"); - usingExperimentalHideFixer = this.getPlugin().getConfigYml().getBool("advanced.hide-fixer.enabled"); - usingAggressiveExperimentalHideFixer = this.getPlugin().getConfigYml().getBool("advanced.hide-fixer.aggressive"); - usingForceHideFixer = this.getPlugin().getConfigYml().getBool("advanced.hide-fixer.force"); - requireTarget = this.getPlugin().getConfigYml().getBool("lore.require-target"); boolean byType = this.getPlugin().getConfigYml().getBool("lore.sort-by-type"); diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversionOptions.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversionOptions.java new file mode 100644 index 00000000..e3d55203 --- /dev/null +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversionOptions.java @@ -0,0 +1,80 @@ +package com.willfp.ecoenchants.enchantments.util; + +import com.willfp.eco.core.EcoPlugin; +import com.willfp.ecoenchants.EcoEnchantsPlugin; +import lombok.Getter; +import lombok.experimental.UtilityClass; +import org.jetbrains.annotations.NotNull; + +@UtilityClass +public class ItemConversionOptions { + /** + * Allow reading enchantments from lore-based plugins. + */ + @Getter + private boolean usingLoreGetter = false; + + /** + * Allow reading enchantments from lore-based plugins aggressively. + */ + @Getter + private boolean usingAggressiveLoreGetter = false; + + /** + * If the experimental hide fixer is being used. + */ + @Getter + private boolean usingExperimentalHideFixer = false; + + /** + * If the aggressive experimental hide fixer is being used. + */ + @Getter + private boolean usingAggressiveExperimentalHideFixer = false; + + /** + * If all items should have hide enchants removed. + */ + @Getter + private boolean usingForceHideFixer = false; + + /** + * If above max level enchantments should be clamped. + */ + @Getter + private boolean usingLevelClamp = false; + + /** + * If items with above max level enchantments should be deleted. + */ + @Getter + private boolean usingLevelClampDelete = false; + + /** + * If illegal enchantments should be deleted. + */ + @Getter + private boolean removingIllegal = false; + + /** + * If illegal items should be deleted. + */ + @Getter + private boolean deletingIllegal = false; + + public void reload(@NotNull final EcoPlugin plugin) { + usingLoreGetter = plugin.getConfigYml().getBool("advanced.lore-getter.enabled"); + usingAggressiveLoreGetter = plugin.getConfigYml().getBool("advanced.lore-getter.aggressive"); + usingExperimentalHideFixer = plugin.getConfigYml().getBool("advanced.hide-fixer.enabled"); + usingAggressiveExperimentalHideFixer = plugin.getConfigYml().getBool("advanced.hide-fixer.aggressive"); + usingForceHideFixer = plugin.getConfigYml().getBool("advanced.hide-fixer.force"); + usingLevelClamp = plugin.getConfigYml().getBool("advanced.level-clamp.enabled"); + usingLevelClampDelete = plugin.getConfigYml().getBool("advanced.level-clamp.delete-item"); + removingIllegal = plugin.getConfigYml().getBool("advanced.remove-illegal.enabled"); + deletingIllegal = plugin.getConfigYml().getBool("advanced.remove-illegal.delete-item"); + } + + static { + reload(EcoEnchantsPlugin.getInstance()); + } +} diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversions.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversions.java index dd3943c0..7e2ff0e6 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversions.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/util/ItemConversions.java @@ -1,12 +1,10 @@ package com.willfp.ecoenchants.enchantments.util; -import com.willfp.eco.core.EcoPlugin; -import com.willfp.eco.core.PluginDependent; import com.willfp.eco.util.NumberUtils; -import com.willfp.ecoenchants.display.EnchantDisplay; import com.willfp.ecoenchants.enchantments.EcoEnchant; import com.willfp.ecoenchants.enchantments.EcoEnchants; import com.willfp.ecoenchants.enchantments.meta.EnchantmentTarget; +import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; @@ -30,16 +28,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -public class ItemConversions extends PluginDependent implements Listener { - /** - * Instantiate item conversions. - * - * @param plugin Instance of EcoEnchants. - */ - public ItemConversions(@NotNull final EcoPlugin plugin) { - super(plugin); - } - +public class ItemConversions implements Listener { /** * On player hold item. *

@@ -49,11 +38,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void loreConverter(@NotNull final PlayerItemHeldEvent event) { - if (this.getPlugin().getDisplayModule() == null) { // If plugin hasn't finished loading. - return; - } - - if (!((EnchantDisplay) this.getPlugin().getDisplayModule()).getOptions().isUsingLoreGetter()) { + if (!ItemConversionOptions.isUsingLoreGetter()) { return; } @@ -71,11 +56,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void aggressiveLoreConverter(@NotNull final InventoryOpenEvent event) { - if (this.getPlugin().getDisplayModule() == null) { // If plugin hasn't finished loading. - return; - } - - if (!((EnchantDisplay) this.getPlugin().getDisplayModule()).getOptions().isUsingAggressiveLoreGetter()) { + if (!ItemConversionOptions.isUsingAggressiveLoreGetter()) { return; } @@ -172,11 +153,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void hideFixer(@NotNull final PlayerItemHeldEvent event) { - if (this.getPlugin().getDisplayModule() == null) { // If plugin hasn't finished loading. - return; - } - - if (!((EnchantDisplay) this.getPlugin().getDisplayModule()).getOptions().isUsingExperimentalHideFixer()) { + if (!ItemConversionOptions.isUsingExperimentalHideFixer()) { return; } @@ -194,11 +171,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void aggressiveHideFixer(@NotNull final InventoryOpenEvent event) { - if (this.getPlugin().getDisplayModule() == null) { // If plugin hasn't finished loading. - return; - } - - if (!((EnchantDisplay) this.getPlugin().getDisplayModule()).getOptions().isUsingAggressiveExperimentalHideFixer()) { + if (!ItemConversionOptions.isUsingAggressiveExperimentalHideFixer()) { return; } @@ -231,7 +204,7 @@ public class ItemConversions extends PluginDependent implements Liste return; } - if (((EnchantDisplay) this.getPlugin().getDisplayModule()).getOptions().isUsingForceHideFixer()) { + if (ItemConversionOptions.isUsingForceHideFixer()) { meta.removeItemFlags(ItemFlag.HIDE_ENCHANTS); meta.removeItemFlags(ItemFlag.HIDE_POTION_EFFECTS); } else { @@ -252,7 +225,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void levelClamp(@NotNull final PlayerItemHeldEvent event) { - if (!this.getPlugin().getConfigYml().getBool("advanced.level-clamp.enabled")) { + if (!ItemConversionOptions.isUsingLevelClamp()) { return; } @@ -298,10 +271,10 @@ public class ItemConversions extends PluginDependent implements Liste itemStack.setItemMeta(meta); - if (this.getPlugin().getConfigYml().getBool("advanced.level-clamp.delete-item")) { + if (ItemConversionOptions.isUsingLevelClampDelete()) { itemStack.setType(Material.AIR); itemStack.setItemMeta(new ItemStack(Material.AIR).getItemMeta()); - this.getPlugin().getLogger().warning(player.getName() + " has/had an illegal item!"); + Bukkit.getLogger().warning(player.getName() + " has/had an illegal item!"); } } @@ -314,7 +287,7 @@ public class ItemConversions extends PluginDependent implements Liste */ @EventHandler public void removeDisallowed(@NotNull final PlayerItemHeldEvent event) { - if (!this.getPlugin().getConfigYml().getBool("advanced.remove-illegal.enabled")) { + if (!ItemConversionOptions.isRemovingIllegal()) { return; } @@ -359,7 +332,7 @@ public class ItemConversions extends PluginDependent implements Liste return; } - if (this.getPlugin().getConfigYml().getBool("advanced.remove-illegal.delete-item")) { + if (ItemConversionOptions.isDeletingIllegal()) { itemStack.setType(Material.AIR); itemStack.setItemMeta(new ItemStack(Material.AIR).getItemMeta()); itemStack.setItemMeta(meta); @@ -367,6 +340,6 @@ public class ItemConversions extends PluginDependent implements Liste meta.removeEnchant(illegalEnchant); } - this.getPlugin().getLogger().warning(player.getName() + " has/had an illegal item!"); + Bukkit.getLogger().warning(player.getName() + " has/had an illegal item!"); } }