aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker
diff options
context:
space:
mode:
authornmccullagh <narhanael64@gmail.com>2024-07-04 09:06:40 +0100
committernmccullagh <narhanael64@gmail.com>2024-07-06 19:01:10 +0100
commit3b50cece25be2f5bfec478dbae19ac7217eb821f (patch)
tree9490f2b26f71ede2923030827b70d32c7aaa5d4f /src/main/java/de/hysky/skyblocker
parent477567dec368705b0b01e5234e789c1d062aa82f (diff)
downloadSkyblocker-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.java7
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/PlayerInventory.java7
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);
}
}
}