diff --git a/src/main/java/org/violetmoon/quark/mixin/mixins/CreativeModeTabsMixin.java b/src/main/java/org/violetmoon/quark/mixin/mixins/CreativeModeTabsMixin.java new file mode 100644 index 0000000000..e94f3ae0c2 --- /dev/null +++ b/src/main/java/org/violetmoon/quark/mixin/mixins/CreativeModeTabsMixin.java @@ -0,0 +1,25 @@ +package org.violetmoon.quark.mixin.mixins; + +import java.util.stream.Stream; + +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; +import net.minecraft.world.item.CreativeModeTabs; +import net.minecraft.world.item.enchantment.Enchantment; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.violetmoon.quark.content.experimental.module.EnchantmentsBegoneModule; + +@Mixin(CreativeModeTabs.class) +public class CreativeModeTabsMixin { + + @ModifyExpressionValue(method = "generateEnchantmentBookTypesOnlyMaxLevel", at = @At(value = "INVOKE", target = "Ljava/util/stream/Stream;filter(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;", ordinal = 0)) + private static Stream quark$filterEnchantments(Stream in) { + return in.filter(ench -> !EnchantmentsBegoneModule.shouldBegone(ench)); + } + + @ModifyExpressionValue(method = "generateEnchantmentBookTypesAllLevels", at = @At(value = "INVOKE", target = "Ljava/util/stream/Stream;filter(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;", ordinal = 0)) + private static Stream quark$filterEnchantments2(Stream in) { + return in.filter(ench -> !EnchantmentsBegoneModule.shouldBegone(ench)); + } + +} diff --git a/src/main/java/org/violetmoon/quark/mixin/mixins/EnchantedBookItemMixin.java b/src/main/java/org/violetmoon/quark/mixin/mixins/EnchantedBookItemMixin.java deleted file mode 100644 index d3b1a5cd97..0000000000 --- a/src/main/java/org/violetmoon/quark/mixin/mixins/EnchantedBookItemMixin.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.violetmoon.quark.mixin.mixins; - -import net.minecraft.world.item.EnchantedBookItem; - -import org.spongepowered.asm.mixin.Mixin; - -@Mixin(EnchantedBookItem.class) -public class EnchantedBookItemMixin { - - //TODO 1.20 -// @Inject(method = "fillItemCategory", at = @At("RETURN")) -// private void canApply(CreativeModeTab tab, NonNullList stacks, CallbackInfo ci) { -// EnchantmentsBegoneModule.begoneItems(stacks); -// } - -} diff --git a/src/main/resources/quark.mixins.json b/src/main/resources/quark.mixins.json index 4b06a9e9c1..aa234bfc17 100644 --- a/src/main/resources/quark.mixins.json +++ b/src/main/resources/quark.mixins.json @@ -20,13 +20,13 @@ "BoatMixin", "CeilingHangingSignBlockMixin", "ClimateParameterPointMixin", + "CreativeModeTabsMixin", "CrossbowMultishotMixin", "DamageEnchantmentMixin", "DamageSourcesMixin", "DiggerItemMixin", "ElytraItemMixin", "EnchantBookForEmeraldsMixin", - "EnchantedBookItemMixin", "EnchantmentHelperMixin", "EnchantmentMixin", "EnchantRandomlyFunctionMixin",