From 70924ee791821c254f8f4c5b4e79503b0bc10c94 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Sat, 18 Feb 2023 19:35:36 +0800 Subject: Fix #1292 --- .../me/shedaniel/rei/plugin/client/DefaultClientPlugin.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'default-plugin/src') diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java index a0c74570d..da031d740 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java @@ -27,6 +27,7 @@ import com.google.common.collect.*; import dev.architectury.event.EventResult; import dev.architectury.networking.NetworkManager; import dev.architectury.platform.Platform; +import it.unimi.dsi.fastutil.objects.Reference2ObjectOpenHashMap; import it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet; import it.unimi.dsi.fastutil.objects.ReferenceSet; import me.shedaniel.math.Rectangle; @@ -123,7 +124,14 @@ public class DefaultClientPlugin implements REIClientPlugin, BuiltinClientPlugin @Override public void registerEntries(EntryRegistry registry) { - Multimap> items = HashMultimap.create(); + if (Minecraft.getInstance().player == null || Minecraft.getInstance().player.connection == null) + return; + Minecraft.getInstance().executeBlocking(() -> { + CreativeModeTabs.tryRebuildTabContents(Minecraft.getInstance().player.connection.enabledFeatures(), + Minecraft.getInstance().options.operatorItemsTab().get() && Minecraft.getInstance().player.canUseGameMasterBlocks()); + }); + Multimap> items = Multimaps.newListMultimap(new Reference2ObjectOpenHashMap<>() + , ArrayList::new); for (CreativeModeTab tab : CreativeModeTabs.allTabs()) { if (tab.getType() != CreativeModeTab.Type.HOTBAR && tab.getType() != CreativeModeTab.Type.INVENTORY) { -- cgit