Properly fix CreativeTab item registering
This commit is contained in:
@@ -16,7 +16,9 @@ public class CreativeTabRegistry {
|
||||
private static final List<Pair<CraterCreativeModeTab, Supplier<? extends ItemLike>>> TAB_ITEMS = new ArrayList<>();
|
||||
|
||||
public static void setCreativeTab(CraterCreativeModeTab tab, Supplier<? extends ItemLike> item) {
|
||||
TAB_ITEMS.add(Pair.of(tab, item));
|
||||
if (item != null) {
|
||||
TAB_ITEMS.add(Pair.of(tab, item));
|
||||
}
|
||||
}
|
||||
|
||||
public static void registerTab(CraterCreativeModeTab tab) {
|
||||
|
@@ -23,20 +23,15 @@ public class CraterLibInitializer implements ModInitializer {
|
||||
.title(Component.translatable("itemGroup." +
|
||||
tab.getResourceLocation().toString().replace(":", ".")
|
||||
))
|
||||
.displayItems((featureFlagSet, output) -> {
|
||||
CreativeTabRegistry
|
||||
.getTabItems()
|
||||
.stream().filter(t -> t.getLeft() == tab)
|
||||
.map(Pair::getRight).forEach(itm -> output.accept(itm.get()));
|
||||
})
|
||||
.icon(tab.getIcon())
|
||||
.build();
|
||||
|
||||
tab.setTab(finalTab);
|
||||
});
|
||||
|
||||
ItemGroupEvents.MODIFY_ENTRIES_ALL.register((group, entries) -> CreativeTabRegistry.getTabItems().stream()
|
||||
.filter(p -> p.getLeft().get() == group)
|
||||
.forEach(itemPair -> entries.accept(itemPair.getRight().get())));
|
||||
ItemGroupEvents.modifyEntriesEvent(finalTab).register(entries -> CreativeTabRegistry
|
||||
.getTabItems()
|
||||
.stream().filter(t -> t.getLeft().get() == finalTab && t.getRight() != null)
|
||||
.map(Pair::getRight).forEach(itm -> entries.accept(itm.get())));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@@ -38,7 +38,7 @@ public class ForgeCommonEvents {
|
||||
CreativeModeTab tab = event.getTab();
|
||||
|
||||
CreativeTabRegistry.getTabItems().stream()
|
||||
.filter(p -> p.getLeft().get() == tab)
|
||||
.filter(p -> p.getLeft().get() == tab && p.getRight() != null)
|
||||
.forEach(itemPair -> event.accept(itemPair.getRight()));
|
||||
}
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
# Project
|
||||
version_major=0
|
||||
version_minor=0
|
||||
version_patch=1d
|
||||
version_patch=5d
|
||||
group=me.hypherionmc.craterlib
|
||||
|
||||
# Common
|
||||
|
Reference in New Issue
Block a user