# 类的使用
org.bukkit.enchantments.Enchantment

使用Enchantment的程序包
程序包
说明
org.bukkit
Bukkit API的顶级程序包, 包含通用的API类和接口.
org.bukkit.enchantments
与`物品堆`对应的附魔相关的类，作为`物品元数据`的一部分.
org.bukkit.event.enchantment
与`附魔台`操作相关的`事件`.
org.bukkit.inventory
参与操作玩家物品栏和物品交互的类.
org.bukkit.inventory.meta
用于操作可以存储在`物品堆`的额外数据的接口.

- ## org.bukkit中Enchantment的使用

  类型参数类型为Enchantment的org.bukkit中的字段
  修饰符和类型
  字段
  说明
  `static final Registry<Enchantment>`
  Registry.`ENCHANTMENT`
  Server enchantments.

- ## org.bukkit.enchantments中Enchantment的使用

  org.bukkit.enchantments中Enchantment的子类
  修饰符和类型
  类
  说明
  `class`
  `EnchantmentWrapper`
  已过时。
  仅为保障向后兼容性, EnchantmentWrapper 已不再使用
  声明为Enchantment的org.bukkit.enchantments中的字段
  修饰符和类型
  字段
  说明
  `static final Enchantment`
  Enchantment.`AQUA_AFFINITY`
  附魔：水下速掘
  `static final Enchantment`
  Enchantment.`BANE_OF_ARTHROPODS`
  附魔：节肢杀手
  `static final Enchantment`
  Enchantment.`BINDING_CURSE`
  附魔：绑定诅咒
  `static final Enchantment`
  Enchantment.`BLAST_PROTECTION`
  附魔：爆炸保护
  `static final Enchantment`
  Enchantment.`BREACH`
  Reduces armor effectiveness against maces
  `static final Enchantment`
  Enchantment.`CHANNELING`
  附魔：引雷 (三叉戟)
  `static final Enchantment`
  Enchantment.`DENSITY`
  Increases fall damage of maces
  `static final Enchantment`
  Enchantment.`DEPTH_STRIDER`
  附魔：深海探索者
  `static final Enchantment`
  Enchantment.`EFFICIENCY`
  附魔：效率
  `static final Enchantment`
  Enchantment.`FEATHER_FALLING`
  附魔：摔落保护
  `static final Enchantment`
  Enchantment.`FIRE_ASPECT`
  附魔：火焰附加
  `static final Enchantment`
  Enchantment.`FIRE_PROTECTION`
  附魔：火焰保护
  `static final Enchantment`
  Enchantment.`FLAME`
  附魔：火矢 (弓)
  `static final Enchantment`
  Enchantment.`FORTUNE`
  附魔：时运
  `static final Enchantment`
  Enchantment.`FROST_WALKER`
  附魔：冰霜行者
  `static final Enchantment`
  Enchantment.`IMPALING`
  附魔：穿刺 (三叉戟)
  `static final Enchantment`
  Enchantment.`INFINITY`
  附魔：无限 (弓)
  `static final Enchantment`
  Enchantment.`KNOCKBACK`
  附魔：击退
  `static final Enchantment`
  Enchantment.`LOOTING`
  附魔：抢夺
  `static final Enchantment`
  Enchantment.`LOYALTY`
  附魔：忠诚 (三叉戟)
  `static final Enchantment`
  Enchantment.`LUCK_OF_THE_SEA`
  附魔：海之眷顾 (钓鱼杆)
  `static final Enchantment`
  Enchantment.`LURE`
  附魔：饵钓 (钓鱼杆)
  `static final Enchantment`
  Enchantment.`MENDING`
  附魔：经验修补
  `static final Enchantment`
  Enchantment.`MULTISHOT`
  附魔：多重射击 (弩)
  `static final Enchantment`
  Enchantment.`PIERCING`
  附魔：穿透 (弩)
  `static final Enchantment`
  Enchantment.`POWER`
  附魔：力量 (弓)
  `static final Enchantment`
  Enchantment.`PROJECTILE_PROTECTION`
  附魔：弹射物保护
  `static final Enchantment`
  Enchantment.`PROTECTION`
  附魔：保护
  `static final Enchantment`
  Enchantment.`PUNCH`
  附魔：冲击 (弓)
  `static final Enchantment`
  Enchantment.`QUICK_CHARGE`
  附魔：快速装填 (弩)
  `static final Enchantment`
  Enchantment.`RESPIRATION`
  附魔：水下呼吸
  `static final Enchantment`
  Enchantment.`RIPTIDE`
  附魔：激流 (三叉戟)
  `static final Enchantment`
  Enchantment.`SHARPNESS`
  附魔：锋利
  `static final Enchantment`
  Enchantment.`SILK_TOUCH`
  附魔：精准采集
  `static final Enchantment`
  Enchantment.`SMITE`
  附魔：亡灵杀手
  `static final Enchantment`
  Enchantment.`SOUL_SPEED`
  附魔：灵魂疾行
  `static final Enchantment`
  Enchantment.`SWEEPING_EDGE`
  附魔：横扫之刃
  `static final Enchantment`
  Enchantment.`SWIFT_SNEAK`
  附魔：迅捷潜行
  `static final Enchantment`
  Enchantment.`THORNS`
  附魔：荆棘
  `static final Enchantment`
  Enchantment.`UNBREAKING`
  附魔：耐久
  `static final Enchantment`
  Enchantment.`VANISHING_CURSE`
  附魔：消失诅咒
  `static final Enchantment`
  Enchantment.`WIND_BURST`
  Emits wind burst upon hitting enemy
  返回Enchantment的org.bukkit.enchantments中的方法
  修饰符和类型
  方法
  说明
  `static @Nullable Enchantment`
  Enchantment.`getByKey(@Nullable NamespacedKey key)`
  已过时。
  仅为保障作向后兼容性, 请使用 `Registry.get(NamespacedKey)` instead
  `static @Nullable Enchantment`
  Enchantment.`getByName(@Nullable String name)`
  已过时。
  这些附魔的命名简直糟透了，建议使用 `getByKey(org.bukkit.NamespacedKey)`.
  `@NotNull Enchantment`
  EnchantmentOffer.`getEnchantment()`
  获取魔咒/附魔种类.
  `@NotNull Enchantment`
  EnchantmentWrapper.`getEnchantment()`
  已过时。
  获取这个包装类所对应的的附魔.
  `static @NotNull Enchantment[]`
  Enchantment.`values()`
  已过时。
  请使用 `Registry.ENCHANTMENT.iterator()`
  参数类型为Enchantment的org.bukkit.enchantments中的方法
  修饰符和类型
  方法
  说明
  `abstract boolean`
  Enchantment.`conflictsWith(@NotNull Enchantment other)`
  检查这个附魔是否与另外的附魔冲突.
  `void`
  EnchantmentOffer.`setEnchantment(@NotNull Enchantment enchantment)`
  设置魔咒/附魔种类.
  参数类型为Enchantment的org.bukkit.enchantments中的构造器
  限定符
  构造器
  说明
  ``
  `EnchantmentOffer(@NotNull Enchantment enchantment, int enchantmentLevel, int cost)`

