diff --git a/paper-api/src/main/java/io/papermc/paper/configuration/ServerConfiguration.java b/paper-api/src/main/java/io/papermc/paper/configuration/ServerConfiguration.java index 86d1b609b8..a58e241945 100644 --- a/paper-api/src/main/java/io/papermc/paper/configuration/ServerConfiguration.java +++ b/paper-api/src/main/java/io/papermc/paper/configuration/ServerConfiguration.java @@ -21,4 +21,13 @@ public interface ServerConfiguration { * @return whether the server is in online mode or behind a proxy configured for online mode */ boolean isProxyOnlineMode(); + + /** + * Gets whether the server is configured to work behind a proxy. + *

+ * This returns true if either Velocity or BungeeCord is enabled. + * + * @return whether the server is configured to work behind a proxy + */ + boolean isProxyEnabled(); } diff --git a/paper-server/src/main/java/io/papermc/paper/configuration/PaperServerConfiguration.java b/paper-server/src/main/java/io/papermc/paper/configuration/PaperServerConfiguration.java index 14d0965f4c..b957d58371 100644 --- a/paper-server/src/main/java/io/papermc/paper/configuration/PaperServerConfiguration.java +++ b/paper-server/src/main/java/io/papermc/paper/configuration/PaperServerConfiguration.java @@ -1,9 +1,16 @@ package io.papermc.paper.configuration; +import org.spigotmc.SpigotConfig; + public class PaperServerConfiguration implements ServerConfiguration { @Override public boolean isProxyOnlineMode() { return GlobalConfiguration.get().proxies.isProxyOnlineMode(); } + + @Override + public boolean isProxyEnabled() { + return GlobalConfiguration.get().proxies.velocity.enabled || SpigotConfig.bungee; + } }