diff --git a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/CheckBoxElement.java b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/CheckBoxElement.java index 121973488..9b74db08a 100644 --- a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/CheckBoxElement.java +++ b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/CheckBoxElement.java @@ -70,7 +70,7 @@ public class CheckBoxElement extends ElementBase { sprite = checkBoxSprite.ticked(); } drawSprite(drawContext, gui, sprite, getX(), getY() ); - drawText(drawContext, gui, label, getX() + getWidth() + 5, ((getY() + getHeight() / 2) - (gui.getTextRenderer().fontHeight / 2)), 0xFFFFFFFF); + drawText(drawContext, gui, label, getX() + 18, ((getY() + getHeight() / 2) - (gui.getTextRenderer().fontHeight / 2)), 0xFFFFFFFF); } } diff --git a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/ElementBase.java b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/ElementBase.java index 5035e4562..55f0a667b 100644 --- a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/ElementBase.java +++ b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/ElementBase.java @@ -26,6 +26,7 @@ package reborncore.client.gui.builder.slot.elements; import net.minecraft.client.gui.DrawContext; import net.minecraft.client.gui.screen.Screen; +import net.minecraft.client.texture.Sprite; import net.minecraft.client.util.SpriteIdentifier; import net.minecraft.text.Text; import reborncore.client.gui.builder.GuiBase; @@ -59,11 +60,11 @@ public class ElementBase { } public int getWidth() { - return sprite.getSprite().getContents().getWidth(); + return getGuiSprite(sprite).getContents().getWidth(); } public int getHeight() { - return sprite.getSprite().getContents().getHeight(); + return getGuiSprite(sprite).getContents().getHeight(); } public boolean onClick(GuiBase gui, double mouseX, double mouseY) { @@ -92,8 +93,17 @@ public class ElementBase { drawContext.drawText(gui.getTextRenderer(), text, x, y, color, false); } - public void drawSprite(DrawContext drawContext, GuiBase gui, SpriteIdentifier sprite, int x, int y) { - drawContext.drawSprite(x + gui.getGuiLeft(), y + gui.getGuiTop(), 0, getWidth(), getHeight(), sprite.getSprite()); + public void drawSprite(DrawContext drawContext, GuiBase gui, SpriteIdentifier spriteIdentifier, int x, int y) { + final Sprite sprite = getGuiSprite(spriteIdentifier); + + drawContext.drawSprite( + x + gui.getGuiLeft(), + y + gui.getGuiTop(), + 0, + sprite.getContents().getWidth(), + sprite.getContents().getHeight(), + sprite + ); } public void drawDefaultBackground(DrawContext drawContext, Screen gui, int x, int y, int width, int height) { @@ -102,4 +112,8 @@ public class ElementBase { drawContext.drawTexture(GuiBuilder.defaultTextureSheet, x, y + height / 2, 0, 150 - height / 2, width / 2, height / 2); drawContext.drawTexture(GuiBuilder.defaultTextureSheet, x + width / 2, y + height / 2, 150 - width / 2, 150 - height / 2, width / 2, height / 2); } + + private Sprite getGuiSprite(SpriteIdentifier spriteIdentifier) { + return GuiSpriteAtlasHolder.INSTANCE.getSprite(sprite.getTextureId()); + } } diff --git a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/GuiSpriteAtlasHolder.java b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/GuiSpriteAtlasHolder.java index 017808b22..b5c3f4598 100644 --- a/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/GuiSpriteAtlasHolder.java +++ b/RebornCore/src/client/java/reborncore/client/gui/builder/slot/elements/GuiSpriteAtlasHolder.java @@ -28,10 +28,8 @@ import net.minecraft.client.texture.Sprite; import net.minecraft.client.texture.SpriteAtlasHolder; import net.minecraft.client.texture.TextureManager; import net.minecraft.util.Identifier; -import org.jetbrains.annotations.Nullable; public class GuiSpriteAtlasHolder extends SpriteAtlasHolder { - @Nullable public static GuiSpriteAtlasHolder INSTANCE; public static final Identifier ATLAS_ID = new Identifier("reborncore", "textures/atlas/gui.png"); diff --git a/RebornCore/src/client/java/reborncore/client/mixin/MixinMinecraftClient.java b/RebornCore/src/client/java/reborncore/client/mixin/MixinMinecraftClient.java index 0537d468b..5b3fa658d 100644 --- a/RebornCore/src/client/java/reborncore/client/mixin/MixinMinecraftClient.java +++ b/RebornCore/src/client/java/reborncore/client/mixin/MixinMinecraftClient.java @@ -48,7 +48,7 @@ public class MixinMinecraftClient { @Inject(method = "", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/texture/PaintingManager;(Lnet/minecraft/client/texture/TextureManager;)V")) private void init(RunArgs args, CallbackInfo ci) { GuiSpriteAtlasHolder.INSTANCE = new GuiSpriteAtlasHolder(this.textureManager); - this.resourceManager.registerReloader(GuiSpriteAtlasHolder.INSTANCE ); + this.resourceManager.registerReloader(GuiSpriteAtlasHolder.INSTANCE); } @Inject(method = "close", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/texture/PaintingManager;close()V"))