fix: Enchantment Description compatibility

This commit is contained in:
2025-09-02 23:53:53 +08:00
parent ea1d87e16d
commit b4e64f7f33
2 changed files with 11 additions and 4 deletions

View File

@@ -1,7 +1,6 @@
package dev.xkmc.l2core.events;
import com.mojang.datafixers.util.Either;
import dev.xkmc.l2core.init.L2Core;
import dev.xkmc.l2core.init.L2CoreConfig;
import dev.xkmc.l2core.init.L2LibReg;
import dev.xkmc.l2core.init.reg.ench.CustomDescEnchantment;
@@ -19,9 +18,9 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.enchantment.EnchantmentHelper;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.api.distmarker.OnlyIn;
import net.neoforged.bus.api.EventPriority;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.event.entity.player.ItemTooltipEvent;
import java.util.ArrayList;
@@ -29,13 +28,13 @@ import java.util.Collection;
import java.util.List;
import java.util.stream.Stream;
@EventBusSubscriber(value = Dist.CLIENT, modid = L2Core.MODID, bus = EventBusSubscriber.Bus.GAME)
public class ClientEventHandler {
public enum EnchDesc {
DISABLE, SHIFT_ONLY, ALWAYS
}
@OnlyIn(Dist.CLIENT)
@SubscribeEvent(priority = EventPriority.LOW)
public static void modifyItemTooltip(ItemTooltipEvent event) {
var config = L2CoreConfig.CLIENT.addEnchantmentDescription.get();

View File

@@ -3,13 +3,17 @@ package dev.xkmc.l2core.init;
import dev.xkmc.l2core.base.effects.EffectToClient;
import dev.xkmc.l2core.capability.conditionals.TokenToClient;
import dev.xkmc.l2core.capability.player.PlayerCapToClient;
import dev.xkmc.l2core.events.ClientEventHandler;
import dev.xkmc.l2core.init.reg.registrate.L2Registrate;
import dev.xkmc.l2core.serial.config.SyncPacket;
import dev.xkmc.l2serial.network.PacketHandler;
import dev.xkmc.l2serial.serialization.custom_handler.Handlers;
import net.minecraft.resources.ResourceLocation;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.fml.ModList;
import net.neoforged.fml.common.Mod;
import net.neoforged.neoforge.common.NeoForge;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -31,11 +35,15 @@ public class L2Core {
e -> e.create(SyncPacket.class, PLAY_TO_CLIENT)
);
public L2Core(IEventBus bus) {
public L2Core(IEventBus bus, Dist currentDist) {
L2LibReg.register();
L2CoreConfig.init();
Handlers.register();
REGISTRATE.addDataGenerator(L2TagGen.EFF_TAGS, L2TagGen::onEffectTagGen);
if (!ModList.get().isLoaded("enchdesc") && currentDist == Dist.CLIENT) {
NeoForge.EVENT_BUS.register(ClientEventHandler.class);
}
}
public static ResourceLocation loc(String id) {