mirror of
https://github.com/YouHaveTrouble/Enchantio.git
synced 2026-05-12 06:06:55 +00:00
refactor enchant creation
This commit is contained in:
@@ -4,8 +4,10 @@ import io.papermc.paper.registry.data.EnchantmentRegistryEntry;
|
||||
import io.papermc.paper.registry.keys.tags.EnchantmentTagKeys;
|
||||
import io.papermc.paper.registry.tag.TagKey;
|
||||
import io.papermc.paper.tag.TagEntry;
|
||||
import me.youhavetrouble.enchantio.EnchantioConfig;
|
||||
import net.kyori.adventure.key.Key;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.enchantments.Enchantment;
|
||||
import org.bukkit.inventory.EquipmentSlotGroup;
|
||||
import org.bukkit.inventory.ItemType;
|
||||
@@ -13,8 +15,11 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import static me.youhavetrouble.enchantio.EnchantioConfig.ENCHANTS;
|
||||
|
||||
@SuppressWarnings("UnstableApiUsage")
|
||||
public class ReplantingEnchant implements EnchantioEnchant {
|
||||
|
||||
@@ -94,4 +99,33 @@ public class ReplantingEnchant implements EnchantioEnchant {
|
||||
return Collections.unmodifiableSet(enchantTagKeys);
|
||||
}
|
||||
|
||||
public static ReplantingEnchant create(ConfigurationSection configurationSection) {
|
||||
ReplantingEnchant replantingEnchant = new ReplantingEnchant(
|
||||
EnchantioConfig.getInt(configurationSection, "anvilCost", 1),
|
||||
EnchantioConfig.getInt(configurationSection, "weight", 10),
|
||||
EnchantmentRegistryEntry.EnchantmentCost.of(
|
||||
EnchantioConfig.getInt(configurationSection, "minimumCost.base", 1),
|
||||
EnchantioConfig.getInt(configurationSection, "minimumCost.additionalPerLevel", 1)
|
||||
),
|
||||
EnchantmentRegistryEntry.EnchantmentCost.of(
|
||||
EnchantioConfig.getInt(configurationSection, "maximumCost.base", 65),
|
||||
EnchantioConfig.getInt(configurationSection, "maximumCost.additionalPerLevel", 1)
|
||||
),
|
||||
EnchantioConfig.getBoolean(configurationSection, "canGetFromEnchantingTable", true),
|
||||
EnchantioConfig.getTagsFromList(EnchantioConfig.getStringList(
|
||||
configurationSection,
|
||||
"supportedItemTags",
|
||||
List.of(
|
||||
"#minecraft:hoes"
|
||||
)
|
||||
))
|
||||
);
|
||||
|
||||
if (EnchantioConfig.getBoolean(configurationSection, "enabled", true)) {
|
||||
ENCHANTS.put(ReplantingEnchant.KEY, replantingEnchant);
|
||||
}
|
||||
|
||||
return replantingEnchant;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user