Hello there,
I started porting my mod from 1.18.1 to 1.18.2, and what I encountered during startup is that while creating block instances (new Block, etc.) I got an error from Block#67:
private final Holder.Reference<Block> builtInRegistryHolder = Registry.BLOCK.createIntrusiveHolder(this);
What is says is that "Registry is already frozen":
Caused by: java.lang.IllegalStateException: Registry is already frozen
at net.minecraftforge.registries.NamespacedHolderHelper.createIntrusiveHolder(NamespacedHolderHelper.java:177) ~[forge-1.18.2-40.1.52_mapped_official_1.18.2-recomp.jar%2375%2382!/:?] {re:classloading}
at net.minecraftforge.registries.NamespacedDefaultedWrapper.createIntrusiveHolder(NamespacedDefaultedWrapper.java:205) ~[forge-1.18.2-40.1.52_mapped_official_1.18.2-recomp.jar%2375%2382!/:?] {re:classloading}
at net.minecraftforge.registries.NamespacedDefaultedWrapper.createIntrusiveHolder(NamespacedDefaultedWrapper.java:33) ~[forge-1.18.2-40.1.52_mapped_official_1.18.2-recomp.jar%2375%2382!/:?] {re:classloading}
at net.minecraft.world.level.block.Block.<init>(Block.java:67) ~[forge-1.18.2-40.1.52_mapped_official_1.18.2-recomp.jar%2376!/:?] {re:classloading,pl:accesstransformer:B}
at net.matez.wildnature.common.objects.blocks.setup.WNBlock.<init>(WNBlock.java:57) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.objects.blocks.basic.WNRotatedPillarBlock.<init>(WNRotatedPillarBlock.java:26) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.objects.blocks.wood.building.WNLogBlock.<init>(WNLogBlock.java:38) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blocks.WNBlocks.lambda$static$0(WNBlocks.java:94) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blocks.WNBlocks.register(WNBlocks.java:1283) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blocks.WNBlocks.<clinit>(WNBlocks.java:86) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blockentities.WNBlockEntities.lambda$static$0(WNBlockEntities.java:37) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blockentities.WNBlockEntities.register(WNBlockEntities.java:62) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.common.registry.blockentities.WNBlockEntities.<clinit>(WNBlockEntities.java:35) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.client.registry.blockentities.WNBlockEntityRenderers.<clinit>(WNBlockEntityRenderers.java:26) ~[%2381!/:?] {re:classloading}
at java.lang.Class.forName0(Native Method) ~[?:?] {}
at java.lang.Class.forName(Class.java:375) ~[?:?] {}
at net.matez.wildnature.common.objects.initializer.Initializer.<init>(Initializer.java:37) ~[%2381!/:?] {re:classloading}
at net.matez.wildnature.setup.WildNature.<init>(WildNature.java:62) ~[%2381!/:?] {re:classloading}
I think it will also occur with other things like BlockEntities, Entities and other.
I create these blocks during FMLConstructModEvent process. It worked fine in 1.18.1, now it doesn't. Where should I do it?
Thanks.
PS. Somehow my old forge forum account is blocked. Too bad.