Fixed more problems with custom enchants

This commit is contained in:
Auxilor 2022-01-28 19:29:08 +00:00
parent f4d03cbb50
commit 6707cee8a2
3 changed files with 18 additions and 3 deletions

View File

@ -15,7 +15,6 @@ import com.willfp.ecoenchants.enchantments.meta.EnchantmentTarget;
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
import com.willfp.ecoenchants.enchantments.util.EnchantmentUtils;
import com.willfp.ecoenchants.enchantments.util.Watcher;
import lombok.AccessLevel;
import lombok.Getter;
import net.kyori.adventure.text.Component;
import org.apache.commons.lang.Validate;
@ -154,7 +153,6 @@ public abstract class EcoEnchant extends Enchantment implements Listener, Watche
/**
* If the enchantment is enabled.
*/
@Getter
private boolean enabled;
/**
@ -375,6 +373,15 @@ public abstract class EcoEnchant extends Enchantment implements Listener, Watche
return this.flags.contains(flag);
}
/**
* If enchantment is enabled.
*
* @return If enabled.
*/
public boolean isEnabled() {
return enabled;
}
/**
* Get the internal name of the enchantment.
*

View File

@ -81,4 +81,9 @@ public class CustomEcoEnchant extends EcoEnchant {
public int getMaxLevel() {
return this.levels.size();
}
@Override
public boolean isEnabled() {
return true;
}
}

View File

@ -7,8 +7,10 @@ import com.willfp.eco.util.NumberUtils;
import com.willfp.ecoenchants.EcoEnchantsPlugin;
import com.willfp.ecoenchants.enchantments.EcoEnchant;
import com.willfp.ecoenchants.enchantments.EcoEnchants;
import com.willfp.ecoenchants.enchantments.custom.CustomEcoEnchant;
import com.willfp.ecoenchants.enchantments.meta.EnchantmentTarget;
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
import org.bukkit.Bukkit;
import org.bukkit.Color;
import org.bukkit.GameMode;
import org.bukkit.Location;
@ -31,6 +33,7 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
@ -126,7 +129,7 @@ public class EnchantingListeners extends PluginDependent<EcoPlugin> implements L
multiplier /= this.getPlugin().getConfigYml().getDouble("enchanting-table.reduce-probability.factor");
}
ArrayList<EcoEnchant> enchantments = new ArrayList<>(EcoEnchants.values());
List<EcoEnchant> enchantments = new ArrayList<>(EcoEnchants.values());
Collections.shuffle(enchantments); // Prevent list bias towards early enchantments like telekinesis
boolean gotSpecial = false;