Class EnchantingMechanics

java.lang.Object
studio.magemonkey.fabled.enchants.mechanics.EnchantingMechanics

public class EnchantingMechanics extends Object
FabledEnchants © 2026 VoidEdge mechanics.studio.magemonkey.fabled.enchants.EnchantingMechanics
  • Constructor Details

    • EnchantingMechanics

      public EnchantingMechanics()
  • Method Details

    • generateEnchantments

      public EnchantResult generateEnchantments(org.bukkit.entity.Player enchanter, org.bukkit.inventory.ItemStack item, int enchantLevel, boolean table, long seed)
      Generates an enchantment result for the given item
      Parameters:
      enchanter - player enchanting the item (use null to bypass permissions)
      item - item to enchants
      enchantLevel - enchantment level (1-30 from the table)
      table - whether or not it is a table enchantment. If not a table enchantment maxLevel is used over maxTableLevel
      seed - enchanter's random seed for enchanting
      Returns:
      enchanting result
    • getAllValidEnchants

      public List<CustomEnchantment> getAllValidEnchants(org.bukkit.inventory.ItemStack item, org.bukkit.permissions.Permissible enchanter, int level, boolean table)
      Get all enchantments which can be applied to the given ItemStack
      Parameters:
      item - item to check for applicable enchantments
      level - modified enchantment level
      Returns:
      List of all applicable enchantments
    • hasValidEnchantments

      public boolean hasValidEnchantments(org.bukkit.inventory.ItemStack item)
    • maxLevel

      public int maxLevel(int level, int enchantability)
    • enchantabilitySpread

      public Map<Integer,Integer> enchantabilitySpread(int enchantability)
    • enchantabilityWeight

      public int enchantabilityWeight(int enchantability)
    • chance

      public double chance(int level, CustomEnchantment enchant, int target)