package com.tiedup.remake.core;

import com.tiedup.remake.entities.NpcInventoryMenu;
import net.minecraft.world.inventory.MenuType;
import net.minecraftforge.common.extensions.IForgeMenuType;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.RegistryObject;

/**
 * ModMenuTypes - Registry for container menu types.
 *
 * <p>Registers vanilla-style container menus for GUIs.</p>
 */
public class ModMenuTypes {

    public static final DeferredRegister<MenuType<?>> MENUS =
        DeferredRegister.create(ForgeRegistries.MENU_TYPES, TiedUpMod.MOD_ID);

    /**
     * NPC Inventory menu - vanilla container for NPC inventory management.
     */
    public static final RegistryObject<
        MenuType<NpcInventoryMenu>
    > NPC_INVENTORY = MENUS.register("npc_inventory", () ->
        IForgeMenuType.create(NpcInventoryMenu::createClientMenu)
    );
}
