aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2024-04-23 15:19:07 -0400
committerAaron <51387595+AzureAaron@users.noreply.github.com>2024-04-26 16:23:21 -0400
commitd0bae1dd9880fd4d1d48df19439fa17463b14d40 (patch)
treefbde46add3980dc0a6cd7f646a99063d3322cc06 /src/main/java
parent26833bc26078ca0529796d07bb7260cb6f06deb5 (diff)
downloadSkyblocker-d0bae1dd9880fd4d1d48df19439fa17463b14d40.tar.gz
Skyblocker-d0bae1dd9880fd4d1d48df19439fa17463b14d40.tar.bz2
Skyblocker-d0bae1dd9880fd4d1d48df19439fa17463b14d40.zip
Fix dungeon floor icons having a rave
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
index f86d3057..157519b5 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
@@ -3,7 +3,7 @@ package de.hysky.skyblocker.skyblock.dungeon.partyfinder;
import com.mojang.authlib.properties.PropertyMap;
import de.hysky.skyblocker.SkyblockerMod;
import de.hysky.skyblocker.mixin.accessor.SkullBlockEntityAccessor;
-import de.hysky.skyblocker.utils.Utils;
+import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
@@ -25,6 +25,7 @@ import net.minecraft.util.Identifier;
import java.util.Arrays;
import java.util.List;
+import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.UUID;
@@ -35,6 +36,7 @@ public class PartyEntry extends ElementListWidget.Entry<PartyEntry> {
private static final Identifier PARTY_CARD_TEXTURE = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/party_card.png");
private static final Identifier PARTY_CARD_TEXTURE_HOVER = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/party_card_hover.png");
public static final Text JOIN_TEXT = Text.translatable("skyblocker.partyFinder.join");
+ private static final Map<String, ProfileComponent> SKULL_CACHE = new Object2ObjectOpenHashMap<>();
protected final PartyFinderScreen screen;
protected final int slotID;
Player partyLeader;
@@ -69,7 +71,7 @@ public class PartyEntry extends ElementListWidget.Entry<PartyEntry> {
String partyHost = title.getString().split("'s")[0];
int membersIndex = -1;
- for (int i = 1; i < tooltips.size(); i++) {
+ for (int i = 0; i < tooltips.size(); i++) {
Text text = tooltips.get(i);
String tooltipText = Formatting.strip(text.getString());
assert tooltipText != null;
@@ -229,7 +231,7 @@ public class PartyEntry extends ElementListWidget.Entry<PartyEntry> {
}
}
ItemStack stack = new ItemStack(Items.PLAYER_HEAD);
- stack.set(DataComponentTypes.PROFILE, new ProfileComponent(Optional.of("SkyblockerCustomPFSkull" + floor), Optional.of(UUID.randomUUID()), floorSkullProperties));
+ stack.set(DataComponentTypes.PROFILE, SKULL_CACHE.computeIfAbsent("SkyblockerCustomPFSkull" + dungeon + floor, name -> new ProfileComponent(Optional.of(name), Optional.of(UUID.randomUUID()), floorSkullProperties)));
context.drawItem(stack, 317, 3);
int textWidth = textRenderer.getWidth(floor);