diff --git a/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskDrive.java index 7f2c5dec7..7f4f7af33 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskDrive.java @@ -36,7 +36,7 @@ public class BlockDiskDrive extends BlockNode { public void registerModels(IModelRegistration modelRegistration) { modelRegistration.setModel(this, 0, new ModelResourceLocation(info.getId(), "inventory")); - modelRegistration.addModelLoader(new CustomModelLoaderDefault(info.getId(), ModelDiskDrive::new)); + modelRegistration.addModelLoader(() -> new CustomModelLoaderDefault(info.getId(), ModelDiskDrive::new)); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskManipulator.java b/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskManipulator.java index 0fecc1d38..469f2ac3b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskManipulator.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/block/BlockDiskManipulator.java @@ -36,7 +36,7 @@ public class BlockDiskManipulator extends BlockNode { public void registerModels(IModelRegistration modelRegistration) { modelRegistration.setModel(this, 0, new ModelResourceLocation(info.getId(), "inventory")); - modelRegistration.addModelLoader(new CustomModelLoaderDefault(info.getId(), ModelDiskManipulator::new)); + modelRegistration.addModelLoader(() -> new CustomModelLoaderDefault(info.getId(), ModelDiskManipulator::new)); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/proxy/ProxyClient.java b/src/main/java/com/raoulvdberge/refinedstorage/proxy/ProxyClient.java index d3e8dd24a..bd47598ae 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/proxy/ProxyClient.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/proxy/ProxyClient.java @@ -41,6 +41,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import java.util.HashMap; import java.util.Map; import java.util.function.Function; +import java.util.function.Supplier; public class ProxyClient extends ProxyCommon implements IModelRegistration { private Map> bakedModelOverrides = new HashMap<>(); @@ -252,8 +253,8 @@ public class ProxyClient extends ProxyCommon implements IModelRegistration { } @Override - public void addModelLoader(ICustomModelLoader modelLoader) { - ModelLoaderRegistry.registerLoader(modelLoader); + public void addModelLoader(Supplier modelLoader) { + ModelLoaderRegistry.registerLoader(modelLoader.get()); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/IModelRegistration.java b/src/main/java/com/raoulvdberge/refinedstorage/render/IModelRegistration.java index 0066cc16c..6bb00e91c 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/IModelRegistration.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/IModelRegistration.java @@ -9,6 +9,7 @@ import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.model.ICustomModelLoader; import java.util.function.Function; +import java.util.function.Supplier; public interface IModelRegistration { void addBakedModelOverride(ResourceLocation resource, Function override); @@ -17,7 +18,7 @@ public interface IModelRegistration { void setModelMeshDefinition(Block block, ItemMeshDefinition meshDefinition); - void addModelLoader(ICustomModelLoader modelLoader); + void addModelLoader(Supplier modelLoader); void setStateMapper(Block block, IStateMapper stateMapper); }