1
mirror of https://github.com/Shiewk/Widgets.git synced 2026-04-28 11:34:17 +02:00

Use HudLayerRegistrationCallback instead of deprecated HudRenderCallback

This commit is contained in:
Shy
2025-05-26 11:37:20 +02:00
parent 5003748880
commit 34b5dc06ee
2 changed files with 18 additions and 5 deletions
@@ -2,28 +2,41 @@ package de.shiewk.widgets.client;
import de.shiewk.widgets.ModWidget; import de.shiewk.widgets.ModWidget;
import de.shiewk.widgets.WidgetSettings; import de.shiewk.widgets.WidgetSettings;
import de.shiewk.widgets.WidgetsMod;
import de.shiewk.widgets.client.screen.EditWidgetPositionsScreen; import de.shiewk.widgets.client.screen.EditWidgetPositionsScreen;
import de.shiewk.widgets.client.screen.WidgetConfigScreen; import de.shiewk.widgets.client.screen.WidgetConfigScreen;
import it.unimi.dsi.fastutil.objects.ObjectArrayList; import it.unimi.dsi.fastutil.objects.ObjectArrayList;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback; import net.fabricmc.fabric.api.client.rendering.v1.HudLayerRegistrationCallback;
import net.fabricmc.fabric.api.client.rendering.v1.IdentifiedLayer;
import net.fabricmc.fabric.api.client.rendering.v1.LayeredDrawerWrapper;
import net.minecraft.client.MinecraftClient; import net.minecraft.client.MinecraftClient;
import net.minecraft.client.font.TextRenderer; import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext; import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.render.RenderTickCounter; import net.minecraft.client.render.RenderTickCounter;
import net.minecraft.util.Identifier;
import net.minecraft.util.Util; import net.minecraft.util.Util;
import net.minecraft.util.profiler.Profiler; import net.minecraft.util.profiler.Profiler;
import net.minecraft.util.profiler.Profilers; import net.minecraft.util.profiler.Profilers;
import static de.shiewk.widgets.WidgetUtils.translateToScreen; import static de.shiewk.widgets.WidgetUtils.translateToScreen;
public class WidgetRenderer implements HudRenderCallback, ClientTickEvents.StartTick, ClientLifecycleEvents.ClientStarted { public class WidgetRenderer implements HudLayerRegistrationCallback, ClientTickEvents.StartTick, ClientLifecycleEvents.ClientStarted {
public static final Identifier LAYER_ID = Identifier.of(WidgetsMod.MOD_ID, "widgets-hud-layer");
private static MinecraftClient client; private static MinecraftClient client;
@Override @Override
public void onHudRender(DrawContext drawContext, RenderTickCounter tickCounter) { public void register(LayeredDrawerWrapper layeredDrawer) {
layeredDrawer.addLayer(IdentifiedLayer.of(
LAYER_ID,
this::renderWidgets
));
}
public void renderWidgets(DrawContext drawContext, RenderTickCounter tickCounter) {
if (client.options.hudHidden) return; if (client.options.hudHidden) return;
if (client.currentScreen instanceof EditWidgetPositionsScreen) return; if (client.currentScreen instanceof EditWidgetPositionsScreen) return;
final Profiler profiler = Profilers.get(); final Profiler profiler = Profilers.get();
@@ -10,7 +10,7 @@ import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientEntityEvents;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback; import net.fabricmc.fabric.api.client.rendering.v1.HudLayerRegistrationCallback;
import net.minecraft.client.MinecraftClient; import net.minecraft.client.MinecraftClient;
import net.minecraft.client.option.KeyBinding; import net.minecraft.client.option.KeyBinding;
import net.minecraft.client.util.InputUtil; import net.minecraft.client.util.InputUtil;
@@ -24,7 +24,7 @@ public class WidgetsModClient implements ClientModInitializer {
@Override @Override
public void onInitializeClient() { public void onInitializeClient() {
HudRenderCallback.EVENT.register(new WidgetRenderer()); HudLayerRegistrationCallback.EVENT.register(new WidgetRenderer());
ClientTickEvents.START_CLIENT_TICK.register(new WidgetRenderer()); ClientTickEvents.START_CLIENT_TICK.register(new WidgetRenderer());
ClientLifecycleEvents.CLIENT_STARTED.register(new WidgetRenderer()); ClientLifecycleEvents.CLIENT_STARTED.register(new WidgetRenderer());