Compare commits

..

No commits in common. "master" and "v3.5.0" have entirely different histories.

7 changed files with 41 additions and 93 deletions

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>mineverse.Aust1n46.chat</groupId>
<artifactId>VentureChat</artifactId>
<version>3.7.2</version>
<version>3.5.0</version>
<url>https://bitbucket.org/Aust1n46/venturechat/src/master</url>
<scm>
<url>https://bitbucket.org/Aust1n46/venturechat/src/master</url>
@ -204,21 +204,21 @@
<dependency>
<groupId>net.md-5</groupId>
<artifactId>bungeecord-api</artifactId>
<version>1.20-R0.1-SNAPSHOT</version>
<version>1.13-SNAPSHOT</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.md-5</groupId>
<artifactId>bungeecord-api</artifactId>
<version>1.20-R0.1-SNAPSHOT</version>
<version>1.13-SNAPSHOT</version>
<type>javadoc</type>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.20-R0.1-SNAPSHOT</version>
<version>1.19-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>

View File

@ -79,17 +79,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
private static Permission permission = null;
private static Chat chat = null;
// TODO: This won't be so poorly done in the 4.0.0 branch I promise...
public static boolean isConnectedToProxy() {
try {
final MineverseChat plugin = MineverseChat.getInstance();
return (plugin.getServer().spigot().getConfig().getBoolean("settings.bungeecord")
|| plugin.getServer().spigot().getPaperConfig().getBoolean("settings.velocity-support.enabled")
|| plugin.getServer().spigot().getPaperConfig().getBoolean("proxies.velocity.enabled"));
} catch (final NoSuchMethodError ignored) {} // Thrown if server isn't Paper.
return false;
}
@Override
public void onEnable() {
ccInfo = new ChatChannelInfo();
@ -137,11 +126,9 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Registering Listeners"));
Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Attaching to Executors"));
if (MineverseChat.isConnectedToProxy()) {
Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Establishing BungeeCord"));
Bukkit.getMessenger().registerOutgoingPluginChannel(this, PLUGIN_MESSAGING_CHANNEL);
Bukkit.getMessenger().registerIncomingPluginChannel(this, PLUGIN_MESSAGING_CHANNEL, this);
}
PluginManager pluginManager = getServer().getPluginManager();
if(pluginManager.isPluginEnabled("Towny")) {
@ -376,9 +363,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
@Override
public void onPluginMessageReceived(String channel, Player player, byte[] inputStream) {
if (!MineverseChat.isConnectedToProxy()) {
return;
}
if(!channel.equals(PLUGIN_MESSAGING_CHANNEL)) {
return;
}

View File

@ -73,7 +73,10 @@ public class LoginListener implements Listener {
}
}
if (MineverseChat.isConnectedToProxy()) {
try {
if(plugin.getServer().spigot().getConfig().getBoolean("settings.bungeecord")
|| plugin.getServer().spigot().getPaperConfig().getBoolean("settings.velocity-support.enabled")
|| plugin.getServer().spigot().getPaperConfig().getBoolean("proxies.velocity.enabled")) {
long delayInTicks = 20L;
final MineverseChatPlayer sync = mcp;
plugin.getServer().getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
@ -83,4 +86,8 @@ public class LoginListener implements Listener {
}, delayInTicks);
}
}
catch(NoSuchMethodError exception) { // Thrown if server isn't Paper.
// Do nothing
}
}
}

View File

@ -105,9 +105,6 @@ public class VentureChatBungee extends Plugin implements Listener, VentureChatPr
if(!event.getTag().equals(VentureChatProxy.PLUGIN_MESSAGING_CHANNEL_STRING) && !event.getTag().contains("viaversion:")) {
return;
}
// Critical to prevent client from sending or receiving messages
event.setCancelled(true);
if(!(event.getSender() instanceof Server)) {
return;
}

View File

@ -134,14 +134,12 @@ public class VentureChatVelocity implements VentureChatProxySource {
if(!channelIdentifierId.equals(VentureChatProxy.PLUGIN_MESSAGING_CHANNEL_STRING) && !channelIdentifierId.contains("viaversion:")) {
return;
}
// Critical to prevent client from sending or receiving messages
event.setResult(ForwardResult.handled());
if(!(event.getSource() instanceof ServerConnection)) {
return;
}
String serverName = ((ServerConnection) event.getSource()).getServerInfo().getName();
VentureChatProxy.onPluginMessage(event.getData(), serverName, this);
event.setResult(ForwardResult.handled());
}
@Override

View File

