From 58003beb221b212f94359fc3ca1b73aaa4648eba Mon Sep 17 00:00:00 2001 From: P3pp3rF1y Date: Fri, 24 Jan 2025 22:53:05 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20Fixed=20CME=20that=20coul?= =?UTF-8?q?d=20happen=20in=20backpack=20rendering=20when=20curio=20types?= =?UTF-8?q?=20were=20getting=20refreshed?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle.properties | 2 +- .../compat/curios/CuriosCompat.java | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/gradle.properties b/gradle.properties index 1787baf8..30a0d4bb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ org.gradle.daemon=false mod_id=sophisticatedbackpacks mod_group_id=sophisticatedbackpacks -mod_version=3.22.4 +mod_version=3.22.5 sonar_project_key=sophisticatedbackpacks:SophisticatedBackpacks github_package_url=https://maven.pkg.github.com/P3pp3rF1y/SophisticatedBackpacks diff --git a/src/main/java/net/p3pp3rf1y/sophisticatedbackpacks/compat/curios/CuriosCompat.java b/src/main/java/net/p3pp3rf1y/sophisticatedbackpacks/compat/curios/CuriosCompat.java index 8e5747d9..27737594 100644 --- a/src/main/java/net/p3pp3rf1y/sophisticatedbackpacks/compat/curios/CuriosCompat.java +++ b/src/main/java/net/p3pp3rf1y/sophisticatedbackpacks/compat/curios/CuriosCompat.java @@ -32,8 +32,8 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; -import java.util.HashSet; import java.util.Set; +import java.util.concurrent.CopyOnWriteArraySet; import java.util.function.Function; public class CuriosCompat implements ICompat { @@ -49,15 +49,16 @@ private void addPlayerInventoryHandlers() { false, true, true, true); } - private Set backpackCurioIdentifiers = new HashSet<>(); + private final Set backpackCurioIdentifiers = new CopyOnWriteArraySet<>(); private long lastTagsRefresh = -1; private static final int TAGS_REFRESH_COOLDOWN = 100; private Set getCurioTags(long gameTime) { if (lastTagsRefresh + TAGS_REFRESH_COOLDOWN < gameTime) { lastTagsRefresh = gameTime; - backpackCurioIdentifiers = new HashSet<>(CuriosApi.getCuriosHelper().getCurioTags(ModItems.BACKPACK.get())); - backpackCurioIdentifiers.add(SlotTypePreset.CURIO.getIdentifier()); + backpackCurioIdentifiers.clear(); + backpackCurioIdentifiers.addAll(CuriosApi.getItemStackSlots(ModItems.BACKPACK.get().getDefaultInstance()).keySet()); + backpackCurioIdentifiers.add("curio"); } return backpackCurioIdentifiers; }