aboutsummaryrefslogtreecommitdiff
path: root/fabric/src/main/java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-06-12 22:13:00 +0800
committershedaniel <daniel@shedaniel.me>2021-06-12 22:13:00 +0800
commit2932350cc1315534c4ee9a8c9fe17a9b0815f2e9 (patch)
tree8f2f8e331987159016e084bb630892fa25150d27 /fabric/src/main/java
parent187aa4c0fc07dcf6a27f2edb83b3d8163bef7420 (diff)
downloadRoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.tar.gz
RoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.tar.bz2
RoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.zip
Fix REI on servers
Diffstat (limited to 'fabric/src/main/java')
-rw-r--r--fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java7
1 files changed, 7 insertions, 0 deletions
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 <P extends REIPlugin<?>> void loadPlugin(Class<? extends P> pluginClass, Consumer<? super REIPluginProvider<P>> consumer) {
+ out:
for (EntrypointContainer<REIPluginProvider> 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);