Waterfall/BungeeCord-Patches/0053-Allow-to-disable-tablist-rewrite.patch
_tomcraft 85c0a35f0b
Updated Upstream (BungeeCord) (#695)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

BungeeCord Changes:
6613aaea Add test fix for library classes being visible to non-dependent plugins
53ce6b93 #3200: Fix protocol for 21w40a
d8e29384 #2466: Use switch in "BungeeCord" plugin message handling
5cf869df #3198: Remove terminally deprecated SecurityManager
f26f7d88 Add optional 1.18 (21w40a) snapshot protocol support
2021-10-09 10:43:12 +01:00

76 lines
3.4 KiB
Diff

From a925d96a2e97f8523665c76e57b2a2c6e0dddc4f Mon Sep 17 00:00:00 2001
From: xDark <aleshkailyashevich@gmail.com>
Date: Fri, 31 May 2019 08:11:31 +0300
Subject: [PATCH] Allow to disable tablist rewrite
diff --git a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
index 4a198ee9..d69463f0 100644
--- a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
+++ b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
@@ -255,4 +255,10 @@ public interface ProxyConfig
* @return Should we disable entity metadata rewriting?
*/
boolean isDisableEntityMetadataRewrite();
+
+ /**
+ * Whether tablist rewriting should be disabled or not
+ * @return {@code true} if tablist rewriting is disabled, {@code false} otherwise
+ */
+ boolean isDisableTabListRewrite();
}
diff --git a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
index e860214f..527f310e 100644
--- a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
+++ b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
@@ -43,6 +43,7 @@ public class WaterfallConfiguration extends Configuration {
private boolean disableModernTabLimiter = true;
private boolean disableEntityMetadataRewrite = false;
+ private boolean disableTabListRewrite = false;
@Override
public void load() {
@@ -56,6 +57,7 @@ public class WaterfallConfiguration extends Configuration {
tabThrottle = config.getInt("throttling.tab_complete", tabThrottle);
disableModernTabLimiter = config.getBoolean("disable_modern_tab_limiter", disableModernTabLimiter);
disableEntityMetadataRewrite = config.getBoolean("disable_entity_metadata_rewrite", disableEntityMetadataRewrite);
+ disableTabListRewrite = config.getBoolean("disable_tab_list_rewrite", disableTabListRewrite);
}
@Override
@@ -87,4 +89,9 @@ public class WaterfallConfiguration extends Configuration {
public boolean isDisableEntityMetadataRewrite() {
return disableEntityMetadataRewrite;
}
+
+ @Override
+ public boolean isDisableTabListRewrite() {
+ return disableTabListRewrite;
+ }
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 4c70fc90..ef6214b1 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -162,8 +162,14 @@ public class DownstreamBridge extends PacketHandler
@Override
public void handle(PlayerListItem playerList) throws Exception
{
- con.getTabListHandler().onUpdate( TabList.rewrite( playerList ) );
- throw CancelSendSignal.INSTANCE; // Always throw because of profile rewriting
+ //Waterfall start
+ boolean skipRewrites = bungee.getConfig().isDisableTabListRewrite();
+ con.getTabListHandler().onUpdate( skipRewrites ? playerList : TabList.rewrite( playerList ) );
+ if ( !skipRewrites )
+ {
+ throw CancelSendSignal.INSTANCE; // Only throw if profile rewriting is enabled
+ }
+ // Waterfall end
}
@Override
--
2.30.1 (Apple Git-130)