From 2932350cc1315534c4ee9a8c9fe17a9b0815f2e9 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Sat, 12 Jun 2021 22:13:00 +0800 Subject: Fix REI on servers --- .../src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'fabric/src') diff --git a/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java b/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java index 5897f3864..88b373072 100644 --- a/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java +++ b/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java @@ -24,6 +24,7 @@ package me.shedaniel.rei.fabric; import com.google.common.collect.Iterables; +import me.shedaniel.rei.RoughlyEnoughItemsInitializer; import me.shedaniel.rei.RoughlyEnoughItemsState; import me.shedaniel.rei.api.client.plugins.REIClientPlugin; import me.shedaniel.rei.api.common.plugins.*; @@ -37,6 +38,7 @@ import java.util.function.Consumer; public class PluginDetectorImpl { private static

> void loadPlugin(Class pluginClass, Consumer> consumer) { + out: for (EntrypointContainer container : Iterables.concat( FabricLoader.getInstance().getEntrypointContainers("rei_containers", REIPluginProvider.class), FabricLoader.getInstance().getEntrypointContainers("rei_server", REIPluginProvider.class), @@ -66,6 +68,11 @@ public class PluginDetectorImpl { }); } } catch (Throwable t) { + Throwable throwable = t; + while (throwable != null) { + if (throwable.getMessage().contains("environment type SERVER") && !RoughlyEnoughItemsInitializer.isClient()) continue out; + throwable = throwable.getCause(); + } String error = "Could not create REI Plugin [" + getSimpleName(pluginClass) + "] due to errors, provided by '" + container.getProvider().getMetadata().getId() + "'!"; new RuntimeException(error, t).printStackTrace(); RoughlyEnoughItemsState.error(error); -- cgit