package net.minecraft.client.gui.contextualbar; import com.mojang.blaze3d.platform.Window; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.DeltaTracker; import net.minecraft.client.gui.Font; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; @Environment(EnvType.CLIENT) public interface ContextualBarRenderer { int WIDTH = 182; int HEIGHT = 5; int MARGIN_BOTTOM = 24; ContextualBarRenderer EMPTY = new ContextualBarRenderer() { @Override public void renderBackground(GuiGraphics guiGraphics, DeltaTracker deltaTracker) { } @Override public void render(GuiGraphics guiGraphics, DeltaTracker deltaTracker) { } }; default int left(Window window) { return (window.getGuiScaledWidth() - 182) / 2; } default int top(Window window) { return window.getGuiScaledHeight() - 24 - 5; } void renderBackground(GuiGraphics guiGraphics, DeltaTracker deltaTracker); void render(GuiGraphics guiGraphics, DeltaTracker deltaTracker); static void renderExperienceLevel(GuiGraphics guiGraphics, Font font, int level) { Component component = Component.translatable("gui.experience.level", level); int i = (guiGraphics.guiWidth() - font.width(component)) / 2; int j = guiGraphics.guiHeight() - 24 - 9 - 2; guiGraphics.drawString(font, component, i + 1, j, -16777216, false); guiGraphics.drawString(font, component, i - 1, j, -16777216, false); guiGraphics.drawString(font, component, i, j + 1, -16777216, false); guiGraphics.drawString(font, component, i, j - 1, -16777216, false); guiGraphics.drawString(font, component, i, j, -8323296, false); } }