diff options
7 files changed, 60 insertions, 57 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java index 395027bc..1de2617b 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java @@ -5,15 +5,14 @@ import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import me.xmrvizzy.skyblocker.utils.ItemUtils; import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.client.font.TextRenderer; -import net.minecraft.client.render.BufferBuilder; -import net.minecraft.client.render.Tessellator; +import net.minecraft.client.gui.DrawableHelper; import net.minecraft.client.render.item.ItemRenderer; +import net.minecraft.client.util.math.MatrixStack; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; import net.minecraft.util.math.MathHelper; import org.jetbrains.annotations.Nullable; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @@ -22,11 +21,8 @@ import java.util.regex.Pattern; @Mixin(ItemRenderer.class) public abstract class ItemRendererMixin { - - @Shadow protected abstract void renderGuiQuad(BufferBuilder buffer, int x, int y, int width, int height, int red, int green, int blue, int alpha); - - @Inject(method = "renderGuiItemOverlay(Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/item/ItemStack;IILjava/lang/String;)V", at = @At("HEAD")) - public void renderItemBar(TextRenderer renderer, ItemStack stack, int x, int y, @Nullable String countLabel, CallbackInfo ci) { + @Inject(method = "renderGuiItemOverlay(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/item/ItemStack;IILjava/lang/String;)V", at = @At("HEAD")) + public void renderItemBar(MatrixStack matrices, TextRenderer renderer, ItemStack stack, int x, int y, @Nullable String countLabel, CallbackInfo ci) { if (Utils.isOnSkyblock && SkyblockerConfig.get().locations.dwarvenMines.enableDrillFuel) { if (!stack.isEmpty()) { @@ -47,19 +43,17 @@ public abstract class ItemRendererMixin { } RenderSystem.disableDepthTest(); - RenderSystem.disableTexture(); +// RenderSystem.disableTexture(); // RenderSystem.disableAlphaTest(); RenderSystem.disableBlend(); - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder buffer = tessellator.getBuffer(); float hue = Math.max(0.0F, 1.0F - (max - current) / max); int width = Math.round(current / max * 13.0F); int rgb = MathHelper.hsvToRgb(hue / 3.0F, 1.0F, 1.0F); - this.renderGuiQuad(buffer, x + 2, y + 13, 13, 2, 0,0,0,255); - this.renderGuiQuad(buffer, x + 2, y + 13, width, 1, rgb >> 16 & 255, rgb >> 8 & 255, rgb & 255, 255); + DrawableHelper.fill(matrices, x + 2, y + 13, x + 15, y + 15, 0xFF000000); + DrawableHelper.fill(matrices, x + 2, y + 13, x + 2 + width, y + 14, rgb); RenderSystem.enableBlend(); // RenderSystem.enableAlphaTest(); - RenderSystem.enableTexture(); +// RenderSystem.enableTexture(); RenderSystem.enableDepthTest(); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java index de4a25b6..29b8dd79 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java @@ -68,7 +68,7 @@ public class BackpackPreview extends DrawableHelper { } public static void loadStorage() { - assert(save_dir != null); + assert (save_dir != null); for (int index = 0; index < STORAGE_SIZE; ++index) { storage[index] = null; dirty[index] = false; @@ -85,7 +85,7 @@ public class BackpackPreview extends DrawableHelper { } private static void saveStorage() { - assert(save_dir != null); + assert (save_dir != null); for (int index = 0; index < STORAGE_SIZE; ++index) { if (dirty[index]) { if (storage[index] != null) { @@ -121,7 +121,7 @@ public class BackpackPreview extends DrawableHelper { String title = screen.getTitle().getString(); int index = getStorageIndexFromTitle(title); if (index != -1) { - storage[index] = ((HandledScreen<?>)screen).getScreenHandler().slots.get(0).inventory; + storage[index] = ((HandledScreen<?>) screen).getScreenHandler().slots.get(0).inventory; dirty[index] = true; } } @@ -151,10 +151,11 @@ public class BackpackPreview extends DrawableHelper { for (int i = 9; i < storage[index].size(); ++i) { int itemX = x + (i - 9) % 9 * 18 + 8; int itemY = y + (i - 9) / 9 * 18 + 8; - itemRenderer.zOffset = 200.0F; - itemRenderer.renderInGui(storage[index].getStack(i), itemX, itemY); - itemRenderer.renderGuiItemOverlay(textRenderer, storage[index].getStack(i), itemX, itemY); - itemRenderer.zOffset = 0.0F; + matrices.push(); + matrices.translate(0, 0, 200); + itemRenderer.renderInGui(matrices, storage[index].getStack(i), itemX, itemY); + itemRenderer.renderGuiItemOverlay(matrices, textRenderer, storage[index].getStack(i), itemX, itemY); + matrices.pop(); } return true; @@ -189,34 +190,50 @@ class DummyInventory implements Inventory { stacks = new ArrayList<>(root.getInt("size") + 9); for (int i = 0; i < 9; ++i) stacks.add(ItemStack.EMPTY); root.getList("list", NbtCompound.COMPOUND_TYPE).forEach(item -> - stacks.add(ItemStack.fromNbt((NbtCompound)item)) + stacks.add(ItemStack.fromNbt((NbtCompound) item)) ); } @Override - public int size() { return stacks.size(); } + public int size() { + return stacks.size(); + } @Override - public boolean isEmpty() { return false; } + public boolean isEmpty() { + return false; + } @Override - public ItemStack getStack(int slot) { return stacks.get(slot); } + public ItemStack getStack(int slot) { + return stacks.get(slot); + } @Override - public ItemStack removeStack(int slot, int amount) { return null; } + public ItemStack removeStack(int slot, int amount) { + return null; + } @Override - public ItemStack removeStack(int slot) { return null; } + public ItemStack removeStack(int slot) { + return null; + } @Override - public void setStack(int slot, ItemStack stack) { stacks.set(slot, stack); } + public void setStack(int slot, ItemStack stack) { + stacks.set(slot, stack); + } @Override - public void markDirty() {} + public void markDirty() { + } @Override - public boolean canPlayerUse(PlayerEntity player) { return false; } + public boolean canPlayerUse(PlayerEntity player) { + return false; + } @Override - public void clear() {} + public void clear() { + } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java index 7dcb2b3b..2d0ba892 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java @@ -23,7 +23,7 @@ public class DwarvenHudConfigScreen extends Screen { super.render(matrices, mouseX, mouseY, delta); renderBackground(matrices); DwarvenHud.render(matrices, hudX, hudY, List.of(new DwarvenHud.Commission("Test Commission 1", "1%"), new DwarvenHud.Commission("Test Commission 2", "2%"))); - drawCenteredText(matrices, textRenderer, "Right Click To Reset Position", width / 2, height / 2, Color.GRAY.getRGB()); + drawCenteredTextWithShadow(matrices, textRenderer, "Right Click To Reset Position", width / 2, height / 2, Color.GRAY.getRGB()); } @Override diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ResultButtonWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ResultButtonWidget.java index 6d0d89e1..3d6409ef 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ResultButtonWidget.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ResultButtonWidget.java @@ -42,9 +42,9 @@ public class ResultButtonWidget extends ClickableWidget { // this.drawTexture(matrices, this.x, this.y, 29, 206, this.width, this.height); this.drawTexture(matrices, this.getX(), this.getY(), 29, 206, this.getWidth(), this.getHeight()); // client.getItemRenderer().renderInGui(this.itemStack, this.x + 4, this.y + 4); - client.getItemRenderer().renderInGui(this.itemStack, this.getX() + 4, this.getY() + 4); + client.getItemRenderer().renderInGui(matrices, this.itemStack, this.getX() + 4, this.getY() + 4); // client.getItemRenderer().renderGuiItemOverlay(client.textRenderer, itemStack, this.x + 4, this.y + 4); - client.getItemRenderer().renderGuiItemOverlay(client.textRenderer, itemStack, this.getX() + 4, this.getY() + 4); + client.getItemRenderer().renderGuiItemOverlay(matrices, client.textRenderer, itemStack, this.getX() + 4, this.getY() + 4); } public void renderTooltip(MatrixStack matrices, int mouseX, int mouseY) { diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java index f35e60b2..ef0f2d06 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java @@ -87,17 +87,17 @@ public class QuickNavButton extends ClickableWidget { if (!this.toggled) { if (this.index >= 6) // CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 6); - CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 6); + CLIENT.getItemRenderer().renderInGui(matrices, this.icon,this.getX() + 5, this.getY() + 6); else // CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 9); - CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 7); + CLIENT.getItemRenderer().renderInGui(matrices, this.icon,this.getX() + 5, this.getY() + 7); } else { if (this.index >= 6) // CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 9); - CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 9); + CLIENT.getItemRenderer().renderInGui(matrices, this.icon,this.getX() + 5, this.getY() + 9); else // CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 6); - CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 6); + CLIENT.getItemRenderer().renderInGui(matrices, this.icon,this.getX() + 5, this.getY() + 6); } RenderSystem.enableDepthTest(); } diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java index 0f2f3aef..1f8e2552 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java @@ -89,11 +89,9 @@ public class RenderUtils { public static void setup() { RenderSystem.enableBlend(); RenderSystem.defaultBlendFunc(); - RenderSystem.disableTexture(); } public static void cleanup() { RenderSystem.disableBlend(); - RenderSystem.enableTexture(); } }
\ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java index 651ef2bd..79ec18e9 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java @@ -19,26 +19,20 @@ package me.xmrvizzy.skyblocker.utils; */ -import java.lang.reflect.Field; - -import org.apache.commons.lang3.reflect.FieldUtils; - import com.mojang.blaze3d.systems.RenderSystem; - import net.minecraft.client.MinecraftClient; -import net.minecraft.client.render.Camera; -import net.minecraft.client.render.DiffuseLighting; -import net.minecraft.client.render.OverlayTexture; -import net.minecraft.client.render.Tessellator; -import net.minecraft.client.render.VertexConsumerProvider; -import net.minecraft.client.render.model.json.ModelTransformation; +import net.minecraft.client.font.TextRenderer; +import net.minecraft.client.render.*; +import net.minecraft.client.render.model.json.ModelTransformationMode; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.item.ItemStack; import net.minecraft.text.Text; -//import net.minecraft.util.math.Vec3f; import net.minecraft.util.math.RotationAxis; +import org.apache.commons.lang3.reflect.FieldUtils; import org.joml.Vector3f; +import java.lang.reflect.Field; + public class RenderUtilsLiving { private static final MinecraftClient mc = MinecraftClient.getInstance(); @@ -71,17 +65,17 @@ public class RenderUtilsLiving { if (fill) { int opacity = (int) (MinecraftClient.getInstance().options.getTextBackgroundOpacity(0.25F) * 255.0F) << 24; - mc.textRenderer.draw(text, -halfWidth, 0f, 553648127, false, matrices.peek().getPositionMatrix(), immediate, true, opacity, 0xf000f0); + mc.textRenderer.draw(text, -halfWidth, 0f, 553648127, false, matrices.peek().getPositionMatrix(), immediate, TextRenderer.TextLayerType.NORMAL, opacity, 0xf000f0); immediate.draw(); } else { matrices.push(); matrices.translate(1, 1, 0); - mc.textRenderer.draw(text.copyContentOnly(), -halfWidth, 0f, 0x202020, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); + mc.textRenderer.draw(text.copyContentOnly(), -halfWidth, 0f, 0x202020, false, matrices.peek().getPositionMatrix(), immediate, TextRenderer.TextLayerType.NORMAL, 0, 0xf000f0); immediate.draw(); matrices.pop(); } - mc.textRenderer.draw(text, -halfWidth, 0f, -1, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); + mc.textRenderer.draw(text, -halfWidth, 0f, -1, false, matrices.peek().getPositionMatrix(), immediate, TextRenderer.TextLayerType.NORMAL, 0, 0xf000f0); immediate.draw(); RenderSystem.disableBlend(); @@ -118,8 +112,8 @@ public class RenderUtilsLiving { mc.getBufferBuilders().getEntityVertexConsumers().draw(); - mc.getItemRenderer().renderItem(item, ModelTransformation.Mode.GUI, 0xF000F0, - OverlayTexture.DEFAULT_UV, matrices, mc.getBufferBuilders().getEntityVertexConsumers(), 0); + mc.getItemRenderer().renderItem(item, ModelTransformationMode.GUI, 0xF000F0, + OverlayTexture.DEFAULT_UV, matrices, mc.getBufferBuilders().getEntityVertexConsumers(), mc.world, 0); mc.getBufferBuilders().getEntityVertexConsumers().draw(); |