FieryFlake Posted September 25, 2022 Share Posted September 25, 2022 Hello, I am trying to port my mod to 1.19.2 from 1.18.2, but have no idea how to register a container's gui menu. This is the code right now: package net.mysticalworld.init; import net.mysticalworld.world.inventory.TransformationStationGUIMenu; import net.minecraftforge.network.IContainerFactory; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraft.world.inventory.MenuType; import net.minecraft.world.inventory.AbstractContainerMenu; import java.util.List; import java.util.ArrayList; @Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD) public class MysticalWorldModMenus { private static final List<MenuType<?>> REGISTRY = new ArrayList<>(); public static final MenuType<TransformationStationGUIMenu> TRANSFORMATION_STATION_GUI = register("transformation_station_gui", (id, inv, extraData) -> new TransformationStationGUIMenu(id, inv, extraData)); private static <T extends AbstractContainerMenu> MenuType<T> register(String registryname, IContainerFactory<T> containerFactory) { MenuType<T> menuType = new MenuType<T>(containerFactory); menuType.setRegistryName(registryname); REGISTRY.add(menuType); return menuType; } @SubscribeEvent public static void registerContainers(RegistryEvent.Register<MenuType<?>> event) { event.getRegistry().registerAll(REGISTRY.toArray(new MenuType[0])); } } What do I need to change? Quote Link to comment Share on other sites More sharing options...
warjort Posted September 25, 2022 Share Posted September 25, 2022 You should use DeferredRegister/RegistryObject instead of the event. https://forge.gemwire.uk/wiki/Registration But the replacement for RegistryEvent is RegisterEvent which works differently. Either way, you shouldn't be creating minecraft registered objects during static classloading. Quote Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post. Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.