- ## org.bukkit.event.enchantment中Enchantment的使用

  返回Enchantment的org.bukkit.event.enchantment中的方法
  修饰符和类型
  方法
  说明
  `@NotNull Enchantment`
  EnchantItemEvent.`getEnchantmentHint()`
  Get the `Enchantment` that was displayed as a hint to the player on the selected enchantment offer.
  返回变量类型为Enchantment的类型的org.bukkit.event.enchantment中的方法
  修饰符和类型
  方法
  说明
  `@NotNull Map<Enchantment,Integer>`
  EnchantItemEvent.`getEnchantsToAdd()`
  获取被加到物品中的附魔的Map (等级, 附魔种类)（若要修改请直接修改Map） .
  参数类型为Enchantment的org.bukkit.event.enchantment中的构造器
  限定符
  构造器
  说明
  ``
  `EnchantItemEvent(@NotNull Player enchanter, @NotNull InventoryView view, @NotNull Block table, @NotNull ItemStack item, int level, @NotNull Map<Enchantment,Integer> enchants, @NotNull Enchantment enchantmentHint, int levelHint, int i)`
  类型变量类型为Enchantment的org.bukkit.event.enchantment中的构造器参数
  限定符
  构造器
  说明
  ``
  `EnchantItemEvent(@NotNull Player enchanter, @NotNull InventoryView view, @NotNull Block table, @NotNull ItemStack item, int level, @NotNull Map<Enchantment,Integer> enchants, @NotNull Enchantment enchantmentHint, int levelHint, int i)`

