From de3865743d31501378b3841190083f55cdfc0a7c Mon Sep 17 00:00:00 2001 From: Shibva <38770780+Shibva@users.noreply.github.com> Date: Fri, 20 Feb 2026 01:35:38 -0500 Subject: [PATCH 1/5] What to clone enchant x? TOO BAD, BLACKLIST-EEGEE TIME! - Added a new Enchantment tag and blacklist check for the Enchanter; Enchantment ids in the `enchanter_blacklisted_enchantments` tag will now be skipped for both enchanting processes. Will still work if the enchantment is on the central item already though. This will enable modpack makers and developers to restrict enchantments that are acquired though other means exclusively to their method. --- .../dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java | 7 ++++++- .../spectrum/registries/SpectrumEnchantmentTags.java | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java index b6c5b1b2be..216054bc0e 100644 --- a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java +++ b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java @@ -148,7 +148,12 @@ public static Map collectHighestEnchantments(List itemStackEnchantments = EnchantmentHelper.get(itemStack); for (Enchantment enchantment : itemStackEnchantments.keySet()) { int level = itemStackEnchantments.get(enchantment); - if (enchantmentLevelMap.containsKey(enchantment)) { + + if (SpectrumEnchantmentTags.isIn(SpectrumEnchantmentTags.ENCHANTER_BLACKLIST, enchantment)) { + continue; + } + + if (enchantmentLevelMap.containsKey(enchantment)) { int storedLevel = enchantmentLevelMap.get(enchantment); if (level > storedLevel) { enchantmentLevelMap.put(enchantment, level); diff --git a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java index 7c519830ba..87fb4568e8 100644 --- a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java +++ b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java @@ -12,6 +12,8 @@ public class SpectrumEnchantmentTags { public static final TagKey SPECTRUM_ENCHANTMENT = of("enchantments"); + public static final TagKey ENCHANTER_BLACKLIST = of("enchanter_blacklisted_enchantments"); + private static TagKey of(String id) { return TagKey.of(RegistryKeys.ENCHANTMENT, SpectrumCommon.locate(id)); } From 4208b421cf6decee42b457c77b0911daf86327c0 Mon Sep 17 00:00:00 2001 From: Shibva <38770780+Shibva@users.noreply.github.com> Date: Fri, 20 Feb 2026 15:35:58 -0500 Subject: [PATCH 2/5] Changes - Duplicated `collectHighestEnchantments` with original functionality and refitted the second one to accept a `blacklist` arg to act as a exclusion filter. - Adjusted Enchanter to use the filterable version of `collectHighestEnchantments` with the `ENCHANTER_BLACKLIST` tag - Renamed the actual data tag from `blacklisted_enchantments` to `enchanter_copying_and_applying_blacklisted` as requested - add in a blank tag under Enchantment `enchanter_copying_and_applying_blacklisted` as requested by Daf, it will be empty but there to suggest its existence to those who crawl through mods looking for ways to configure stuff lol - Made a suggested adjustment by IDEA to simplify a part (see line 27 in SpectrumEnchantmentTags.java) - Client tested the workspace for the desired functionality after changes were made --- .../enchanter/EnchanterBlockEntity.java | 2 +- .../helpers/SpectrumEnchantmentHelper.java | 31 ++++++++++++++++--- .../registries/SpectrumEnchantmentTags.java | 7 ++--- ...nter_copying_and_applying_blacklisted.json | 3 ++ 4 files changed, 33 insertions(+), 10 deletions(-) create mode 100644 src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json diff --git a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java index 3aad25565e..4ee4cd47fd 100644 --- a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java +++ b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java @@ -341,7 +341,7 @@ public static Map getHighestEnchantmentsInItemBowls(@NotNu bowlStacks.add(enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i)); } - return SpectrumEnchantmentHelper.collectHighestEnchantments(bowlStacks); + return SpectrumEnchantmentHelper.collectHighestEnchantments(bowlStacks, SpectrumEnchantmentTags.ENCHANTER_BLACKLIST); } public static int getRequiredExperienceToEnchantCenterItem(@NotNull EnchanterBlockEntity enchanterBlockEntity) { diff --git a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java index 216054bc0e..53ce1c0548 100644 --- a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java +++ b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java @@ -8,6 +8,7 @@ import net.minecraft.item.*; import net.minecraft.nbt.*; import net.minecraft.registry.*; +import net.minecraft.registry.tag.*; import net.minecraft.util.*; import org.jetbrains.annotations.*; @@ -141,19 +142,41 @@ public static boolean hasEnchantmentThatConflictsWith(ItemStack itemStack, Encha return false; } - public static Map collectHighestEnchantments(List itemStacks) { + //This instance of collectHighestEnchantments is to enable the use of an optional filter + public static Map collectHighestEnchantments(List itemStacks, TagKey blacklist) { Map enchantmentLevelMap = new LinkedHashMap<>(); - for (ItemStack itemStack : itemStacks) { Map itemStackEnchantments = EnchantmentHelper.get(itemStack); for (Enchantment enchantment : itemStackEnchantments.keySet()) { int level = itemStackEnchantments.get(enchantment); - if (SpectrumEnchantmentTags.isIn(SpectrumEnchantmentTags.ENCHANTER_BLACKLIST, enchantment)) { + if (SpectrumEnchantmentTags.isIn(blacklist, enchantment)) { continue; } - if (enchantmentLevelMap.containsKey(enchantment)) { + if (enchantmentLevelMap.containsKey(enchantment)) { + int storedLevel = enchantmentLevelMap.get(enchantment); + if (level > storedLevel) { + enchantmentLevelMap.put(enchantment, level); + } + } else { + enchantmentLevelMap.put(enchantment, level); + } + } + } + + return enchantmentLevelMap; + } + + //The filterless version of the method above + public static Map collectHighestEnchantments(List itemStacks) { + Map enchantmentLevelMap = new LinkedHashMap<>(); + for (ItemStack itemStack : itemStacks) { + Map itemStackEnchantments = EnchantmentHelper.get(itemStack); + for (Enchantment enchantment : itemStackEnchantments.keySet()) { + int level = itemStackEnchantments.get(enchantment); + + if (enchantmentLevelMap.containsKey(enchantment)) { int storedLevel = enchantmentLevelMap.get(enchantment); if (level > storedLevel) { enchantmentLevelMap.put(enchantment, level); diff --git a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java index 87fb4568e8..2d3abf9216 100644 --- a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java +++ b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java @@ -12,7 +12,7 @@ public class SpectrumEnchantmentTags { public static final TagKey SPECTRUM_ENCHANTMENT = of("enchantments"); - public static final TagKey ENCHANTER_BLACKLIST = of("enchanter_blacklisted_enchantments"); + public static final TagKey ENCHANTER_BLACKLIST = of("enchanter_copying_and_applying_blacklisted"); private static TagKey of(String id) { return TagKey.of(RegistryKeys.ENCHANTMENT, SpectrumCommon.locate(id)); @@ -24,10 +24,7 @@ public static boolean isIn(TagKey tag, Enchantment enchantment) { return false; } Optional> registryEntry = Registries.ENCHANTMENT.getEntry(optionalKey.get()); - if (registryEntry.isEmpty()) { - return false; - } - return Registries.ENCHANTMENT.getOrCreateEntryList(tag).contains(registryEntry.get()); + return registryEntry.filter(enchantmentReference -> Registries.ENCHANTMENT.getOrCreateEntryList(tag).contains(enchantmentReference)).isPresent(); } } diff --git a/src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json b/src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json new file mode 100644 index 0000000000..f72d209df7 --- /dev/null +++ b/src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json @@ -0,0 +1,3 @@ +{ + "values": [] +} \ No newline at end of file From 603a054c4e1483d59af34aefa3dc6801db0df3c8 Mon Sep 17 00:00:00 2001 From: Shibva <38770780+Shibva@users.noreply.github.com> Date: Sun, 22 Feb 2026 01:28:46 -0500 Subject: [PATCH 3/5] Blacklist-egge Time II; Prechanting Boogaloo - Did the same thing but with items now, only difference it only for the copying while the applying still works if its on the central item - The purpose of this is to restrict items that may come pre-enchanted if a modpack developer decides to restrict them (I figured id do this too while I was at it) - Copied and retooled the `isIn()` method in `SpectrumEnchantmentTags` for `SpectrumItemTags` (and it worked!) - Created a new blank tag named `enchanter_copying_and_applying_item_blacklisted`, empty by default - Tested it again EXTRA: Moved `Malum` Compat back under the connector restricted check due to differences throwing NoSuchField errors (thanks Farbicators of Create Porting Lib >:L ) --- .../blocks/enchanter/EnchanterBlockEntity.java | 4 +++- .../compat/SpectrumIntegrationPacks.java | 6 +++++- .../spectrum/registries/SpectrumItemTags.java | 17 ++++++++++++++++- ...r_copying_and_applying_item_blacklisted.json | 3 +++ 4 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json diff --git a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java index 4ee4cd47fd..cdea142c2d 100644 --- a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java +++ b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java @@ -338,7 +338,9 @@ public static void enchantCenterItem(@NotNull EnchanterBlockEntity enchanterBloc public static Map getHighestEnchantmentsInItemBowls(@NotNull EnchanterBlockEntity enchanterBlockEntity) { List bowlStacks = new ArrayList<>(); for (int i = 0; i < 8; i++) { - bowlStacks.add(enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i)); + if (!SpectrumItemTags.isIn(SpectrumItemTags.ENCHANTER_ITEM_BLACKLIST, enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i).getItem())) { + bowlStacks.add(enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i)); + } } return SpectrumEnchantmentHelper.collectHighestEnchantments(bowlStacks, SpectrumEnchantmentTags.ENCHANTER_BLACKLIST); diff --git a/src/main/java/de/dafuqs/spectrum/compat/SpectrumIntegrationPacks.java b/src/main/java/de/dafuqs/spectrum/compat/SpectrumIntegrationPacks.java index ba86f6e61d..8c31193d27 100644 --- a/src/main/java/de/dafuqs/spectrum/compat/SpectrumIntegrationPacks.java +++ b/src/main/java/de/dafuqs/spectrum/compat/SpectrumIntegrationPacks.java @@ -63,14 +63,18 @@ public static void register() { registerIntegrationPack(CREATE_ID, () -> new CreateCompat()); registerIntegrationPack(FARMERSDELIGHT_ID, () -> new FDCompat()); registerIntegrationPack(GOBBER_ID, () -> new GobberCompat()); - registerIntegrationPack(MALUM_ID, () -> new MalumCompat()); registerIntegrationPack(NEEPMEAT_ID, () -> new NEEPMeatCompat()); if (!CONNECTOR_LOADED) { // Traveler's Backpack for Forge crashes due to Fabric lacking Fluid#getFluidType (a Forge method) // This cannot be reasonably worked around AFAIK // ~unilock, 2025 + + //Malum for Fabric uses Create Porter Lib, Atemps to register enchantments though it create NoSuchField errors + // Needs replacement or hacky workaround + // ~Shibva, 2026 registerIntegrationPack(TRAVELERS_BACKPACK_ID, () -> new TravelersBackpackCompat()); + registerIntegrationPack(MALUM_ID, () -> new MalumCompat()); } for (ModIntegrationPack container : INTEGRATION_PACKS.values()) { diff --git a/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java b/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java index 6454fdea33..b330101627 100644 --- a/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java +++ b/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java @@ -1,11 +1,15 @@ package de.dafuqs.spectrum.registries; import de.dafuqs.spectrum.*; +import net.minecraft.enchantment.*; import net.minecraft.item.*; import net.minecraft.registry.*; +import net.minecraft.registry.entry.*; import net.minecraft.registry.tag.*; import net.minecraft.util.*; +import java.util.*; + public class SpectrumItemTags { // "c" namespace @@ -32,7 +36,9 @@ public class SpectrumItemTags { public static final TagKey TAG_FILTERING_ITEMS = of("tag_filtering_items"); public static final TagKey WEEPING_GALA_LOGS = of("weeping_gala_logs"); public static final TagKey PLAYER_ATTRIBUTED_PLACEMENT = of("player_attributed_placement"); - + + public static final TagKey ENCHANTER_ITEM_BLACKLIST = of("enchanter_copying_and_applying_item_blacklisted"); + private static TagKey of(String id) { return TagKey.of(RegistryKeys.ITEM, SpectrumCommon.locate(id)); } @@ -41,4 +47,13 @@ private static TagKey common(String id) { return TagKey.of(RegistryKeys.ITEM, new Identifier("c", id)); } + public static boolean isIn(TagKey tag, Item item) { + Optional> optionalKey = Registries.ITEM.getKey(item); + if (optionalKey.isEmpty()) { + return false; + } + Optional> registryEntry = Registries.ITEM.getEntry(optionalKey.get()); + return registryEntry.filter(itemReference -> Registries.ITEM.getOrCreateEntryList(tag).contains(itemReference)).isPresent(); + } + } diff --git a/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json b/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json new file mode 100644 index 0000000000..6bcb7251b6 --- /dev/null +++ b/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json @@ -0,0 +1,3 @@ +{ + "values": [ "minecraft:diamond_sword"] +} \ No newline at end of file From d3d067b610c61363f063f794a78740e231069239 Mon Sep 17 00:00:00 2001 From: Shibva <38770780+Shibva@users.noreply.github.com> Date: Sun, 22 Feb 2026 01:29:40 -0500 Subject: [PATCH 4/5] forgot to remove the test item from the tag, whoopsie --- .../items/enchanter_copying_and_applying_item_blacklisted.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json b/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json index 6bcb7251b6..f72d209df7 100644 --- a/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json +++ b/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json @@ -1,3 +1,3 @@ { - "values": [ "minecraft:diamond_sword"] + "values": [] } \ No newline at end of file From 5694710b3cdedb9111ff182df2391e584c3be828 Mon Sep 17 00:00:00 2001 From: DaFuqs Date: Sun, 22 Feb 2026 19:29:13 +0100 Subject: [PATCH 5/5] tweaks --- .../enchanter/EnchanterBlockEntity.java | 10 ++++--- .../helpers/SpectrumEnchantmentHelper.java | 26 ++----------------- .../registries/SpectrumEnchantmentTags.java | 3 +-- .../spectrum/registries/SpectrumItemTags.java | 16 +----------- ...n => ignored_by_enchanter_enchanting.json} | 0 ...anter_enchantment_source_blacklisted.json} | 0 6 files changed, 11 insertions(+), 44 deletions(-) rename src/main/resources/data/spectrum/tags/enchantment/{enchanter_copying_and_applying_blacklisted.json => ignored_by_enchanter_enchanting.json} (100%) rename src/main/resources/data/spectrum/tags/items/{enchanter_copying_and_applying_item_blacklisted.json => enchanter_enchantment_source_blacklisted.json} (100%) diff --git a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java index cdea142c2d..7f0ac888eb 100644 --- a/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java +++ b/src/main/java/de/dafuqs/spectrum/blocks/enchanter/EnchanterBlockEntity.java @@ -243,6 +243,9 @@ public static boolean isValidCenterEnchantingSetup(@NotNull EnchanterBlockEntity Map currentEnchantedBookEnchantments = EnchantmentHelper.get(virtualSlotStack); for (Enchantment enchantment : currentEnchantedBookEnchantments.keySet()) { if ((isEnchantableBookInCenter || enchantment.isAcceptableItem(centerStack)) && (!existingEnchantments.containsKey(enchantment) || existingEnchantments.get(enchantment) < currentEnchantedBookEnchantments.get(enchantment))) { + if(SpectrumEnchantmentTags.isIn(SpectrumEnchantmentTags.IGNORED_BY_ENCHANTER_ENCHANTING, enchantment)) { + continue; + } if (enchanterBlockEntity.canOwnerApplyConflictingEnchantments) { enchantedBookWithAdditionalEnchantmentsFound = true; break; @@ -338,12 +341,13 @@ public static void enchantCenterItem(@NotNull EnchanterBlockEntity enchanterBloc public static Map getHighestEnchantmentsInItemBowls(@NotNull EnchanterBlockEntity enchanterBlockEntity) { List bowlStacks = new ArrayList<>(); for (int i = 0; i < 8; i++) { - if (!SpectrumItemTags.isIn(SpectrumItemTags.ENCHANTER_ITEM_BLACKLIST, enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i).getItem())) { - bowlStacks.add(enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i)); + ItemStack bowlStack = enchanterBlockEntity.virtualInventoryIncludingBowlStacks.getStack(2 + i); + if (!bowlStack.isIn(SpectrumItemTags.ENCHANTER_ENCHANTMENT_SOURCE_BLACKLISTED)) { + bowlStacks.add(bowlStack); } } - return SpectrumEnchantmentHelper.collectHighestEnchantments(bowlStacks, SpectrumEnchantmentTags.ENCHANTER_BLACKLIST); + return SpectrumEnchantmentHelper.collectHighestEnchantments(bowlStacks, SpectrumEnchantmentTags.IGNORED_BY_ENCHANTER_ENCHANTING); } public static int getRequiredExperienceToEnchantCenterItem(@NotNull EnchanterBlockEntity enchanterBlockEntity) { diff --git a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java index 53ce1c0548..a721b2c5f7 100644 --- a/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java +++ b/src/main/java/de/dafuqs/spectrum/helpers/SpectrumEnchantmentHelper.java @@ -143,14 +143,14 @@ public static boolean hasEnchantmentThatConflictsWith(ItemStack itemStack, Encha } //This instance of collectHighestEnchantments is to enable the use of an optional filter - public static Map collectHighestEnchantments(List itemStacks, TagKey blacklist) { + public static Map collectHighestEnchantments(List itemStacks, @Nullable TagKey ignoreList) { Map enchantmentLevelMap = new LinkedHashMap<>(); for (ItemStack itemStack : itemStacks) { Map itemStackEnchantments = EnchantmentHelper.get(itemStack); for (Enchantment enchantment : itemStackEnchantments.keySet()) { int level = itemStackEnchantments.get(enchantment); - if (SpectrumEnchantmentTags.isIn(blacklist, enchantment)) { + if (ignoreList != null && SpectrumEnchantmentTags.isIn(ignoreList, enchantment)) { continue; } @@ -168,28 +168,6 @@ public static Map collectHighestEnchantments(List collectHighestEnchantments(List itemStacks) { - Map enchantmentLevelMap = new LinkedHashMap<>(); - for (ItemStack itemStack : itemStacks) { - Map itemStackEnchantments = EnchantmentHelper.get(itemStack); - for (Enchantment enchantment : itemStackEnchantments.keySet()) { - int level = itemStackEnchantments.get(enchantment); - - if (enchantmentLevelMap.containsKey(enchantment)) { - int storedLevel = enchantmentLevelMap.get(enchantment); - if (level > storedLevel) { - enchantmentLevelMap.put(enchantment, level); - } - } else { - enchantmentLevelMap.put(enchantment, level); - } - } - } - - return enchantmentLevelMap; - } - public static boolean canCombineAny(Map existingEnchantments, Map newEnchantments) { if (existingEnchantments.isEmpty()) { return true; diff --git a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java index 2d3abf9216..3cd90d42fe 100644 --- a/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java +++ b/src/main/java/de/dafuqs/spectrum/registries/SpectrumEnchantmentTags.java @@ -11,8 +11,7 @@ public class SpectrumEnchantmentTags { public static final TagKey SPECTRUM_ENCHANTMENT = of("enchantments"); - - public static final TagKey ENCHANTER_BLACKLIST = of("enchanter_copying_and_applying_blacklisted"); + public static final TagKey IGNORED_BY_ENCHANTER_ENCHANTING = of("ignored_by_enchanter_enchanting"); private static TagKey of(String id) { return TagKey.of(RegistryKeys.ENCHANTMENT, SpectrumCommon.locate(id)); diff --git a/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java b/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java index b330101627..93510f36ba 100644 --- a/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java +++ b/src/main/java/de/dafuqs/spectrum/registries/SpectrumItemTags.java @@ -1,15 +1,11 @@ package de.dafuqs.spectrum.registries; import de.dafuqs.spectrum.*; -import net.minecraft.enchantment.*; import net.minecraft.item.*; import net.minecraft.registry.*; -import net.minecraft.registry.entry.*; import net.minecraft.registry.tag.*; import net.minecraft.util.*; -import java.util.*; - public class SpectrumItemTags { // "c" namespace @@ -36,8 +32,7 @@ public class SpectrumItemTags { public static final TagKey TAG_FILTERING_ITEMS = of("tag_filtering_items"); public static final TagKey WEEPING_GALA_LOGS = of("weeping_gala_logs"); public static final TagKey PLAYER_ATTRIBUTED_PLACEMENT = of("player_attributed_placement"); - - public static final TagKey ENCHANTER_ITEM_BLACKLIST = of("enchanter_copying_and_applying_item_blacklisted"); + public static final TagKey ENCHANTER_ENCHANTMENT_SOURCE_BLACKLISTED = of("enchanter_enchantment_source_blacklisted"); private static TagKey of(String id) { return TagKey.of(RegistryKeys.ITEM, SpectrumCommon.locate(id)); @@ -47,13 +42,4 @@ private static TagKey common(String id) { return TagKey.of(RegistryKeys.ITEM, new Identifier("c", id)); } - public static boolean isIn(TagKey tag, Item item) { - Optional> optionalKey = Registries.ITEM.getKey(item); - if (optionalKey.isEmpty()) { - return false; - } - Optional> registryEntry = Registries.ITEM.getEntry(optionalKey.get()); - return registryEntry.filter(itemReference -> Registries.ITEM.getOrCreateEntryList(tag).contains(itemReference)).isPresent(); - } - } diff --git a/src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json b/src/main/resources/data/spectrum/tags/enchantment/ignored_by_enchanter_enchanting.json similarity index 100% rename from src/main/resources/data/spectrum/tags/enchantment/enchanter_copying_and_applying_blacklisted.json rename to src/main/resources/data/spectrum/tags/enchantment/ignored_by_enchanter_enchanting.json diff --git a/src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json b/src/main/resources/data/spectrum/tags/items/enchanter_enchantment_source_blacklisted.json similarity index 100% rename from src/main/resources/data/spectrum/tags/items/enchanter_copying_and_applying_item_blacklisted.json rename to src/main/resources/data/spectrum/tags/items/enchanter_enchantment_source_blacklisted.json