diff --git a/src/main/java/com/bgsoftware/wildloaders/handlers/ProvidersHandler.java b/src/main/java/com/bgsoftware/wildloaders/handlers/ProvidersHandler.java index c81c18e..94e2cd3 100644 --- a/src/main/java/com/bgsoftware/wildloaders/handlers/ProvidersHandler.java +++ b/src/main/java/com/bgsoftware/wildloaders/handlers/ProvidersHandler.java @@ -85,13 +85,13 @@ public final class ProvidersHandler implements ProvidersManager { try { Class.forName("com.infernalsuite.aswm.api.SlimePlugin"); - worldsProvider = createInstance("WorldsProvider_AdvancedSlimePaper"); - } catch (Throwable ignored) { + worldsProvider = createInstanceSilently("WorldsProvider_AdvancedSlimePaper"); + } catch (ClassNotFoundException ignored) { try { Class.forName("com.grinderwolf.swm.nms.world.AbstractSlimeNMSWorld"); - worldsProvider = createInstance("WorldsProvider_AdvancedSlimeWorldManager"); + worldsProvider = createInstanceSilently("WorldsProvider_AdvancedSlimeWorldManager"); } catch (Throwable error) { - worldsProvider = createInstance("WorldsProvider_SlimeWorldManager"); + worldsProvider = createInstanceSilently("WorldsProvider_SlimeWorldManager"); } } @@ -140,6 +140,14 @@ public final class ProvidersHandler implements ProvidersManager { return null; } + private Optional createInstanceSilently(String className) { + try { + return createInstance(className); + } catch (Throwable error) { + return Optional.empty(); + } + } + private Optional createInstance(String className) { try { Class clazz = Class.forName("com.bgsoftware.wildloaders.hooks." + className);