- ## org.bukkit.inventory中Enchantment的使用

  返回变量类型为Enchantment的类型的org.bukkit.inventory中的方法
  修饰符和类型
  方法
  说明
  `@NotNull Map<Enchantment,Integer>`
  ItemStack.`getEnchantments()`
  获取该物品的所有附魔以及对应的附魔等级, 用map表示.
  参数类型为Enchantment的org.bukkit.inventory中的方法
  修饰符和类型
  方法
  说明
  `void`
  ItemStack.`addEnchantment(@NotNull Enchantment ench, int level)`
  向物品堆添加`附魔`.
  `void`
  ItemStack.`addUnsafeEnchantment(@NotNull Enchantment ench, int level)`
  向物品堆添加`附魔`.
  `boolean`
  ItemStack.`containsEnchantment(@NotNull Enchantment ench)`
  检测该物品堆是否包含指定`附魔`.
  `int`
  ItemStack.`getEnchantmentLevel(@NotNull Enchantment ench)`
  获取该物品指定附魔的附魔等级.
  `int`
  ItemStack.`removeEnchantment(@NotNull Enchantment ench)`
  移除指定的`附魔`.
  类型变量类型为Enchantment的org.bukkit.inventory中的方法参数
  修饰符和类型
  方法
  说明
  `void`
  ItemStack.`addEnchantments(@NotNull Map<Enchantment,Integer> enchantments)`
  向物品堆添加附魔.
  `void`
  ItemStack.`addUnsafeEnchantments(@NotNull Map<Enchantment,Integer> enchantments)`
  以不安全的方式向物品堆添加附魔.

- ## org.bukkit.inventory.meta中Enchantment的使用

  返回变量类型为Enchantment的类型的org.bukkit.inventory.meta中的方法
  修饰符和类型
  方法
  说明
  `@NotNull Map<Enchantment,Integer>`
  ItemMeta.`getEnchants()`
  返回此物品上的附魔的 map 副本.
  如果物品没有附魔则返回空 map.
  `@NotNull Map<Enchantment,Integer>`
  EnchantmentStorageMeta.`getStoredEnchants()`
  获取在ItemMeta存储的附魔的副本.
  参数类型为Enchantment的org.bukkit.inventory.meta中的方法
  修饰符和类型
  方法
  说明
  `boolean`
  ItemMeta.`addEnchant(@NotNull Enchantment ench, int level, boolean ignoreLevelRestriction)`
  为物品添加一个附魔.
  `boolean`
  EnchantmentStorageMeta.`addStoredEnchant(@NotNull Enchantment ench, int level, boolean ignoreLevelRestriction)`
  向本物品存放一个指定的附魔.
  `int`
  ItemMeta.`getEnchantLevel(@NotNull Enchantment ench)`
  获取物品上指定附魔的等级.
  `int`
  EnchantmentStorageMeta.`getStoredEnchantLevel(@NotNull Enchantment ench)`
  检测指定附魔的等级.
  `boolean`
  ItemMeta.`hasConflictingEnchant(@NotNull Enchantment ench)`
  检查指定的附魔是否与任何 ItemMeta 里的附魔冲突.
  `boolean`
  EnchantmentStorageMeta.`hasConflictingStoredEnchant(@NotNull Enchantment ench)`
  检测指定的附魔是否与任何 ItemMeta 里的附魔冲突.
  `boolean`
  ItemMeta.`hasEnchant(@NotNull Enchantment ench)`
  检查物品是否存在指定的附魔.
  `boolean`
  EnchantmentStorageMeta.`hasStoredEnchant(@NotNull Enchantment ench)`
  检测是否存储特定的附魔.
  `boolean`
  ItemMeta.`removeEnchant(@NotNull Enchantment ench)`
  移除物品上指定的附魔.
  `boolean`
  EnchantmentStorageMeta.`removeStoredEnchant(@NotNull Enchantment ench)`
  移除物品上指定的附魔.