package info.u_team.u_team_core.util;

import static net.minecraft.client.renderer.model.ModelBakery.STATE_CONTAINER_OVERRIDES;

import java.util.*;

import com.google.common.collect.ImmutableMap;

import net.minecraft.block.*;
import net.minecraft.state.StateContainer;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.api.distmarker.*;

@OnlyIn(Dist.CLIENT)
public class ModelUtil {
	
	static {
		if (STATE_CONTAINER_OVERRIDES instanceof ImmutableMap) {
			final Map<ResourceLocation, StateContainer<Block, BlockState>> mutableMap = new HashMap<>();
			STATE_CONTAINER_OVERRIDES.forEach(mutableMap::put);
			STATE_CONTAINER_OVERRIDES = mutableMap;
		}
	}
	
	public static void addCustomStateContainer(ResourceLocation location, StateContainer<Block, BlockState> container) {
		STATE_CONTAINER_OVERRIDES.put(location, container);
	}
	
}

@@ -176,28 +176,17 @@
 collect.
-ImmutableMap
+*
 ;%0A%0Aimpor
@@ -839,10 +839,337 @@
 );%0A%09%7D%0A%09%0A
+%09public static class EmptyStateContainer extends StateContainer%3CBlock, BlockState%3E %7B%0A%09%09%0A%09%09public EmptyStateContainer(Block block) %7B%0A%09%09%09super(block, BlockState::new, new HashMap%3C%3E());%0A%09%09%7D%0A%09%09%0A%09%09@Override%0A%09%09public ImmutableList%3CBlockState%3E getValidStates() %7B%0A%09%09%09return getOwner().getStateContainer().getValidStates();%0A%09%09%7D%0A%09%09%0A%09%7D%0A%09%0A
 %7D%0A

Add empty state container class as utility