Mirror von
https://github.com/PaperMC/Velocity.git
synchronisiert 2024-11-17 05:20:14 +01:00
Try to unbreak ViaVersion a little bit.
Dieser Commit ist enthalten in:
Ursprung
742865bf0a
Commit
d805f79d9b
@ -658,17 +658,13 @@ public class ConnectedPlayer implements MinecraftConnectionAssociation, Player {
|
||||
public boolean canForwardPluginMessage(ProtocolVersion version, PluginMessage message) {
|
||||
boolean minecraftOrFmlMessage;
|
||||
|
||||
// We should _always_ pass on new channels the server wishes to register (or unregister) with
|
||||
// us.
|
||||
if (PluginMessageUtil.isRegister(message) || PluginMessageUtil.isUnregister(message)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// By default, all internal Minecraft and Forge channels are forwarded from the server.
|
||||
if (version.compareTo(ProtocolVersion.MINECRAFT_1_12_2) <= 0) {
|
||||
String channel = message.getChannel();
|
||||
minecraftOrFmlMessage = channel.startsWith("MC|") || channel
|
||||
.startsWith(LegacyForgeConstants.FORGE_LEGACY_HANDSHAKE_CHANNEL);
|
||||
minecraftOrFmlMessage = channel.startsWith("MC|")
|
||||
|| channel.startsWith(LegacyForgeConstants.FORGE_LEGACY_HANDSHAKE_CHANNEL)
|
||||
|| PluginMessageUtil.isLegacyRegister(message)
|
||||
|| PluginMessageUtil.isLegacyUnregister(message);
|
||||
} else {
|
||||
minecraftOrFmlMessage = message.getChannel().startsWith("minecraft:");
|
||||
}
|
||||
|
@ -61,6 +61,27 @@ public class PluginMessageUtil {
|
||||
.equals(UNREGISTER_CHANNEL);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether or not this plugin message is a legacy (<1.13) registration plugin message.
|
||||
* @param message the plugin message
|
||||
* @return whether this is a legacy register message
|
||||
*/
|
||||
public static boolean isLegacyRegister(PluginMessage message) {
|
||||
checkNotNull(message, "message");
|
||||
return message.getChannel().equals(REGISTER_CHANNEL_LEGACY);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether or not this plugin message is a legacy (<1.13) unregistration plugin
|
||||
* message.
|
||||
* @param message the plugin message
|
||||
* @return whether this is a legacy unregister message
|
||||
*/
|
||||
public static boolean isLegacyUnregister(PluginMessage message) {
|
||||
checkNotNull(message, "message");
|
||||
return message.getChannel().equals(UNREGISTER_CHANNEL_LEGACY);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetches all the channels in a register or unregister plugin message.
|
||||
* @param message the message to get the channels from
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren