From 8c616633dde6e6434ed26421764e5892f7ac57fc Mon Sep 17 00:00:00 2001 From: Guddi Date: Fri, 15 Aug 2025 00:51:03 +0200 Subject: [PATCH 1/2] added creative tab with all current items --- .../net/doppelr/lemonmates/LemonMates.java | 3 + .../lemonmates/item/ModCreativeModeTabs.java | 81 +++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 src/main/java/net/doppelr/lemonmates/item/ModCreativeModeTabs.java diff --git a/src/main/java/net/doppelr/lemonmates/LemonMates.java b/src/main/java/net/doppelr/lemonmates/LemonMates.java index bad8606..f91485b 100644 --- a/src/main/java/net/doppelr/lemonmates/LemonMates.java +++ b/src/main/java/net/doppelr/lemonmates/LemonMates.java @@ -1,5 +1,6 @@ package net.doppelr.lemonmates; +import net.doppelr.lemonmates.item.ModCreativeModeTabs; import net.doppelr.lemonmates.item.ModItems; import net.minecraft.world.item.CreativeModeTabs; import org.slf4j.Logger; @@ -35,6 +36,8 @@ public LemonMates(IEventBus modEventBus, ModContainer modContainer) { // Do not add this line if there are no @SubscribeEvent-annotated functions in this class, like onServerStarting() below. NeoForge.EVENT_BUS.register(this); + ModCreativeModeTabs.register(modEventBus); + ModItems.register(modEventBus); // Register the item to a creative tab diff --git a/src/main/java/net/doppelr/lemonmates/item/ModCreativeModeTabs.java b/src/main/java/net/doppelr/lemonmates/item/ModCreativeModeTabs.java new file mode 100644 index 0000000..c627f80 --- /dev/null +++ b/src/main/java/net/doppelr/lemonmates/item/ModCreativeModeTabs.java @@ -0,0 +1,81 @@ +package net.doppelr.lemonmates.item; + +import net.doppelr.lemonmates.LemonMates; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.CreativeModeTabs; +import net.minecraft.world.item.ItemStack; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.neoforge.registries.DeferredRegister; + +import java.util.function.Supplier; + +public class ModCreativeModeTabs { + public static final DeferredRegister CREATIVE_MODE_TAB = + DeferredRegister.create(Registries.CREATIVE_MODE_TAB, LemonMates.MOD_ID); + + public static final Supplier LEMONMATES_TAB = CREATIVE_MODE_TAB.register("lemonmates_tab", + () -> CreativeModeTab.builder() + .title(Component.translatable("itemGroup." + LemonMates.MOD_ID + ".lemonmates")) + .withTabsBefore(CreativeModeTabs.SPAWN_EGGS) + .icon(() -> new ItemStack(ModItems.BOTTLE_CAP.get())) + .displayItems((params, output) -> { + // Bottle, Cap + output.accept(ModItems.BOTTLE_CAP); + output.accept(ModItems.BOTTLE_EMPTY); + + // Labels + output.accept(ModItems.CITRON_LEMONADE_LABEL); + output.accept(ModItems.ORANGE_LEMONADE_LABEL); + output.accept(ModItems.RASPBERRY_LEMONADE_LABEL); + output.accept(ModItems.SUMMER_MIX_LABEL); + output.accept(ModItems.WATERMELON_LEMONADE_LABEL); + + // Citron + output.accept(ModItems.BOTTLE_CITRON_LABEL); + output.accept(ModItems.BOTTLE_CITRON_LEMONADE); + output.accept(ModItems.BOTTLE_CITRON_LABEL_CAP); + output.accept(ModItems.BOTTLE_CITRON_LABEL_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_CITRON_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_CITRON_LABEL_LEMONADE); + + // Orange + output.accept(ModItems.BOTTLE_ORANGE_LABEL); + output.accept(ModItems.BOTTLE_ORANGE_LEMONADE); + output.accept(ModItems.BOTTLE_ORANGE_LABEL_CAP); + output.accept(ModItems.BOTTLE_ORANGE_LABEL_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_ORANGE_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_ORANGE_LABEL_LEMONADE); + + // Raspberry + output.accept(ModItems.BOTTLE_RASPBERRY_LABEL); + output.accept(ModItems.BOTTLE_RASPBERRY_LEMONADE); + output.accept(ModItems.BOTTLE_RASPBERRY_LABEL_CAP); + output.accept(ModItems.BOTTLE_RASPBERRY_LABEL_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_RASPBERRY_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_RASPBERRY_LABEL_LEMONADE); + + // Summer Mix + output.accept(ModItems.BOTTLE_SUMMERMIX_LABEL); + output.accept(ModItems.BOTTLE_SUMMERMIX_LEMONADE); + output.accept(ModItems.BOTTLE_SUMMERMIX_LABEL_CAP); + output.accept(ModItems.BOTTLE_SUMMERMIX_LABEL_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_SUMMERMIX_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_SUMMERMIX_LABEL_LEMONADE); + + // Watermelon + output.accept(ModItems.BOTTLE_WATERMELON_LABEL); + output.accept(ModItems.BOTTLE_WATERMELON_LEMONADE); + output.accept(ModItems.BOTTLE_WATERMELON_LABEL_CAP); + output.accept(ModItems.BOTTLE_WATERMELON_LABEL_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_WATERMELON_LEMONADE_CAP); + output.accept(ModItems.BOTTLE_WATERMELON_LABEL_LEMONADE); + }) + .build() + ); + + public static void register(IEventBus eventBus) { + CREATIVE_MODE_TAB.register(eventBus); + } +} From 8ef7f38abc02c25889e76505e53a9b95a587f97d Mon Sep 17 00:00:00 2001 From: Guddi Date: Fri, 15 Aug 2025 00:56:29 +0200 Subject: [PATCH 2/2] added CreativeModeTab name --- src/main/resources/assets/lemonmates/lang/en_US.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/resources/assets/lemonmates/lang/en_US.json b/src/main/resources/assets/lemonmates/lang/en_US.json index 554f129..1d153cb 100644 --- a/src/main/resources/assets/lemonmates/lang/en_US.json +++ b/src/main/resources/assets/lemonmates/lang/en_US.json @@ -1,4 +1,6 @@ { + "itemGroup.lemonmates.lemonmates": "Lemonmates", + "item.lemonmates.bottle_cap": "Bottle Cap", "item.lemonmates.bottle_empty": "Empty Bottle",