From a70826668904492b33083a1070fbb116614adc47 Mon Sep 17 00:00:00 2001 From: WakelessSloth56 Date: Wed, 26 Oct 2022 21:34:31 +0800 Subject: [PATCH] feat(game.widget): remove client widgets ClientEsh --- .../mod/client/ClientInitialization.java | 7 +- .../mod/client/config/AHClientConfig.java | 24 ---- .../client/event/AHClientEventHandler.java | 17 --- .../client/widget/AdvancedItemTooltip.java | 85 -------------- .../client/widget/DebugScreenInformation.java | 110 ------------------ 5 files changed, 1 insertion(+), 242 deletions(-) delete mode 100644 src/main/java/org/auioc/mcmod/arnicalib/mod/client/config/AHClientConfig.java delete mode 100644 src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/AdvancedItemTooltip.java delete mode 100644 src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/DebugScreenInformation.java diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/ClientInitialization.java b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/ClientInitialization.java index b6ebcd01..3f692fc8 100644 --- a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/ClientInitialization.java +++ b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/ClientInitialization.java @@ -1,14 +1,11 @@ package org.auioc.mcmod.arnicalib.mod.client; import org.auioc.mcmod.arnicalib.game.mod.ExtensionPointUtils; -import org.auioc.mcmod.arnicalib.mod.client.config.AHClientConfig; import org.auioc.mcmod.arnicalib.mod.client.event.AHClientEventHandler; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.fml.ModLoadingContext; -import net.minecraftforge.fml.config.ModConfig; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; @OnlyIn(Dist.CLIENT) @@ -25,9 +22,7 @@ public static void init() { private static final IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); private static final IEventBus forgeEventBus = MinecraftForge.EVENT_BUS; - private static void registerConfig() { - ModLoadingContext.get().registerConfig(ModConfig.Type.CLIENT, AHClientConfig.CONFIG); - } + private static void registerConfig() {} private static void modSetup() {} diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/config/AHClientConfig.java b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/config/AHClientConfig.java deleted file mode 100644 index 07c67015..00000000 --- a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/config/AHClientConfig.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.auioc.mcmod.arnicalib.mod.client.config; - -import org.auioc.mcmod.arnicalib.game.config.ConfigUtils; -import org.auioc.mcmod.arnicalib.mod.client.widget.AdvancedItemTooltip; -import org.auioc.mcmod.arnicalib.mod.client.widget.DebugScreenInformation; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.common.ForgeConfigSpec; - -@OnlyIn(Dist.CLIENT) -public class AHClientConfig { - - public static final ForgeConfigSpec CONFIG; - - static { - final ForgeConfigSpec.Builder b = new ForgeConfigSpec.Builder(); - - ConfigUtils.push(b, "advanced_item_tooltip", AdvancedItemTooltip.Config::build); - ConfigUtils.push(b, "debug_information", DebugScreenInformation.Config::build); - - CONFIG = b.build(); - } - -} diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/event/AHClientEventHandler.java b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/event/AHClientEventHandler.java index 0d4ff809..04d79b4f 100644 --- a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/event/AHClientEventHandler.java +++ b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/event/AHClientEventHandler.java @@ -1,34 +1,17 @@ package org.auioc.mcmod.arnicalib.mod.client.event; import org.auioc.mcmod.arnicalib.mod.client.command.AHClientCommands; -import org.auioc.mcmod.arnicalib.mod.client.widget.AdvancedItemTooltip; -import org.auioc.mcmod.arnicalib.mod.client.widget.DebugScreenInformation; -import net.minecraft.client.Minecraft; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.client.event.RegisterClientCommandsEvent; -import net.minecraftforge.client.event.RenderGameOverlayEvent; -import net.minecraftforge.event.entity.player.ItemTooltipEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; @OnlyIn(Dist.CLIENT) public final class AHClientEventHandler { - private static final Minecraft MC = Minecraft.getInstance(); - @SubscribeEvent public static void registerCommands(final RegisterClientCommandsEvent event) { AHClientCommands.register(event.getDispatcher()); } - @SubscribeEvent - public static void onItemTooltip(ItemTooltipEvent event) { - AdvancedItemTooltip.handle(event); - } - - @SubscribeEvent - public static void onRenderTextOverlay(final RenderGameOverlayEvent.Text event) { - if (MC.options.renderDebug) DebugScreenInformation.handle(event.getLeft(), event.getRight()); - } - } diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/AdvancedItemTooltip.java b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/AdvancedItemTooltip.java deleted file mode 100644 index 2c20ace3..00000000 --- a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/AdvancedItemTooltip.java +++ /dev/null @@ -1,85 +0,0 @@ -package org.auioc.mcmod.arnicalib.mod.client.widget; - -import org.auioc.mcmod.arnicalib.ArnicaLib; -import org.auioc.mcmod.arnicalib.game.chat.TextUtils; -import org.lwjgl.glfw.GLFW; -import com.mojang.blaze3d.platform.InputConstants; -import net.minecraft.ChatFormatting; -import net.minecraft.client.Minecraft; -import net.minecraft.nbt.NbtUtils; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.Style; -import net.minecraft.tags.TagKey; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.common.ForgeConfigSpec.BooleanValue; -import net.minecraftforge.event.entity.player.ItemTooltipEvent; - -@OnlyIn(Dist.CLIENT) -public class AdvancedItemTooltip { - - private static final Minecraft MC = Minecraft.getInstance(); - - public static void handle(final ItemTooltipEvent event) { - if (!Config.enabled.get()) return; - if (Config.onlyOnDebug.get() && !isDebugMode()) return; - if (Config.onlyOnShift.get() && !isShiftKeyDown()) return; - - ItemStack itemStack = event.getItemStack(); - if (itemStack.isEmpty()) return; - - var darkGary = Style.EMPTY.withColor(ChatFormatting.DARK_GRAY); - - if (itemStack.hasTag()) { - addLine( - event, - TextUtils.translatable(ArnicaLib.i18n("advanced_tooltip.nbt")) - .setStyle(darkGary) - .append( - TextUtils.empty() - .setStyle(Style.EMPTY.withColor(ChatFormatting.WHITE)) - .append(NbtUtils.toPrettyComponent(itemStack.getTag())) - ) - ); - } - - var tags = itemStack.getTags().toList(); - if (tags.size() > 0) { - addLine(event, TextUtils.translatable(ArnicaLib.i18n("advanced_tooltip.tag")).setStyle(darkGary)); - for (TagKey tag : tags) { - addLine(event, TextUtils.literal(" " + tag.location()).setStyle(darkGary)); - } - } - } - - private static void addLine(ItemTooltipEvent event, Component tooltip) { - event.getToolTip().add(tooltip); - } - - private static boolean isDebugMode() { - return MC.options.advancedItemTooltips; - } - - private static boolean isShiftKeyDown() { - return InputConstants.isKeyDown(MC.getWindow().getWindow(), GLFW.GLFW_KEY_LEFT_SHIFT) || - InputConstants.isKeyDown(MC.getWindow().getWindow(), GLFW.GLFW_KEY_RIGHT_SHIFT); - } - - public static class Config { - - public static BooleanValue enabled; - public static BooleanValue onlyOnDebug; - public static BooleanValue onlyOnShift; - - public static void build(final ForgeConfigSpec.Builder b) { - enabled = b.define("enabled", true); - onlyOnDebug = b.define("only_on_debug", true); - onlyOnShift = b.define("only_on_shift", false); - } - - } - -} diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/DebugScreenInformation.java b/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/DebugScreenInformation.java deleted file mode 100644 index e6e061e3..00000000 --- a/src/main/java/org/auioc/mcmod/arnicalib/mod/client/widget/DebugScreenInformation.java +++ /dev/null @@ -1,110 +0,0 @@ -package org.auioc.mcmod.arnicalib.mod.client.widget; - -import java.util.ArrayList; -import org.auioc.mcmod.arnicalib.base.collection.ListUtils; -import org.auioc.mcmod.arnicalib.game.world.position.SpeedUnit; -import net.minecraft.client.Minecraft; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.common.ForgeConfigSpec.BooleanValue; -import net.minecraftforge.common.ForgeConfigSpec.EnumValue; - -@OnlyIn(Dist.CLIENT) -public class DebugScreenInformation { - - private static final Minecraft MC = Minecraft.getInstance(); - - public static void handle(ArrayList gameInfo, ArrayList systemInfo) { - if (!MC.options.reducedDebugInfo) { - handleGameInformation(gameInfo); - handleSystemInformation(systemInfo); - } - } - - private static void handleGameInformation(ArrayList info) { - if (Config.enabledTweaks.get()) { - if (Config.hideLeftSide.get() && _clear(info)) return; - } - if (Config.enabledAddons.get()) { - if (Config.speedmeterEnabled.get()) _addSpeedmeter(info); - } - } - - private static void handleSystemInformation(ArrayList info) { - if (Config.enabledTweaks.get()) { - if (Config.hideRightSide.get() && _clear(info)) return; - if (Config.hideSystemInformation.get()) _removeSystemInfo(info); - } - } - - - private static boolean _clear(ArrayList info) { - info.clear(); - return true; - } - - private static void _addSpeedmeter(ArrayList info) { - var unit = Config.speedmeterUnit.get(); - var symbol = Config.speedmeterShowUnitSymbol.get() ? String.format(" (%s)", unit.getSymbol()) : ""; - - var entity = MC.cameraEntity; - double vX = unit.convertFrom(entity.getX() - entity.xOld); - double vY = unit.convertFrom(entity.getY() - entity.yOld); - double vZ = unit.convertFrom(entity.getZ() - entity.zOld); - double vA = Math.sqrt(vX * vX + vY * vY + vZ * vZ); - - var velocity = String.format("Velocity: %.3f / %.3f / %.3f%s", vX, vY, vZ, symbol); - var speed = String.format("Speed: %.3f%s", vA, symbol); - - int at = ListUtils.indexOf(info, (l) -> l.startsWith("XYZ")) + 1; - ListUtils.add(info, at, speed); - ListUtils.add(info, at, velocity); - } - - private static void _removeSystemInfo(ArrayList info) { - int targetedIndex = ListUtils.indexOf(info, (l) -> l.startsWith("§nTargeted")); - int toIndex = targetedIndex != -1 ? targetedIndex : info.size(); - info.subList(0, toIndex).clear(); - } - - - public static class Config { - - public static BooleanValue enabledAddons; - public static BooleanValue speedmeterEnabled; - public static EnumValue speedmeterUnit; - public static BooleanValue speedmeterShowUnitSymbol; - - public static BooleanValue enabledTweaks; - public static BooleanValue hideLeftSide; - public static BooleanValue hideRightSide; - public static BooleanValue hideSystemInformation; - - public static void build(final ForgeConfigSpec.Builder b) { - { - b.push("addons"); - enabledAddons = b.define("enabled", true); - { - b.push("speedmeter"); - speedmeterEnabled = b.define("enabled", true); - speedmeterUnit = b.defineEnum("unit", SpeedUnit.METRES_PER_SECOND); - speedmeterShowUnitSymbol = b.define("show_unit_symbol", true); - b.pop(); - } - b.pop(); - } - - { - b.push("tweaks"); - enabledTweaks = b.define("enabled", false); - hideLeftSide = b.define("hide_left_side", false); - hideRightSide = b.define("hide_right_side", false); - hideSystemInformation = b.define("hide_system_information", false); - b.pop(); - } - } - - } - -}