Skip to content

Commit 84cf99c

Browse files
committed
Port to Minecraft 1.20.
1 parent 2b22226 commit 84cf99c

20 files changed

Lines changed: 181 additions & 151 deletions

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,3 +118,4 @@
118118
- Fixed ignoring `HideFlags` in armor NBT ([#98](https://github.com/Queerbric/Inspecio/issues/98)).
119119
- Fixed messed up colors in shulker box previews ([#102](https://github.com/Queerbric/Inspecio/issues/102)).
120120
- Fixed unbounded hunger/saturation tooltips with auto-wrapping ([#105](https://github.com/Queerbric/Inspecio/issues/105)).
121+
- (1.20+) Added ability to see both sides of a sign in a tooltip by pressing the control key.

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
org.gradle.jvmargs=-Xmx1G
22

33
# Fabric properties
4-
minecraft_version=1.19.4
5-
quilt_mappings=5
4+
minecraft_version=1.20
5+
quilt_mappings=1
66
loader_version=0.18.5
77

8-
qsl_version=5.0.0-beta.1
8+
qsl_version=6.0.1
99

1010
# Mod properties
1111
mod_version=1.8.1

src/main/java/io/github/queerbric/inspecio/Inspecio.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ RegistryKeys.ITEM, new Identifier(NAMESPACE, "hidden_effects"),
6666
TagType.CLIENT_FALLBACK
6767
);
6868
public static final RandomGenerator COMMON_RANDOM = new LegacySimpleRandom(System.currentTimeMillis());
69+
public static final Identifier GUI_ICONS_TEXTURE = new Identifier("textures/gui/icons.png");
6970
private static InspecioConfig config = InspecioConfig.defaultConfig();
7071
private static ModContainer mod;
7172

src/main/java/io/github/queerbric/inspecio/tooltip/ArmorStandTooltipComponent.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
import io.github.queerbric.inspecio.mixin.EntityAccessor;
2323
import net.minecraft.client.MinecraftClient;
2424
import net.minecraft.client.font.TextRenderer;
25+
import net.minecraft.client.gui.GuiGraphics;
2526
import net.minecraft.client.gui.screen.Screen;
2627
import net.minecraft.client.item.TooltipData;
27-
import net.minecraft.client.render.item.ItemRenderer;
2828
import net.minecraft.client.util.math.MatrixStack;
2929
import net.minecraft.entity.Entity;
3030
import net.minecraft.entity.EntityType;
@@ -67,8 +67,9 @@ public static Optional<TooltipData> of(NbtCompound itemNbt) {
6767
}
6868

6969
@Override
70-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
70+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
7171
if (this.shouldRender()) {
72+
MatrixStack matrices = graphics.getMatrices();
7273
matrices.push();
7374
matrices.translate(30, 0, 0);
7475
((EntityAccessor) this.entity).setTouchingWater(true);

src/main/java/io/github/queerbric/inspecio/tooltip/ArmorTooltipComponent.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,11 @@
1717

1818
package io.github.queerbric.inspecio.tooltip;
1919

20-
import com.mojang.blaze3d.systems.RenderSystem;
2120
import io.github.queerbric.inspecio.Inspecio;
2221
import io.github.queerbric.inspecio.mixin.ItemStackAccessor;
2322
import net.minecraft.client.font.TextRenderer;
24-
import net.minecraft.client.gui.DrawableHelper;
25-
import net.minecraft.client.gui.hud.InGameHud;
23+
import net.minecraft.client.gui.GuiGraphics;
2624
import net.minecraft.client.gui.tooltip.TooltipComponent;
27-
import net.minecraft.client.render.item.ItemRenderer;
28-
import net.minecraft.client.util.math.MatrixStack;
2925
import net.minecraft.item.ArmorItem;
3026
import net.minecraft.item.ItemStack;
3127
import org.quiltmc.qsl.tooltip.api.ConvertibleTooltipData;
@@ -68,13 +64,12 @@ public int getWidth(TextRenderer textRenderer) {
6864
}
6965

7066
@Override
71-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
72-
RenderSystem.setShaderTexture(0, InGameHud.GUI_ICONS_TEXTURE);
67+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
7368
for (int i = 0; i < this.prot / 2; i++) {
74-
DrawableHelper.drawTexture(matrices, x + i * 9, y, 34, 9, 9, 9, 256, 256);
69+
graphics.drawTexture(Inspecio.GUI_ICONS_TEXTURE, x + i * 9, y, 34, 9, 9, 9, 256, 256);
7570
}
7671
if (this.prot % 2 == 1) {
77-
DrawableHelper.drawTexture(matrices, x + this.prot / 2 * 9, y, 25, 9, 9, 9, 256, 256);
72+
graphics.drawTexture(Inspecio.GUI_ICONS_TEXTURE, x + this.prot / 2 * 9, y, 25, 9, 9, 9, 256, 256);
7873
}
7974
}
8075
}

src/main/java/io/github/queerbric/inspecio/tooltip/BannerTooltipComponent.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,14 @@
2424
import net.minecraft.block.entity.BannerPattern;
2525
import net.minecraft.client.MinecraftClient;
2626
import net.minecraft.client.font.TextRenderer;
27+
import net.minecraft.client.gui.GuiGraphics;
2728
import net.minecraft.client.gui.tooltip.TooltipComponent;
2829
import net.minecraft.client.item.TooltipData;
2930
import net.minecraft.client.model.ModelPart;
3031
import net.minecraft.client.render.LightmapTextureManager;
3132
import net.minecraft.client.render.OverlayTexture;
3233
import net.minecraft.client.render.block.entity.BannerBlockEntityRenderer;
3334
import net.minecraft.client.render.entity.model.EntityModelLayers;
34-
import net.minecraft.client.render.item.ItemRenderer;
3535
import net.minecraft.client.render.model.ModelLoader;
3636
import net.minecraft.client.util.math.MatrixStack;
3737
import net.minecraft.nbt.NbtList;
@@ -82,8 +82,9 @@ public int getWidth(TextRenderer textRenderer) {
8282
}
8383

8484
@Override
85-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
85+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
8686
DiffuseLighting.setupFlatGuiLighting();
87+
MatrixStack matrices = graphics.getMatrices();
8788
matrices.push();
8889
matrices.translate(x + 8, y + 8, 0);
8990
matrices.push();

src/main/java/io/github/queerbric/inspecio/tooltip/BeesTooltipComponent.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,14 @@
1717

1818
package io.github.queerbric.inspecio.tooltip;
1919

20-
import com.mojang.blaze3d.systems.RenderSystem;
2120
import io.github.queerbric.inspecio.Inspecio;
2221
import io.github.queerbric.inspecio.InspecioConfig;
2322
import net.minecraft.block.BeehiveBlock;
2423
import net.minecraft.block.entity.BeehiveBlockEntity;
2524
import net.minecraft.client.font.TextRenderer;
26-
import net.minecraft.client.gui.DrawableHelper;
25+
import net.minecraft.client.gui.GuiGraphics;
2726
import net.minecraft.client.gui.screen.Screen;
2827
import net.minecraft.client.item.TooltipData;
29-
import net.minecraft.client.render.item.ItemRenderer;
3028
import net.minecraft.client.util.math.MatrixStack;
3129
import net.minecraft.entity.Entity;
3230
import net.minecraft.entity.EntityType;
@@ -117,7 +115,8 @@ public int getWidth(TextRenderer textRenderer) {
117115
}
118116

119117
@Override
120-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
118+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
119+
MatrixStack matrices = graphics.getMatrices();
121120
matrices.push();
122121

123122
if (!this.bees.isEmpty()) {
@@ -135,11 +134,10 @@ public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matri
135134
matrices.translate(x, y + (this.bees.isEmpty() ? 0 : (this.shouldRenderCustomNames() ? 32 : 24)), 0);
136135
matrices.scale(2, 2, 1);
137136

138-
RenderSystem.setShaderTexture(0, HONEY_LEVEL_TEXTURE);
139-
DrawableHelper.drawTexture(matrices, 0, 0, 0, 0, 0, 26, 5, 32, 16);
137+
graphics.drawTexture(HONEY_LEVEL_TEXTURE, 0, 0, 0, 0, 0, 26, 5, 32, 16);
140138

141139
if (honeyLevel != 0) {
142-
DrawableHelper.drawTexture(matrices, 0, 0, 0, 0, 5, Math.min(25, honeyLevel * 5 + 1), 6, 32, 16);
140+
graphics.drawTexture(HONEY_LEVEL_TEXTURE, 0, 0, 0, 0, 5, Math.min(25, honeyLevel * 5 + 1), 6, 32, 16);
143141
}
144142
}
145143

src/main/java/io/github/queerbric/inspecio/tooltip/CampfireTooltipComponent.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,9 @@
2121
import io.github.queerbric.inspecio.Inspecio;
2222
import net.minecraft.client.MinecraftClient;
2323
import net.minecraft.client.font.TextRenderer;
24-
import net.minecraft.client.gui.DrawableHelper;
24+
import net.minecraft.client.gui.GuiGraphics;
2525
import net.minecraft.client.gui.tooltip.TooltipComponent;
2626
import net.minecraft.client.item.TooltipData;
27-
import net.minecraft.client.render.item.ItemRenderer;
28-
import net.minecraft.client.util.math.MatrixStack;
2927
import net.minecraft.item.BlockItem;
3028
import net.minecraft.item.ItemStack;
3129
import net.minecraft.registry.Registries;
@@ -94,16 +92,16 @@ public int getWidth(TextRenderer textRenderer) {
9492
}
9593

9694
@Override
97-
public void drawItems(TextRenderer textRenderer, int xOffset, int yOffset, MatrixStack matrices, ItemRenderer itemRenderer) {
95+
public void drawItems(TextRenderer textRenderer, int xOffset, int yOffset, GuiGraphics graphics) {
9896
int x = 1 + 18 * 2;
9997
int y = 1 + 18 * 2;
10098

10199
for (int i = 0; i < this.inventory.size(); i++) {
102100
var stack = this.inventory.get(i);
103101

104-
InventoryTooltipComponent.drawSlot(matrices, x + xOffset - 1, y + yOffset - 1, 0, null);
105-
itemRenderer.method_4023(matrices, stack, xOffset + x, yOffset + y);
106-
itemRenderer.method_4025(matrices, textRenderer, stack, xOffset + x, yOffset + y);
102+
InventoryTooltipComponent.drawSlot(graphics, x + xOffset - 1, y + yOffset - 1, 0, null);
103+
graphics.drawItem(stack, xOffset + x, yOffset + y);
104+
graphics.drawItemInSlot(textRenderer, stack, xOffset + x, yOffset + y);
107105

108106
if (i == 1)
109107
y -= 18 * 2;
@@ -118,7 +116,7 @@ else if (i == 2)
118116

119117
var sprite = MinecraftClient.getInstance().getSpriteAtlas(ATLAS_TEXTURE).apply(this.fireTexture);
120118
if (sprite != null)
121-
DrawableHelper.drawSprite(matrices, xOffset + 19, yOffset + 19, 0, 16, 16, sprite);
119+
graphics.drawSprite(xOffset + 19, yOffset + 19, 0, 16, 16, sprite);
122120
}
123121
}
124122
}

src/main/java/io/github/queerbric/inspecio/tooltip/ChiseledBookshelfTooltipComponent.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@
2525
import net.minecraft.block.ChiseledBookshelfBlock;
2626
import net.minecraft.client.MinecraftClient;
2727
import net.minecraft.client.font.TextRenderer;
28+
import net.minecraft.client.gui.GuiGraphics;
2829
import net.minecraft.client.gui.tooltip.TooltipComponent;
2930
import net.minecraft.client.item.TooltipData;
3031
import net.minecraft.client.render.LightmapTextureManager;
3132
import net.minecraft.client.render.OverlayTexture;
32-
import net.minecraft.client.render.item.ItemRenderer;
3333
import net.minecraft.client.util.math.MatrixStack;
3434
import net.minecraft.item.BlockItem;
3535
import net.minecraft.item.ItemStack;
@@ -97,8 +97,9 @@ public int getWidth(TextRenderer textRenderer) {
9797
}
9898

9999
@Override
100-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
100+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
101101
DiffuseLighting.setupInventoryEntityLighting();
102+
MatrixStack matrices = graphics.getMatrices();
102103
matrices.translate(x, y, 0);
103104
matrices.scale(-1, -1, 1);
104105
matrices.translate(-20, -20, 0);

src/main/java/io/github/queerbric/inspecio/tooltip/CompoundTooltipComponent.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import com.google.common.collect.Lists;
2121
import net.minecraft.client.font.TextRenderer;
22+
import net.minecraft.client.gui.GuiGraphics;
2223
import net.minecraft.client.gui.tooltip.TooltipComponent;
2324
import net.minecraft.client.render.VertexConsumerProvider.Immediate;
2425
import net.minecraft.client.render.item.ItemRenderer;
@@ -61,10 +62,10 @@ public int getWidth(TextRenderer textRenderer) {
6162
}
6263

6364
@Override
64-
public void drawItems(TextRenderer textRenderer, int x, int y, MatrixStack matrices, ItemRenderer itemRenderer) {
65+
public void drawItems(TextRenderer textRenderer, int x, int y, GuiGraphics graphics) {
6566
int yOff = 0;
6667
for (var comp : components) {
67-
comp.drawItems(textRenderer, x, y + yOff, matrices, itemRenderer);
68+
comp.drawItems(textRenderer, x, y + yOff, graphics);
6869
yOff += comp.getHeight();
6970
}
7071
}

0 commit comments

Comments
 (0)