From 3845e7f0ed767e257fa04d669cbee95fbf289477 Mon Sep 17 00:00:00 2001 From: alexcrea <42614139+alexcrea@users.noreply.github.com> Date: Fri, 4 Oct 2024 22:54:57 +0200 Subject: [PATCH] Update planned release of the feature to 1.6.3 handle better weeping edge update default config update updater to handle namespace --- defaultconfigs/1.18/config.yml | 184 +++++---- defaultconfigs/1.18/enchant_conflict.yml | 120 +++--- defaultconfigs/1.21/config.yml | 184 +++++---- defaultconfigs/1.21/enchant_conflict.yml | 356 ++++++------------ defaultconfigs/1.21/item_groups.yml | 205 +++++----- defaultconfigs/1.21/unit_repair_item.yml | 2 - .../alexcrea/cuanvil/api/EnchantmentApi.java | 2 +- .../cuanvil/enchant/CAEnchantment.java | 2 +- .../enchant/CAEnchantmentRegistry.java | 2 +- .../alexcrea/cuanvil/update/Update_1_21.java | 15 +- .../cuanvil/group/EnchantConflictManager.kt | 3 +- src/main/resources/enchant_conflict.yml | 74 ++-- 12 files changed, 499 insertions(+), 650 deletions(-) diff --git a/defaultconfigs/1.18/config.yml b/defaultconfigs/1.18/config.yml index 5b47ec4..dd24558 100644 --- a/defaultconfigs/1.18/config.yml +++ b/defaultconfigs/1.18/config.yml @@ -97,49 +97,46 @@ default_limit: 5 # # Valid range of 1 - 255 for each enchantment enchant_limits: - aqua_affinity: 1 - binding_curse: 1 - channeling: 1 - flame: 1 - infinity: 1 - mending: 1 - multishot: 1 - silk_touch: 1 - vanishing_curse: 1 - depth_strider: 3 # anything more than 3 is treated as 3 by the game - protection: 4 - fire_protection: 4 - blast_protection: 4 - projectile_protection: 4 - feather_falling: 4 - thorns: 3 - respiration: 3 - sharpness: 5 - smite: 5 - bane_of_arthropods: 5 - knockback: 2 - fire_aspect: 2 - looting: 3 - sweeping: 3 - sweeping_edge: 3 - efficiency: 5 - unbreaking: 3 - fortune: 3 - power: 5 - punch: 2 - luck_of_the_sea: 3 - lure: 3 - frost_walker: 2 - impaling: 5 - riptide: 3 - loyalty: 3 - piercing: 4 - quick_charge: 3 - soul_speed: 3 - swift_sneak: 3 - density: 5 - breach: 4 - wind_burst: 3 + minecraft:aqua_affinity: 1 + minecraft:binding_curse: 1 + minecraft:channeling: 1 + minecraft:flame: 1 + minecraft:infinity: 1 + minecraft:mending: 1 + minecraft:multishot: 1 + minecraft:silk_touch: 1 + minecraft:vanishing_curse: 1 + minecraft:depth_strider: 3 # anything more than 3 is treated as 3 by the game + minecraft:protection: 4 + minecraft:fire_protection: 4 + minecraft:blast_protection: 4 + minecraft:projectile_protection: 4 + minecraft:feather_falling: 4 + minecraft:thorns: 3 + minecraft:respiration: 3 + minecraft:sharpness: 5 + minecraft:smite: 5 + minecraft:bane_of_arthropods: 5 + minecraft:knockback: 2 + minecraft:fire_aspect: 2 + minecraft:looting: 3 + minecraft:sweeping: 3 + minecraft:sweeping_edge: 3 + minecraft:efficiency: 5 + minecraft:unbreaking: 3 + minecraft:fortune: 3 + minecraft:power: 5 + minecraft:punch: 2 + minecraft:luck_of_the_sea: 3 + minecraft:lure: 3 + minecraft:frost_walker: 2 + minecraft:impaling: 5 + minecraft:riptide: 3 + minecraft:loyalty: 3 + minecraft:piercing: 4 + minecraft:quick_charge: 3 + minecraft:soul_speed: 3 + minecraft:swift_sneak: 3 # Multipliers used to calculate the enchantment's value in repair/combining # @@ -153,135 +150,137 @@ enchant_limits: # With default values protection 4 would have a value of 4 when # coming from either a book (4 * 1) or an item (4 * 1) enchant_values: - aqua_affinity: + minecraft:aqua_affinity: item: 4 book: 2 - bane_of_arthropods: + minecraft:bane_of_arthropods: item: 2 book: 1 - binding_curse: + minecraft:binding_curse: item: 8 book: 4 - blast_protection: + minecraft:blast_protection: item: 4 book: 2 - channeling: + minecraft:channeling: item: 8 book: 4 - depth_strider: + minecraft:depth_strider: item: 4 book: 2 - efficiency: + minecraft:efficiency: item: 1 book: 1 - flame: + minecraft:flame: item: 4 book: 2 - feather_falling: + minecraft:feather_falling: item: 2 book: 1 - fire_aspect: + minecraft:fire_aspect: item: 4 book: 2 - fire_protection: + minecraft:fire_protection: item: 2 book: 1 - fortune: + minecraft:fortune: item: 4 book: 2 - frost_walker: + minecraft:frost_walker: item: 4 book: 2 - impaling: + minecraft:impaling: item: 4 book: 2 - infinity: + minecraft:infinity: item: 8 book: 4 - knockback: + minecraft:knockback: item: 2 book: 1 - looting: + minecraft:looting: item: 4 book: 2 - loyalty: + minecraft:loyalty: item: 1 book: 1 - luck_of_the_sea: + minecraft:luck_of_the_sea: item: 4 book: 2 - lure: + minecraft:lure: item: 4 book: 2 - mending: + minecraft:mending: item: 4 book: 2 - multishot: + minecraft:multishot: item: 4 book: 2 - piercing: + minecraft:piercing: item: 1 book: 1 - power: + minecraft:power: item: 1 book: 1 - projectile_protection: + minecraft:projectile_protection: item: 2 book: 1 - protection: + minecraft:protection: item: 1 book: 1 - punch: + minecraft:punch: item: 4 book: 2 - quick_charge: + minecraft:quick_charge: item: 2 book: 1 - respiration: + minecraft:respiration: item: 4 book: 2 - riptide: + minecraft:riptide: item: 4 book: 2 - silk_touch: + minecraft:silk_touch: item: 8 book: 4 - sharpness: + minecraft:sharpness: item: 1 book: 1 - smite: + minecraft:smite: item: 2 book: 1 - soul_speed: + minecraft:soul_speed: item: 8 book: 4 - swift_sneak: + minecraft:swift_sneak: item: 8 book: 4 - sweeping: + minecraft:sweeping: item: 4 book: 2 - sweeping_edge: + minecraft:sweeping_edge: item: 4 book: 2 - thorns: + minecraft:thorns: item: 8 book: 4 - unbreaking: + minecraft:unbreaking: item: 2 book: 1 - vanishing_curse: + minecraft:vanishing_curse: item: 8 book: 4 - density: - item: 1 - book: 1 - breach: - item: 4 - book: 2 - wind_burst: - item: 4 - book: 2 + +# Disable enchantment merging for level above the set value +# Enchantment merging is when, for example, 2 unbreaking II book combine to give sharpness III +# But Enchantment above this value can still be applied. following the previous example, we could still apply a unbreaking III book to a sword +# Even if disable-merge-over of unbreaking is set to 2 +# -1 mean enchantment merge for this enchantment is not disabled. default to -1 if absent. +disable-merge-over: + # Sharpness is set to -1. it equivalent to it not being set to anything (and work as vanilla) + minecraft:sharpness: -1 + # If uncommented. 2 unbreaking II book would not give an unbreaking III book. but unbreaking III book can still be applied + #minecraft:unbreaking: 2 # Whether to show debug logging debug_log: false @@ -296,4 +295,3 @@ debug_log_verbose: false force_protocolib: false configVersion: 1.6.2 -lowMinecraftVersion: '1.21' diff --git a/defaultconfigs/1.18/enchant_conflict.yml b/defaultconfigs/1.18/enchant_conflict.yml index ed154ab..0e8b3f3 100644 --- a/defaultconfigs/1.18/enchant_conflict.yml +++ b/defaultconfigs/1.18/enchant_conflict.yml @@ -17,158 +17,158 @@ # ---------------------------------------------------- restriction_aqua_affinity: - enchantments: [ aqua_affinity ] + enchantments: [ minecraft:aqua_affinity ] notAffectedGroups: [ enchanted_book, helmets ] restriction_bane_of_arthropods: - enchantments: [ bane_of_arthropods ] + enchantments: [ minecraft:bane_of_arthropods ] notAffectedGroups: [ enchanted_book, melee_weapons ] restriction_blast_protection: - enchantments: [ blast_protection ] + enchantments: [ minecraft:blast_protection ] notAffectedGroups: [ enchanted_book, armors ] restriction_channeling: - enchantments: [ channeling ] + enchantments: [ minecraft:channeling ] notAffectedGroups: [ enchanted_book, trident ] restriction_binding_curse: - enchantments: [ binding_curse ] + enchantments: [ minecraft:binding_curse ] notAffectedGroups: [ enchanted_book, wearable ] restriction_vanishing_curse: - enchantments: [ vanishing_curse ] + enchantments: [ minecraft:vanishing_curse ] notAffectedGroups: [ enchanted_book, can_vanish ] restriction_depth_strider: - enchantments: [ depth_strider ] + enchantments: [ minecraft:depth_strider ] notAffectedGroups: [ enchanted_book, boots ] restriction_efficiency: - enchantments: [ efficiency ] + enchantments: [ minecraft:efficiency ] notAffectedGroups: [ enchanted_book, tools, shears ] restriction_feather_falling: - enchantments: [ feather_falling ] + enchantments: [ minecraft:feather_falling ] notAffectedGroups: [ enchanted_book, boots ] restriction_fire_aspect: - enchantments: [ fire_aspect ] + enchantments: [ minecraft:fire_aspect ] notAffectedGroups: [ enchanted_book, swords ] restriction_fire_protection: - enchantments: [ fire_protection ] + enchantments: [ minecraft:fire_protection ] notAffectedGroups: [ enchanted_book, armors ] restriction_flame: - enchantments: [ flame ] + enchantments: [ minecraft:flame ] notAffectedGroups: [ enchanted_book, bow ] restriction_fortune: - enchantments: [ fortune ] + enchantments: [ minecraft:fortune ] notAffectedGroups: [ enchanted_book, tools ] restriction_frost_walker: - enchantments: [ frost_walker ] + enchantments: [ minecraft:frost_walker ] notAffectedGroups: [ enchanted_book, boots ] restriction_impaling: - enchantments: [ impaling ] + enchantments: [ minecraft:impaling ] notAffectedGroups: [ enchanted_book, trident ] restriction_infinity: - enchantments: [ infinity ] + enchantments: [ minecraft:infinity ] notAffectedGroups: [ enchanted_book, bow ] restriction_knockback: - enchantments: [ knockback ] + enchantments: [ minecraft:knockback ] notAffectedGroups: [ enchanted_book, swords ] restriction_looting: - enchantments: [ looting ] + enchantments: [ minecraft:looting ] notAffectedGroups: [ enchanted_book, swords ] restriction_loyalty: - enchantments: [ loyalty ] + enchantments: [ minecraft:loyalty ] notAffectedGroups: [ enchanted_book, trident ] restriction_lure: - enchantments: [ lure ] + enchantments: [ minecraft:lure ] notAffectedGroups: [ enchanted_book, fishing_rod ] restriction_mending: - enchantments: [ mending ] + enchantments: [ minecraft:mending ] notAffectedGroups: [ enchanted_book, can_unbreak ] -restriction_multishot: - enchantments: [ multishot ] +restriction_minecraft_multishot: + enchantments: [ minecraft:multishot ] notAffectedGroups: [ enchanted_book, crossbow ] restriction_piercing: - enchantments: [ piercing ] + enchantments: [ minecraft:piercing ] notAffectedGroups: [ enchanted_book, crossbow ] restriction_power: - enchantments: [ power ] + enchantments: [ minecraft:power ] notAffectedGroups: [ enchanted_book, bow ] restriction_projectile_protection: - enchantments: [ projectile_protection ] + enchantments: [ minecraft:projectile_protection ] notAffectedGroups: [ enchanted_book, armors ] restriction_protection: - enchantments: [ protection ] + enchantments: [ minecraft:protection ] notAffectedGroups: [ enchanted_book, armors ] restriction_punch: - enchantments: [ punch ] + enchantments: [ minecraft:punch ] notAffectedGroups: [ enchanted_book, bow ] restriction_quick_charge: - enchantments: [ quick_charge ] + enchantments: [ minecraft:quick_charge ] notAffectedGroups: [ enchanted_book, crossbow ] restriction_respiration: - enchantments: [ respiration ] + enchantments: [ minecraft:respiration ] notAffectedGroups: [ enchanted_book, helmets ] restriction_riptide: - enchantments: [ riptide ] + enchantments: [ minecraft:riptide ] notAffectedGroups: [ enchanted_book, trident ] restriction_sharpness: - enchantments: [ sharpness ] + enchantments: [ minecraft:sharpness ] notAffectedGroups: [ enchanted_book, melee_weapons ] -restriction_silk_touch: - enchantments: [ silk_touch ] +restriction__silk_touch: + enchantments: [ minecraft:silk_touch ] notAffectedGroups: [ enchanted_book, tools ] restriction_smite: - enchantments: [ smite ] + enchantments: [ minecraft:smite ] notAffectedGroups: [ enchanted_book, melee_weapons ] restriction_soul_speed: - enchantments: [ soul_speed ] + enchantments: [ minecraft:soul_speed ] notAffectedGroups: [ enchanted_book, boots ] restriction_sweeping_edge: - enchantments: [ sweeping, sweeping_edge ] + enchantments: [ minecraft:sweeping, minecraft:sweeping_edge ] notAffectedGroups: [ enchanted_book, swords ] # Do not exist in 1.18, that mean useInFuture will be set to true # useInFuture set to true also mean it will not warn if there is an issue restriction_swift_sneak: useInFuture: true - enchantments: [ swift_sneak ] + enchantments: [ minecraft:swift_sneak ] notAffectedGroups: [ enchanted_book, leggings ] restriction_thorns: - enchantments: [ thorns ] + enchantments: [ minecraft:thorns ] notAffectedGroups: [ enchanted_book, armors ] -restriction_unbreaking: - enchantments: [ unbreaking ] +restriction__unbreaking: + enchantments: [ minecraft:unbreaking ] notAffectedGroups: [ enchanted_book, can_unbreak ] # ---------------------------------------------------- @@ -180,60 +180,60 @@ restriction_unbreaking: sword_enchant_conflict: enchantments: - - bane_of_arthropods - - smite - - sharpness + - minecraft:bane_of_arthropods + - minecraft:smite + - minecraft:sharpness notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 protection_enchant_conflict: enchantments: - - blast_protection - - fire_protection - - projectile_protection - - protection + - minecraft:blast_protection + - minecraft:fire_protection + - minecraft:projectile_protection + - minecraft:protection notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 trident_conflict1: enchantments: - - channeling - - riptide + - minecraft:channeling + - minecraft:riptide notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 trident_conflict2: enchantments: - - loyalty - - riptide + - minecraft:loyalty + - minecraft:riptide notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 boot_conflict: enchantments: - - depth_strider - - frost_walker + - minecraft:depth_strider + - minecraft:frost_walker notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 tool_conflict: enchantments: - - fortune - - silk_touch + - minecraft:fortune + - minecraft:silk_touch notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 bow_conflict: enchantments: - - mending - - infinity + - minecraft:mending + - minecraft:infinity notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 crossbow_conflict: enchantments: - - multishot - - piercing + - minecraft:multishot + - minecraft:piercing notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 diff --git a/defaultconfigs/1.21/config.yml b/defaultconfigs/1.21/config.yml index 5b47ec4..dd24558 100644 --- a/defaultconfigs/1.21/config.yml +++ b/defaultconfigs/1.21/config.yml @@ -97,49 +97,46 @@ default_limit: 5 # # Valid range of 1 - 255 for each enchantment enchant_limits: - aqua_affinity: 1 - binding_curse: 1 - channeling: 1 - flame: 1 - infinity: 1 - mending: 1 - multishot: 1 - silk_touch: 1 - vanishing_curse: 1 - depth_strider: 3 # anything more than 3 is treated as 3 by the game - protection: 4 - fire_protection: 4 - blast_protection: 4 - projectile_protection: 4 - feather_falling: 4 - thorns: 3 - respiration: 3 - sharpness: 5 - smite: 5 - bane_of_arthropods: 5 - knockback: 2 - fire_aspect: 2 - looting: 3 - sweeping: 3 - sweeping_edge: 3 - efficiency: 5 - unbreaking: 3 - fortune: 3 - power: 5 - punch: 2 - luck_of_the_sea: 3 - lure: 3 - frost_walker: 2 - impaling: 5 - riptide: 3 - loyalty: 3 - piercing: 4 - quick_charge: 3 - soul_speed: 3 - swift_sneak: 3 - density: 5 - breach: 4 - wind_burst: 3 + minecraft:aqua_affinity: 1 + minecraft:binding_curse: 1 + minecraft:channeling: 1 + minecraft:flame: 1 + minecraft:infinity: 1 + minecraft:mending: 1 + minecraft:multishot: 1 + minecraft:silk_touch: 1 + minecraft:vanishing_curse: 1 + minecraft:depth_strider: 3 # anything more than 3 is treated as 3 by the game + minecraft:protection: 4 + minecraft:fire_protection: 4 + minecraft:blast_protection: 4 + minecraft:projectile_protection: 4 + minecraft:feather_falling: 4 + minecraft:thorns: 3 + minecraft:respiration: 3 + minecraft:sharpness: 5 + minecraft:smite: 5 + minecraft:bane_of_arthropods: 5 + minecraft:knockback: 2 + minecraft:fire_aspect: 2 + minecraft:looting: 3 + minecraft:sweeping: 3 + minecraft:sweeping_edge: 3 + minecraft:efficiency: 5 + minecraft:unbreaking: 3 + minecraft:fortune: 3 + minecraft:power: 5 + minecraft:punch: 2 + minecraft:luck_of_the_sea: 3 + minecraft:lure: 3 + minecraft:frost_walker: 2 + minecraft:impaling: 5 + minecraft:riptide: 3 + minecraft:loyalty: 3 + minecraft:piercing: 4 + minecraft:quick_charge: 3 + minecraft:soul_speed: 3 + minecraft:swift_sneak: 3 # Multipliers used to calculate the enchantment's value in repair/combining # @@ -153,135 +150,137 @@ enchant_limits: # With default values protection 4 would have a value of 4 when # coming from either a book (4 * 1) or an item (4 * 1) enchant_values: - aqua_affinity: + minecraft:aqua_affinity: item: 4 book: 2 - bane_of_arthropods: + minecraft:bane_of_arthropods: item: 2 book: 1 - binding_curse: + minecraft:binding_curse: item: 8 book: 4 - blast_protection: + minecraft:blast_protection: item: 4 book: 2 - channeling: + minecraft:channeling: item: 8 book: 4 - depth_strider: + minecraft:depth_strider: item: 4 book: 2 - efficiency: + minecraft:efficiency: item: 1 book: 1 - flame: + minecraft:flame: item: 4 book: 2 - feather_falling: + minecraft:feather_falling: item: 2 book: 1 - fire_aspect: + minecraft:fire_aspect: item: 4 book: 2 - fire_protection: + minecraft:fire_protection: item: 2 book: 1 - fortune: + minecraft:fortune: item: 4 book: 2 - frost_walker: + minecraft:frost_walker: item: 4 book: 2 - impaling: + minecraft:impaling: item: 4 book: 2 - infinity: + minecraft:infinity: item: 8 book: 4 - knockback: + minecraft:knockback: item: 2 book: 1 - looting: + minecraft:looting: item: 4 book: 2 - loyalty: + minecraft:loyalty: item: 1 book: 1 - luck_of_the_sea: + minecraft:luck_of_the_sea: item: 4 book: 2 - lure: + minecraft:lure: item: 4 book: 2 - mending: + minecraft:mending: item: 4 book: 2 - multishot: + minecraft:multishot: item: 4 book: 2 - piercing: + minecraft:piercing: item: 1 book: 1 - power: + minecraft:power: item: 1 book: 1 - projectile_protection: + minecraft:projectile_protection: item: 2 book: 1 - protection: + minecraft:protection: item: 1 book: 1 - punch: + minecraft:punch: item: 4 book: 2 - quick_charge: + minecraft:quick_charge: item: 2 book: 1 - respiration: + minecraft:respiration: item: 4 book: 2 - riptide: + minecraft:riptide: item: 4 book: 2 - silk_touch: + minecraft:silk_touch: item: 8 book: 4 - sharpness: + minecraft:sharpness: item: 1 book: 1 - smite: + minecraft:smite: item: 2 book: 1 - soul_speed: + minecraft:soul_speed: item: 8 book: 4 - swift_sneak: + minecraft:swift_sneak: item: 8 book: 4 - sweeping: + minecraft:sweeping: item: 4 book: 2 - sweeping_edge: + minecraft:sweeping_edge: item: 4 book: 2 - thorns: + minecraft:thorns: item: 8 book: 4 - unbreaking: + minecraft:unbreaking: item: 2 book: 1 - vanishing_curse: + minecraft:vanishing_curse: item: 8 book: 4 - density: - item: 1 - book: 1 - breach: - item: 4 - book: 2 - wind_burst: - item: 4 - book: 2 + +# Disable enchantment merging for level above the set value +# Enchantment merging is when, for example, 2 unbreaking II book combine to give sharpness III +# But Enchantment above this value can still be applied. following the previous example, we could still apply a unbreaking III book to a sword +# Even if disable-merge-over of unbreaking is set to 2 +# -1 mean enchantment merge for this enchantment is not disabled. default to -1 if absent. +disable-merge-over: + # Sharpness is set to -1. it equivalent to it not being set to anything (and work as vanilla) + minecraft:sharpness: -1 + # If uncommented. 2 unbreaking II book would not give an unbreaking III book. but unbreaking III book can still be applied + #minecraft:unbreaking: 2 # Whether to show debug logging debug_log: false @@ -296,4 +295,3 @@ debug_log_verbose: false force_protocolib: false configVersion: 1.6.2 -lowMinecraftVersion: '1.21' diff --git a/defaultconfigs/1.21/enchant_conflict.yml b/defaultconfigs/1.21/enchant_conflict.yml index dc3e951..0e8b3f3 100644 --- a/defaultconfigs/1.21/enchant_conflict.yml +++ b/defaultconfigs/1.21/enchant_conflict.yml @@ -17,278 +17,159 @@ # ---------------------------------------------------- restriction_aqua_affinity: - enchantments: - - aqua_affinity - notAffectedGroups: - - enchanted_book - - helmets + enchantments: [ minecraft:aqua_affinity ] + notAffectedGroups: [ enchanted_book, helmets ] restriction_bane_of_arthropods: - enchantments: - - bane_of_arthropods - notAffectedGroups: - - enchanted_book - - melee_weapons - - mace + enchantments: [ minecraft:bane_of_arthropods ] + notAffectedGroups: [ enchanted_book, melee_weapons ] restriction_blast_protection: - enchantments: - - blast_protection - notAffectedGroups: - - enchanted_book - - armors + enchantments: [ minecraft:blast_protection ] + notAffectedGroups: [ enchanted_book, armors ] restriction_channeling: - enchantments: - - channeling - notAffectedGroups: - - enchanted_book - - trident + enchantments: [ minecraft:channeling ] + notAffectedGroups: [ enchanted_book, trident ] restriction_binding_curse: - enchantments: - - binding_curse - notAffectedGroups: - - enchanted_book - - wearable + enchantments: [ minecraft:binding_curse ] + notAffectedGroups: [ enchanted_book, wearable ] restriction_vanishing_curse: - enchantments: - - vanishing_curse - notAffectedGroups: - - enchanted_book - - can_vanish + enchantments: [ minecraft:vanishing_curse ] + notAffectedGroups: [ enchanted_book, can_vanish ] restriction_depth_strider: - enchantments: - - depth_strider - notAffectedGroups: - - enchanted_book - - boots + enchantments: [ minecraft:depth_strider ] + notAffectedGroups: [ enchanted_book, boots ] restriction_efficiency: - enchantments: - - efficiency - notAffectedGroups: - - enchanted_book - - tools - - shears + enchantments: [ minecraft:efficiency ] + notAffectedGroups: [ enchanted_book, tools, shears ] restriction_feather_falling: - enchantments: - - feather_falling - notAffectedGroups: - - enchanted_book - - boots + enchantments: [ minecraft:feather_falling ] + notAffectedGroups: [ enchanted_book, boots ] restriction_fire_aspect: - enchantments: - - fire_aspect - notAffectedGroups: - - enchanted_book - - swords - - mace + enchantments: [ minecraft:fire_aspect ] + notAffectedGroups: [ enchanted_book, swords ] restriction_fire_protection: - enchantments: - - fire_protection - notAffectedGroups: - - enchanted_book - - armors + enchantments: [ minecraft:fire_protection ] + notAffectedGroups: [ enchanted_book, armors ] restriction_flame: - enchantments: - - flame - notAffectedGroups: - - enchanted_book - - bow + enchantments: [ minecraft:flame ] + notAffectedGroups: [ enchanted_book, bow ] restriction_fortune: - enchantments: - - fortune - notAffectedGroups: - - enchanted_book - - tools + enchantments: [ minecraft:fortune ] + notAffectedGroups: [ enchanted_book, tools ] restriction_frost_walker: - enchantments: - - frost_walker - notAffectedGroups: - - enchanted_book - - boots + enchantments: [ minecraft:frost_walker ] + notAffectedGroups: [ enchanted_book, boots ] restriction_impaling: - enchantments: - - impaling - notAffectedGroups: - - enchanted_book - - trident + enchantments: [ minecraft:impaling ] + notAffectedGroups: [ enchanted_book, trident ] restriction_infinity: - enchantments: - - infinity - notAffectedGroups: - - enchanted_book - - bow + enchantments: [ minecraft:infinity ] + notAffectedGroups: [ enchanted_book, bow ] restriction_knockback: - enchantments: - - knockback - notAffectedGroups: - - enchanted_book - - swords + enchantments: [ minecraft:knockback ] + notAffectedGroups: [ enchanted_book, swords ] restriction_looting: - enchantments: - - looting - notAffectedGroups: - - enchanted_book - - swords + enchantments: [ minecraft:looting ] + notAffectedGroups: [ enchanted_book, swords ] restriction_loyalty: - enchantments: - - loyalty - notAffectedGroups: - - enchanted_book - - trident + enchantments: [ minecraft:loyalty ] + notAffectedGroups: [ enchanted_book, trident ] restriction_lure: - enchantments: - - lure - notAffectedGroups: - - enchanted_book - - fishing_rod + enchantments: [ minecraft:lure ] + notAffectedGroups: [ enchanted_book, fishing_rod ] restriction_mending: - enchantments: - - mending - notAffectedGroups: - - enchanted_book - - can_unbreak + enchantments: [ minecraft:mending ] + notAffectedGroups: [ enchanted_book, can_unbreak ] -restriction_multishot: - enchantments: - - multishot - notAffectedGroups: - - enchanted_book - - crossbow +restriction_minecraft_multishot: + enchantments: [ minecraft:multishot ] + notAffectedGroups: [ enchanted_book, crossbow ] restriction_piercing: - enchantments: - - piercing - notAffectedGroups: - - enchanted_book - - crossbow + enchantments: [ minecraft:piercing ] + notAffectedGroups: [ enchanted_book, crossbow ] restriction_power: - enchantments: - - power - notAffectedGroups: - - enchanted_book - - bow + enchantments: [ minecraft:power ] + notAffectedGroups: [ enchanted_book, bow ] restriction_projectile_protection: - enchantments: - - projectile_protection - notAffectedGroups: - - enchanted_book - - armors + enchantments: [ minecraft:projectile_protection ] + notAffectedGroups: [ enchanted_book, armors ] restriction_protection: - enchantments: - - protection - notAffectedGroups: - - enchanted_book - - armors + enchantments: [ minecraft:protection ] + notAffectedGroups: [ enchanted_book, armors ] restriction_punch: - enchantments: - - punch - notAffectedGroups: - - enchanted_book - - bow + enchantments: [ minecraft:punch ] + notAffectedGroups: [ enchanted_book, bow ] restriction_quick_charge: - enchantments: - - quick_charge - notAffectedGroups: - - enchanted_book - - crossbow + enchantments: [ minecraft:quick_charge ] + notAffectedGroups: [ enchanted_book, crossbow ] restriction_respiration: - enchantments: - - respiration - notAffectedGroups: - - enchanted_book - - helmets + enchantments: [ minecraft:respiration ] + notAffectedGroups: [ enchanted_book, helmets ] restriction_riptide: - enchantments: - - riptide - notAffectedGroups: - - enchanted_book - - trident + enchantments: [ minecraft:riptide ] + notAffectedGroups: [ enchanted_book, trident ] restriction_sharpness: - enchantments: - - sharpness - notAffectedGroups: - - enchanted_book - - melee_weapons + enchantments: [ minecraft:sharpness ] + notAffectedGroups: [ enchanted_book, melee_weapons ] -restriction_silk_touch: - enchantments: - - silk_touch - notAffectedGroups: - - enchanted_book - - tools +restriction__silk_touch: + enchantments: [ minecraft:silk_touch ] + notAffectedGroups: [ enchanted_book, tools ] restriction_smite: - enchantments: - - smite - notAffectedGroups: - - enchanted_book - - melee_weapons - - mace + enchantments: [ minecraft:smite ] + notAffectedGroups: [ enchanted_book, melee_weapons ] restriction_soul_speed: - enchantments: - - soul_speed - notAffectedGroups: - - enchanted_book - - boots + enchantments: [ minecraft:soul_speed ] + notAffectedGroups: [ enchanted_book, boots ] restriction_sweeping_edge: - enchantments: - - sweeping - - sweeping_edge - notAffectedGroups: - - enchanted_book - - swords + enchantments: [ minecraft:sweeping, minecraft:sweeping_edge ] + notAffectedGroups: [ enchanted_book, swords ] # Do not exist in 1.18, that mean useInFuture will be set to true # useInFuture set to true also mean it will not warn if there is an issue restriction_swift_sneak: useInFuture: true - enchantments: - - swift_sneak - notAffectedGroups: - - enchanted_book - - leggings + enchantments: [ minecraft:swift_sneak ] + notAffectedGroups: [ enchanted_book, leggings ] restriction_thorns: - enchantments: - - thorns - notAffectedGroups: - - enchanted_book - - armors + enchantments: [ minecraft:thorns ] + notAffectedGroups: [ enchanted_book, armors ] -restriction_unbreaking: - enchantments: - - unbreaking - notAffectedGroups: - - enchanted_book - - can_unbreak +restriction__unbreaking: + enchantments: [ minecraft:unbreaking ] + notAffectedGroups: [ enchanted_book, can_unbreak ] # ---------------------------------------------------- # Now we have conflicts about enchantment Incompatibility @@ -299,86 +180,61 @@ restriction_unbreaking: sword_enchant_conflict: enchantments: - - bane_of_arthropods - - smite - - sharpness - notAffectedGroups: [] + - minecraft:bane_of_arthropods + - minecraft:smite + - minecraft:sharpness + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 protection_enchant_conflict: enchantments: - - blast_protection - - fire_protection - - projectile_protection - - protection - notAffectedGroups: [] + - minecraft:blast_protection + - minecraft:fire_protection + - minecraft:projectile_protection + - minecraft:protection + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 trident_conflict1: enchantments: - - channeling - - riptide - notAffectedGroups: [] + - minecraft:channeling + - minecraft:riptide + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 trident_conflict2: enchantments: - - loyalty - - riptide - notAffectedGroups: [] + - minecraft:loyalty + - minecraft:riptide + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 boot_conflict: enchantments: - - depth_strider - - frost_walker - notAffectedGroups: [] + - minecraft:depth_strider + - minecraft:frost_walker + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 tool_conflict: enchantments: - - fortune - - silk_touch - notAffectedGroups: [] + - minecraft:fortune + - minecraft:silk_touch + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 bow_conflict: enchantments: - - mending - - infinity - notAffectedGroups: [] + - minecraft:mending + - minecraft:infinity + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 crossbow_conflict: enchantments: - - multishot - - piercing - notAffectedGroups: [] - maxEnchantmentBeforeConflict: 1 -restriction_density: - enchantments: - - density - notAffectedGroups: - - mace - - enchanted_book -restriction_breach: - enchantments: - - breach - notAffectedGroups: - - mace - - enchanted_book -restriction_wind_burst: - enchantments: - - wind_burst - notAffectedGroups: - - mace - - enchanted_book -mace_enchant_conflict: - enchantments: - - density - - breach - - smite - - bane_of_arthropods + - minecraft:multishot + - minecraft:piercing + notAffectedGroups: [ ] maxEnchantmentBeforeConflict: 1 # ---------------------------------------------------- diff --git a/defaultconfigs/1.21/item_groups.yml b/defaultconfigs/1.21/item_groups.yml index 0add107..3c1eb5d 100644 --- a/defaultconfigs/1.21/item_groups.yml +++ b/defaultconfigs/1.21/item_groups.yml @@ -20,16 +20,16 @@ nothing: example_include: type: include items: - - stone - - polished_granite + - stone + - polished_granite # This group contain everything except polished granite and elements of example_include example_exclude: type: exclude items: - - polished_granite + - polished_granite groups: - - example_include + - example_include # Default configuration should be vanilla enchantment conflict group # there may have error, if you find one you can fix it ! @@ -38,176 +38,173 @@ example_exclude: swords: type: include items: - - wooden_sword - - stone_sword - - iron_sword - - diamond_sword - - golden_sword - - netherite_sword + - wooden_sword + - stone_sword + - iron_sword + - diamond_sword + - golden_sword + - netherite_sword axes: type: include items: - - wooden_axe - - stone_axe - - iron_axe - - diamond_axe - - golden_axe - - netherite_axe + - wooden_axe + - stone_axe + - iron_axe + - diamond_axe + - golden_axe + - netherite_axe melee_weapons: type: include groups: - - swords - - axes + - swords + - axes helmets: type: include items: - - leather_helmet - - chainmail_helmet - - iron_helmet - - diamond_helmet - - golden_helmet - - netherite_helmet - - turtle_helmet + - leather_helmet + - chainmail_helmet + - iron_helmet + - diamond_helmet + - golden_helmet + - netherite_helmet + - turtle_helmet chestplate: type: include items: - - leather_chestplate - - chainmail_chestplate - - iron_chestplate - - diamond_chestplate - - golden_chestplate - - netherite_chestplate + - leather_chestplate + - chainmail_chestplate + - iron_chestplate + - diamond_chestplate + - golden_chestplate + - netherite_chestplate leggings: type: include items: - - leather_leggings - - chainmail_leggings - - iron_leggings - - diamond_leggings - - golden_leggings - - netherite_leggings + - leather_leggings + - chainmail_leggings + - iron_leggings + - diamond_leggings + - golden_leggings + - netherite_leggings boots: type: include items: - - leather_boots - - chainmail_boots - - iron_boots - - diamond_boots - - golden_boots - - netherite_boots + - leather_boots + - chainmail_boots + - iron_boots + - diamond_boots + - golden_boots + - netherite_boots armors: type: include groups: - - helmets - - chestplate - - leggings - - boots + - helmets + - chestplate + - leggings + - boots wearable: type: include items: - - elytra - - carved_pumpkin - - skeleton_skull - - wither_skeleton_skull - - zombie_head - - player_head - - creeper_head - - dragon_head - - piglin_head + - elytra + - carved_pumpkin + - skeleton_skull + - wither_skeleton_skull + - zombie_head + - player_head + - creeper_head + - dragon_head + # do not exist in 1.18 but exist in future update + - piglin_head groups: - - armors + - armors tools: type: include items: - - wooden_pickaxe - - stone_pickaxe - - iron_pickaxe - - diamond_pickaxe - - golden_pickaxe - - netherite_pickaxe - - wooden_shovel - - stone_shovel - - iron_shovel - - diamond_shovel - - golden_shovel - - netherite_shovel - - wooden_hoe - - stone_hoe - - iron_hoe - - diamond_hoe - - golden_hoe - - netherite_hoe + - wooden_pickaxe + - stone_pickaxe + - iron_pickaxe + - diamond_pickaxe + - golden_pickaxe + - netherite_pickaxe + - wooden_shovel + - stone_shovel + - iron_shovel + - diamond_shovel + - golden_shovel + - netherite_shovel + - wooden_hoe + - stone_hoe + - iron_hoe + - diamond_hoe + - golden_hoe + - netherite_hoe groups: - - axes + - axes enchanted_book: type: include items: - - enchanted_book + - enchanted_book trident: type: include items: - - trident + - trident bow: type: include items: - - bow + - bow crossbow: type: include items: - - crossbow + - crossbow fishing_rod: type: include items: - - fishing_rod + - fishing_rod shears: type: include items: - - shears + - shears can_unbreak: type: include items: - - elytra - - flint_and_steel - - shield - - carrot_on_a_stick - - warped_fungus_on_a_stick - - brush + - elytra + - flint_and_steel + - shield + - carrot_on_a_stick + - warped_fungus_on_a_stick + # do not exist in 1.18 but exist in future update + - brush groups: - - melee_weapons - - tools - - armors - - trident - - bow - - crossbow - - fishing_rod - - shears - - mace + - melee_weapons + - tools + - armors + - trident + - bow + - crossbow + - fishing_rod + - shears can_vanish: type: include items: - - compass + - compass groups: - - wearable - - can_unbreak -mace: - type: include - items: - - mace + - wearable + - can_unbreak diff --git a/defaultconfigs/1.21/unit_repair_item.yml b/defaultconfigs/1.21/unit_repair_item.yml index ec548c6..2902cce 100644 --- a/defaultconfigs/1.21/unit_repair_item.yml +++ b/defaultconfigs/1.21/unit_repair_item.yml @@ -188,5 +188,3 @@ warped_planks: wooden_shovel: 0.25 wooden_hoe: 0.25 shield: 0.25 -breeze_rod: - mace: 0.25 diff --git a/src/main/java/xyz/alexcrea/cuanvil/api/EnchantmentApi.java b/src/main/java/xyz/alexcrea/cuanvil/api/EnchantmentApi.java index 96a5f96..32a62c3 100644 --- a/src/main/java/xyz/alexcrea/cuanvil/api/EnchantmentApi.java +++ b/src/main/java/xyz/alexcrea/cuanvil/api/EnchantmentApi.java @@ -137,7 +137,7 @@ public class EnchantmentApi { * @return The custom anvil enchantment of this name. null if not found. * @deprecated use {@link #getListByName(String)} */ - @Deprecated(since = "1.6.1") + @Deprecated(since = "1.6.3") @Nullable public static CAEnchantment getByName(@NotNull String name){ return CAEnchantment.getByName(name); diff --git a/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantment.java b/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantment.java index 217b958..1d94ba2 100644 --- a/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantment.java +++ b/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantment.java @@ -233,7 +233,7 @@ public interface CAEnchantment { * * @deprecated use {@link #getListByName(String)} */ - @Deprecated(since = "1.6.1") + @Deprecated(since = "1.6.3") static @Nullable CAEnchantment getByName(@NotNull String name){ return CAEnchantmentRegistry.getInstance().getByName(name); } diff --git a/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantmentRegistry.java b/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantmentRegistry.java index 8c7187a..1225209 100644 --- a/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantmentRegistry.java +++ b/src/main/java/xyz/alexcrea/cuanvil/enchant/CAEnchantmentRegistry.java @@ -146,7 +146,7 @@ public class CAEnchantmentRegistry { * * @deprecated use {@link #getListByName(String)} */ - @Deprecated(since = "1.6.1") + @Deprecated(since = "1.6.3") @Nullable public CAEnchantment getByName(@NotNull String name){ List enchantments = getListByName(name); diff --git a/src/main/java/xyz/alexcrea/cuanvil/update/Update_1_21.java b/src/main/java/xyz/alexcrea/cuanvil/update/Update_1_21.java index 3211497..af21989 100644 --- a/src/main/java/xyz/alexcrea/cuanvil/update/Update_1_21.java +++ b/src/main/java/xyz/alexcrea/cuanvil/update/Update_1_21.java @@ -45,13 +45,13 @@ public class Update_1_21 { addToStringList(groupConfig, "can_unbreak.groups", "mace"); // Add new enchant conflicts - addToStringList(conflictConfig, "restriction_density.enchantments", "density"); + addToStringList(conflictConfig, "restriction_density.enchantments", "minecraft:density"); addToStringList(conflictConfig, "restriction_density.notAffectedGroups", "mace", "enchanted_book"); - addToStringList(conflictConfig, "restriction_breach.enchantments", "breach"); + addToStringList(conflictConfig, "restriction_breach.enchantments", "minecraft:breach"); addToStringList(conflictConfig, "restriction_breach.notAffectedGroups", "mace", "enchanted_book"); - addToStringList(conflictConfig, "restriction_wind_burst.enchantments", "wind_burst"); + addToStringList(conflictConfig, "restriction_wind_burst.enchantments", "minecraft:wind_burst"); addToStringList(conflictConfig, "restriction_wind_burst.notAffectedGroups", "mace", "enchanted_book"); // Add mace to conflicts @@ -59,13 +59,14 @@ public class Update_1_21 { addToStringList(conflictConfig, "restriction_smite.notAffectedGroups", "mace"); addToStringList(conflictConfig, "restriction_bane_of_arthropods.notAffectedGroups", "mace"); - addToStringList(conflictConfig, "mace_enchant_conflict.enchantments", "density", "breach", "smite", "bane_of_arthropods"); + addToStringList(conflictConfig, "mace_enchant_conflict.enchantments", + "minecraft:density", "minecraft:breach", "minecraft:smite", "minecraft:bane_of_arthropods"); conflictConfig.set("mace_enchant_conflict.maxEnchantmentBeforeConflict", 1); // Add level limit - baseConfig.set("enchant_limits.density", 5); - baseConfig.set("enchant_limits.breach", 4); - baseConfig.set("enchant_limits.wind_burst", 3); + baseConfig.set("enchant_limits.minecraft:density", 5); + baseConfig.set("enchant_limits.minecraft:breach", 4); + baseConfig.set("enchant_limits.minecraft:wind_burst", 3); // Add enchant values baseConfig.set("enchant_values.density.item", 1); diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/group/EnchantConflictManager.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/group/EnchantConflictManager.kt index 786ddb8..0c0850b 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/group/EnchantConflictManager.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/group/EnchantConflictManager.kt @@ -122,7 +122,8 @@ class EnchantConflictManager { // Temporary solution for 1.20.5 when(enchantName){ - "sweeping", "sweeping_edge" -> { + "minecraft:sweeping", "sweeping", + "minecraft:sweeping_edge", "sweeping_edge" -> { return SWEEPING_EDGE_ENCHANT } } diff --git a/src/main/resources/enchant_conflict.yml b/src/main/resources/enchant_conflict.yml index f6b20b6..0e8b3f3 100644 --- a/src/main/resources/enchant_conflict.yml +++ b/src/main/resources/enchant_conflict.yml @@ -16,87 +16,87 @@ # on illegal items # ---------------------------------------------------- -restriction_minecraft_aqua_affinity: +restriction_aqua_affinity: enchantments: [ minecraft:aqua_affinity ] notAffectedGroups: [ enchanted_book, helmets ] -restriction_minecraft_bane_of_arthropods: +restriction_bane_of_arthropods: enchantments: [ minecraft:bane_of_arthropods ] notAffectedGroups: [ enchanted_book, melee_weapons ] -restriction_minecraft_blast_protection: +restriction_blast_protection: enchantments: [ minecraft:blast_protection ] notAffectedGroups: [ enchanted_book, armors ] -restriction_minecraft_channeling: +restriction_channeling: enchantments: [ minecraft:channeling ] notAffectedGroups: [ enchanted_book, trident ] -restriction_minecraft_binding_curse: +restriction_binding_curse: enchantments: [ minecraft:binding_curse ] notAffectedGroups: [ enchanted_book, wearable ] -restriction_minecraft_vanishing_curse: +restriction_vanishing_curse: enchantments: [ minecraft:vanishing_curse ] notAffectedGroups: [ enchanted_book, can_vanish ] -restriction_minecraft_depth_strider: +restriction_depth_strider: enchantments: [ minecraft:depth_strider ] notAffectedGroups: [ enchanted_book, boots ] -restriction_minecraft_efficiency: +restriction_efficiency: enchantments: [ minecraft:efficiency ] notAffectedGroups: [ enchanted_book, tools, shears ] -restriction_minecraft_feather_falling: +restriction_feather_falling: enchantments: [ minecraft:feather_falling ] notAffectedGroups: [ enchanted_book, boots ] -restriction_minecraft_fire_aspect: +restriction_fire_aspect: enchantments: [ minecraft:fire_aspect ] notAffectedGroups: [ enchanted_book, swords ] -restriction_minecraft_fire_protection: +restriction_fire_protection: enchantments: [ minecraft:fire_protection ] notAffectedGroups: [ enchanted_book, armors ] -restriction_minecraft_flame: +restriction_flame: enchantments: [ minecraft:flame ] notAffectedGroups: [ enchanted_book, bow ] -restriction_minecraft_fortune: +restriction_fortune: enchantments: [ minecraft:fortune ] notAffectedGroups: [ enchanted_book, tools ] -restriction_minecraft_frost_walker: +restriction_frost_walker: enchantments: [ minecraft:frost_walker ] notAffectedGroups: [ enchanted_book, boots ] -restriction_minecraft_impaling: +restriction_impaling: enchantments: [ minecraft:impaling ] notAffectedGroups: [ enchanted_book, trident ] -restriction_minecraft_infinity: +restriction_infinity: enchantments: [ minecraft:infinity ] notAffectedGroups: [ enchanted_book, bow ] -restriction_minecraft_knockback: +restriction_knockback: enchantments: [ minecraft:knockback ] notAffectedGroups: [ enchanted_book, swords ] -restriction_minecraft_looting: +restriction_looting: enchantments: [ minecraft:looting ] notAffectedGroups: [ enchanted_book, swords ] -restriction_minecraft_loyalty: +restriction_loyalty: enchantments: [ minecraft:loyalty ] notAffectedGroups: [ enchanted_book, trident ] -restriction_minecraft_lure: +restriction_lure: enchantments: [ minecraft:lure ] notAffectedGroups: [ enchanted_book, fishing_rod ] -restriction_minecraft_mending: +restriction_mending: enchantments: [ minecraft:mending ] notAffectedGroups: [ enchanted_book, can_unbreak ] @@ -104,70 +104,70 @@ restriction_minecraft_multishot: enchantments: [ minecraft:multishot ] notAffectedGroups: [ enchanted_book, crossbow ] -restriction_minecraft_piercing: +restriction_piercing: enchantments: [ minecraft:piercing ] notAffectedGroups: [ enchanted_book, crossbow ] -restriction_minecraft_power: +restriction_power: enchantments: [ minecraft:power ] notAffectedGroups: [ enchanted_book, bow ] -restriction_minecraft_projectile_protection: +restriction_projectile_protection: enchantments: [ minecraft:projectile_protection ] notAffectedGroups: [ enchanted_book, armors ] -restriction_minecraft_protection: +restriction_protection: enchantments: [ minecraft:protection ] notAffectedGroups: [ enchanted_book, armors ] -restriction_minecraft_punch: +restriction_punch: enchantments: [ minecraft:punch ] notAffectedGroups: [ enchanted_book, bow ] -restriction_minecraft_quick_charge: +restriction_quick_charge: enchantments: [ minecraft:quick_charge ] notAffectedGroups: [ enchanted_book, crossbow ] -restriction_minecraft_respiration: +restriction_respiration: enchantments: [ minecraft:respiration ] notAffectedGroups: [ enchanted_book, helmets ] -restriction_minecraft_riptide: +restriction_riptide: enchantments: [ minecraft:riptide ] notAffectedGroups: [ enchanted_book, trident ] -restriction_minecraft_sharpness: +restriction_sharpness: enchantments: [ minecraft:sharpness ] notAffectedGroups: [ enchanted_book, melee_weapons ] -restriction_minecraft_silk_touch: +restriction__silk_touch: enchantments: [ minecraft:silk_touch ] notAffectedGroups: [ enchanted_book, tools ] -restriction_minecraft_smite: +restriction_smite: enchantments: [ minecraft:smite ] notAffectedGroups: [ enchanted_book, melee_weapons ] -restriction_minecraft_soul_speed: +restriction_soul_speed: enchantments: [ minecraft:soul_speed ] notAffectedGroups: [ enchanted_book, boots ] -restriction_minecraft_sweeping_edge: +restriction_sweeping_edge: enchantments: [ minecraft:sweeping, minecraft:sweeping_edge ] notAffectedGroups: [ enchanted_book, swords ] # Do not exist in 1.18, that mean useInFuture will be set to true # useInFuture set to true also mean it will not warn if there is an issue -restriction_minecraft_swift_sneak: +restriction_swift_sneak: useInFuture: true enchantments: [ minecraft:swift_sneak ] notAffectedGroups: [ enchanted_book, leggings ] -restriction_minecraft_thorns: +restriction_thorns: enchantments: [ minecraft:thorns ] notAffectedGroups: [ enchanted_book, armors ] -restriction_minecraft_unbreaking: +restriction__unbreaking: enchantments: [ minecraft:unbreaking ] notAffectedGroups: [ enchanted_book, can_unbreak ]