diff options
author | nmccullagh <narhanael64@gmail.com> | 2024-07-04 09:06:40 +0100 |
---|---|---|
committer | nmccullagh <narhanael64@gmail.com> | 2024-07-06 19:01:10 +0100 |
commit | 3b50cece25be2f5bfec478dbae19ac7217eb821f (patch) | |
tree | 9490f2b26f71ede2923030827b70d32c7aaa5d4f /src/main/java/de/hysky/skyblocker | |
parent | 477567dec368705b0b01e5234e789c1d062aa82f (diff) | |
download | Skyblocker-3b50cece25be2f5bfec478dbae19ac7217eb821f.tar.gz Skyblocker-3b50cece25be2f5bfec478dbae19ac7217eb821f.tar.bz2 Skyblocker-3b50cece25be2f5bfec478dbae19ac7217eb821f.zip |
fix z stacking issues with rarity and tooltip
Diffstat (limited to 'src/main/java/de/hysky/skyblocker')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/Inventory.java | 7 | ||||
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/Inventory.java b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/Inventory.java index a114f4d6..c4dc6fff 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/Inventory.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/Inventory.java @@ -18,6 +18,7 @@ import net.minecraft.util.Identifier; import java.awt.*; import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class Inventory implements ProfileViewerPage { @@ -67,6 +68,7 @@ public class Inventory implements ProfileViewerPage { int startIndex = activePage * itemsPerPage; int endIndex = Math.min(startIndex + itemsPerPage, containerList.size()); + List<Text> tooltip = Collections.emptyList(); for (int i = 0; i < endIndex - startIndex; i++) { if (containerList.get(startIndex + i) == ItemStack.EMPTY) continue; int column = i % dimensions.rightInt(); @@ -83,10 +85,11 @@ public class Inventory implements ProfileViewerPage { context.drawItemInSlot(textRenderer, containerList.get(startIndex + i), x, y); if (mouseX > x && mouseX < x + 16 && mouseY > y && mouseY < y + 16) { - List<Text> tooltip = containerList.get(startIndex + i).getTooltip(Item.TooltipContext.DEFAULT, MinecraftClient.getInstance().player, TooltipType.BASIC); - context.drawTooltip(textRenderer, tooltip, mouseX, mouseY); + tooltip = containerList.get(startIndex + i).getTooltip(Item.TooltipContext.DEFAULT, MinecraftClient.getInstance().player, TooltipType.BASIC); } } + + if (!tooltip.isEmpty()) context.drawTooltip(textRenderer, tooltip, mouseX, mouseY); } public void nextPage() { diff --git a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java index 969960d8..0412c32e 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java @@ -16,12 +16,14 @@ import net.minecraft.text.Text; import net.minecraft.util.Identifier; import java.awt.*; +import java.util.Collections; import java.util.List; public class PlayerInventory implements ProfileViewerPage { private static final Identifier TEXTURE = Identifier.of("textures/gui/container/generic_54.png"); private static final TextRenderer textRenderer = MinecraftClient.getInstance().textRenderer; private final List<ItemStack> containerList; + private List<Text> tooltip = Collections.emptyList(); public PlayerInventory(JsonObject inventory) { this.containerList = new InventoryItemLoader().loadItems(inventory); @@ -33,9 +35,11 @@ public class PlayerInventory implements ProfileViewerPage { drawContainerTextures(context, "Inventory", rootX, rootY + 2, IntIntPair.of(4, 9)); drawContainerTextures(context, "Equipment", rootX + 90, rootY + 108, IntIntPair.of(1, 4)); + tooltip.clear(); drawContainerItems(context, rootX, rootY + 108, IntIntPair.of(1, 4), 36, 40, mouseX, mouseY); drawContainerItems(context, rootX, rootY + 2, IntIntPair.of(4, 9), 0, 36, mouseX, mouseY); drawContainerItems(context, rootX + 90, rootY + 108, IntIntPair.of(1, 4), 40, containerList.size(), mouseX, mouseY); + if (!tooltip.isEmpty()) context.drawTooltip(textRenderer, tooltip, mouseX, mouseY); } private void drawContainerTextures(DrawContext context, String containerName, int rootX, int rootY, IntIntPair dimensions) { @@ -71,8 +75,7 @@ public class PlayerInventory implements ProfileViewerPage { context.drawItemInSlot(textRenderer, containerList.get(startIndex + i), x, y); if (mouseX > x && mouseX < x + 16 && mouseY > y && mouseY < y + 16) { - List<Text> tooltip = containerList.get(startIndex + i).getTooltip(Item.TooltipContext.DEFAULT, MinecraftClient.getInstance().player, TooltipType.BASIC); - context.drawTooltip(textRenderer, tooltip, mouseX, mouseY); + tooltip = containerList.get(startIndex + i).getTooltip(Item.TooltipContext.DEFAULT, MinecraftClient.getInstance().player, TooltipType.BASIC); } } } |