@ -190,8 +190,8 @@ public class Format {
if (ChatColor.stripColor(link).contains("https://"))
https = "s";
temp += convertToJsonColors(lastCode + link,
",\"underlined\":" + underlineURLs()
+ ",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"http" + https + "://"
",\"underlined\":\"" + underlineURLs()
+ "\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"http" + https + "://"
+ ChatColor.stripColor(link.replace("http://", "").replace("https://", ""))
+ "\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":["
+ convertToJsonColors(lastCode + link) + "]}}")
@ -343,35 +343,15 @@ public class Format {
underlined = false;
}
if (bold)
if (VersionHandler.isAtLeast_1_20_4()) {
modifier += ",\"bold\":true";
} else {
modifier += ",\"bold\":\"true\"";
}
if (obfuscated)
if (VersionHandler.isAtLeast_1_20_4()) {
modifier += ",\"obfuscated\":true";
} else {
modifier += ",\"obfuscated\":\"true\"";
}
if (italic)
if (VersionHandler.isAtLeast_1_20_4()) {
modifier += ",\"italic\":true";
} else {
modifier += ",\"italic\":\"true\"";
}
if (underlined)
if (VersionHandler.isAtLeast_1_20_4()) {
modifier += ",\"underlined\":true";
} else {
modifier += ",\"underlined\":\"true\"";
}
if (strikethrough)
if (VersionHandler.isAtLeast_1_20_4()) {
modifier += ",\"strikethrough\":true";
} else {
modifier += ",\"strikethrough\":\"true\"";
}
remaining = remaining.substring(colorLength);
colorLength = LEGACY_COLOR_CODE_LENGTH;
indexNextColor = remaining.indexOf(BUKKIT_COLOR_CODE_PREFIX);
@ -468,20 +448,16 @@ public class Format {
public static PacketContainer createPacketPlayOutChat(String json) {
final PacketContainer container;
if (VersionHandler.isAtLeast_1_20_4()) { // 1.20.4+
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getChatComponents().write(0, WrappedChatComponent.fromJson(json));
container.getBooleans().write(0, false);
} else if (VersionHandler.isAbove_1_19()) { // 1.19.1 -> 1.20.3
if (VersionHandler.isAbove_1_19()) {
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getStrings().write(0, json);
container.getBooleans().write(0, false);
} else if (VersionHandler.isUnder_1_19()) { // 1.7 -> 1.19
} else if (VersionHandler.isUnder_1_19()) {
WrappedChatComponent component = WrappedChatComponent.fromJson(json);
container = new PacketContainer(PacketType.Play.Server.CHAT);
container.getModifier().writeDefaults();
container.getChatComponents().write(0, component);
} else { // 1.19
} else {
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getStrings().write(0, json);
container.getIntegers().write(0, 1);
@ -491,19 +467,15 @@ public class Format {
public static PacketContainer createPacketPlayOutChat(WrappedChatComponent component) {
final PacketContainer container;
if (VersionHandler.isAtLeast_1_20_4()) { // 1.20.4+
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getChatComponents().write(0, component);
container.getBooleans().write(0, false);
} else if (VersionHandler.isAbove_1_19()) { // 1.19.1 -> 1.20.3
if (VersionHandler.isAbove_1_19()) {
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getStrings().write(0, component.getJson());
container.getBooleans().write(0, false);
} else if (VersionHandler.isUnder_1_19()) { // 1.7 -> 1.19
} else if (VersionHandler.isUnder_1_19()) {
container = new PacketContainer(PacketType.Play.Server.CHAT);
container.getModifier().writeDefaults();
container.getChatComponents().write(0, component);
} else { // 1.19
} else {
container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT);
container.getStrings().write(0, component.getJson());
container.getIntegers().write(0, 1);
@ -811,13 +783,8 @@ public class Format {
.replace(")", "\\)").replace("|", "\\|").replace("+", "\\+").replace("*", "\\*");
}
public static String underlineURLs() {
final boolean configValue = getInstance().getConfig().getBoolean("underlineurls", true);
if (VersionHandler.isAtLeast_1_20_4()) {
return String.valueOf(configValue);
} else {
return "\"" + configValue + "\"";
}
public static boolean underlineURLs() {
return getInstance().getConfig().getBoolean("underlineurls", true);
}
public static String parseTimeStringFromMillis(long millis) {

View File

@ -7,7 +7,6 @@ public final class VersionHandler {
public static final MinecraftVersion SERVER_VERSION = MinecraftVersion.getCurrentVersion();
private static final MinecraftVersion MC1_19 = new MinecraftVersion(1, 19, 0);
private static final MinecraftVersion MC1_19_1 = new MinecraftVersion(1, 19, 1);
private static final MinecraftVersion MC1_20_4 = new MinecraftVersion(1, 20, 4);
private VersionHandler() {
}
@ -75,8 +74,4 @@ public final class VersionHandler {
public static boolean isAbove_1_19() {
return SERVER_VERSION.isAtLeast(MC1_19_1);
}
public static boolean isAtLeast_1_20_4() {
return SERVER_VERSION.isAtLeast(MC1_20_4);
}
}