Improved MiniMessage integration
Removed some legacy color usages in components
This commit is contained in:
parent
a7f97ea105
commit
25d0fdaa29
7
pom.xml
7
pom.xml
@ -157,7 +157,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.velocitypowered</groupId>
|
<groupId>com.velocitypowered</groupId>
|
||||||
<artifactId>velocity-api</artifactId>
|
<artifactId>velocity-api</artifactId>
|
||||||
<version>3.1.1</version>
|
<version>3.1.2-SNAPSHOT</version>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -166,10 +166,5 @@
|
|||||||
<version>5.4</version>
|
<version>5.4</version>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>net.kyori</groupId>
|
|
||||||
<artifactId>adventure-text-minimessage</artifactId>
|
|
||||||
<version>4.12.0</version>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
@ -1,10 +1,6 @@
|
|||||||
package me.feusalamander.vmessage;
|
package me.feusalamander.vmessage;
|
||||||
|
|
||||||
import com.moandjiezana.toml.Toml;
|
import com.moandjiezana.toml.Toml;
|
||||||
import com.velocitypowered.api.command.CommandSource;
|
|
||||||
import com.velocitypowered.api.command.SimpleCommand;
|
|
||||||
import com.velocitypowered.api.proxy.Player;
|
|
||||||
import net.kyori.adventure.text.Component;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
@ -2,24 +2,19 @@ package me.feusalamander.vmessage;
|
|||||||
|
|
||||||
import com.velocitypowered.api.event.Subscribe;
|
import com.velocitypowered.api.event.Subscribe;
|
||||||
import com.velocitypowered.api.event.connection.DisconnectEvent;
|
import com.velocitypowered.api.event.connection.DisconnectEvent;
|
||||||
import com.velocitypowered.api.event.connection.PostLoginEvent;
|
|
||||||
import com.velocitypowered.api.event.connection.PreLoginEvent;
|
|
||||||
import com.velocitypowered.api.event.player.PlayerChatEvent;
|
import com.velocitypowered.api.event.player.PlayerChatEvent;
|
||||||
import com.velocitypowered.api.event.player.ServerConnectedEvent;
|
import com.velocitypowered.api.event.player.ServerConnectedEvent;
|
||||||
import com.velocitypowered.api.event.player.TabCompleteEvent;
|
|
||||||
import com.velocitypowered.api.proxy.LoginPhaseConnection;
|
|
||||||
import com.velocitypowered.api.proxy.Player;
|
import com.velocitypowered.api.proxy.Player;
|
||||||
import com.velocitypowered.api.proxy.ProxyServer;
|
import com.velocitypowered.api.proxy.ProxyServer;
|
||||||
import com.velocitypowered.api.proxy.ServerConnection;
|
import com.velocitypowered.api.proxy.ServerConnection;
|
||||||
import com.velocitypowered.api.proxy.server.RegisteredServer;
|
import com.velocitypowered.api.proxy.server.RegisteredServer;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
import net.kyori.adventure.text.minimessage.MiniMessage;
|
import net.kyori.adventure.text.minimessage.MiniMessage;
|
||||||
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||||
import net.luckperms.api.LuckPerms;
|
import net.luckperms.api.LuckPerms;
|
||||||
import net.luckperms.api.LuckPermsProvider;
|
import net.luckperms.api.LuckPermsProvider;
|
||||||
import net.luckperms.api.model.user.User;
|
import net.luckperms.api.model.user.User;
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
@ -48,6 +43,7 @@ public final class Listeners {
|
|||||||
}
|
}
|
||||||
message(e.getPlayer(), e.getMessage());
|
message(e.getPlayer(), e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Subscribe
|
@Subscribe
|
||||||
private void onLeave(DisconnectEvent e) {
|
private void onLeave(DisconnectEvent e) {
|
||||||
if (!configuration.isLeaveEnabled()) {
|
if (!configuration.isLeaveEnabled()) {
|
||||||
@ -63,7 +59,7 @@ public final class Listeners {
|
|||||||
message = luckperms(message, p);
|
message = luckperms(message, p);
|
||||||
}
|
}
|
||||||
if (configuration.isMinimessageEnabled()) {
|
if (configuration.isMinimessageEnabled()) {
|
||||||
proxyServer.sendMessage(mm.deserialize(message.replaceAll("§", "")));
|
proxyServer.sendMessage(mm.deserialize(message.replace("§", "")));
|
||||||
} else {
|
} else {
|
||||||
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
||||||
}
|
}
|
||||||
@ -91,7 +87,7 @@ public final class Listeners {
|
|||||||
message = luckperms(message, p);
|
message = luckperms(message, p);
|
||||||
}
|
}
|
||||||
if (configuration.isMinimessageEnabled()) {
|
if (configuration.isMinimessageEnabled()) {
|
||||||
proxyServer.sendMessage(mm.deserialize(message.replaceAll("§", "")));
|
proxyServer.sendMessage(mm.deserialize(message.replace("§", "")));
|
||||||
} else {
|
} else {
|
||||||
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
||||||
}
|
}
|
||||||
@ -104,12 +100,13 @@ public final class Listeners {
|
|||||||
message = luckperms(message, p);
|
message = luckperms(message, p);
|
||||||
}
|
}
|
||||||
if (configuration.isMinimessageEnabled()) {
|
if (configuration.isMinimessageEnabled()) {
|
||||||
proxyServer.sendMessage(mm.deserialize(message.replaceAll("§", "")));
|
proxyServer.sendMessage(mm.deserialize(message.replace("§", "")));
|
||||||
} else {
|
} else {
|
||||||
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
proxyServer.sendMessage(SERIALIZER.deserialize(message));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String luckperms(String message, Player p) {
|
private String luckperms(String message, Player p) {
|
||||||
User user = luckPermsAPI.getPlayerAdapter(Player.class).getUser(p);
|
User user = luckPermsAPI.getPlayerAdapter(Player.class).getUser(p);
|
||||||
if (message.contains("#prefix#")) {
|
if (message.contains("#prefix#")) {
|
||||||
@ -120,6 +117,7 @@ public final class Listeners {
|
|||||||
}
|
}
|
||||||
return message;
|
return message;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void message(Player p, String m) {
|
public void message(Player p, String m) {
|
||||||
String message = configuration.getMessageFormat()
|
String message = configuration.getMessageFormat()
|
||||||
.replace("#player#", p.getUsername())
|
.replace("#player#", p.getUsername())
|
||||||
@ -128,14 +126,15 @@ public final class Listeners {
|
|||||||
if (luckPermsAPI != null) {
|
if (luckPermsAPI != null) {
|
||||||
message = luckperms(message, p);
|
message = luckperms(message, p);
|
||||||
}
|
}
|
||||||
final String finalMessage = message;
|
final Component finalMessage;
|
||||||
|
if (configuration.isMinimessageEnabled()) {
|
||||||
|
finalMessage = mm.deserialize(message.replace("§", ""));
|
||||||
|
} else {
|
||||||
|
finalMessage = SERIALIZER.deserialize(message);
|
||||||
|
}
|
||||||
proxyServer.getAllServers().forEach(server -> {
|
proxyServer.getAllServers().forEach(server -> {
|
||||||
if (!Objects.equals(p.getCurrentServer().map(ServerConnection::getServerInfo).orElse(null), server.getServerInfo())) {
|
if (!Objects.equals(p.getCurrentServer().map(ServerConnection::getServerInfo).orElse(null), server.getServerInfo())) {
|
||||||
if(configuration.isMinimessageEnabled()){
|
server.sendMessage(finalMessage);
|
||||||
server.sendMessage(mm.deserialize(finalMessage.replaceAll("§", "")));
|
|
||||||
}else{
|
|
||||||
server.sendMessage(SERIALIZER.deserialize(finalMessage));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
package me.feusalamander.vmessage;
|
package me.feusalamander.vmessage;
|
||||||
|
|
||||||
import com.velocitypowered.api.command.CommandSource;
|
import com.velocitypowered.api.command.CommandSource;
|
||||||
import com.velocitypowered.api.command.SimpleCommand;
|
import com.velocitypowered.api.command.SimpleCommand;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.kyori.adventure.text.format.TextColor;
|
import net.kyori.adventure.text.format.NamedTextColor;
|
||||||
|
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.util.concurrent.CompletableFuture;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public final class ReloadCommand implements SimpleCommand {
|
public final class ReloadCommand implements SimpleCommand {
|
||||||
final Path dataDirectory;
|
final Path dataDirectory;
|
||||||
final Configuration config;
|
final Configuration config;
|
||||||
|
|
||||||
ReloadCommand(Path dataDirectory, Configuration config) {
|
ReloadCommand(Path dataDirectory, Configuration config) {
|
||||||
this.dataDirectory = dataDirectory;
|
this.dataDirectory = dataDirectory;
|
||||||
this.config = config;
|
this.config = config;
|
||||||
@ -21,13 +21,13 @@ public final class ReloadCommand implements SimpleCommand {
|
|||||||
CommandSource source = invocation.source();
|
CommandSource source = invocation.source();
|
||||||
String[] args = invocation.arguments();
|
String[] args = invocation.arguments();
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
source.sendMessage(Component.text("§cUsage: /vmessage reload"));
|
source.sendMessage(Component.text("Usage: /vmessage reload", NamedTextColor.RED));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String s = args[0];
|
String s = args[0];
|
||||||
if (s.equalsIgnoreCase("reload")) {
|
if (s.equalsIgnoreCase("reload")) {
|
||||||
if (!source.hasPermission("*")) {
|
if (!source.hasPermission("*")) {
|
||||||
source.sendMessage(Component.text("§cYou don't have the permission to do that"));
|
source.sendMessage(Component.text("You don't have the permission to do that", NamedTextColor.RED));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
config.reload();
|
config.reload();
|
||||||
|
@ -4,16 +4,15 @@ import com.velocitypowered.api.command.CommandSource;
|
|||||||
import com.velocitypowered.api.command.SimpleCommand;
|
import com.velocitypowered.api.command.SimpleCommand;
|
||||||
import com.velocitypowered.api.proxy.Player;
|
import com.velocitypowered.api.proxy.Player;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
|
import net.kyori.adventure.text.format.NamedTextColor;
|
||||||
import java.nio.file.Path;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.concurrent.CompletableFuture;
|
|
||||||
|
|
||||||
public final class SendCommand implements SimpleCommand {
|
public final class SendCommand implements SimpleCommand {
|
||||||
VMessage main;
|
VMessage main;
|
||||||
|
|
||||||
SendCommand(VMessage main) {
|
SendCommand(VMessage main) {
|
||||||
this.main = main;
|
this.main = main;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(final Invocation invocation) {
|
public void execute(final Invocation invocation) {
|
||||||
CommandSource source = invocation.source();
|
CommandSource source = invocation.source();
|
||||||
@ -22,7 +21,7 @@ public final class SendCommand implements SimpleCommand {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
source.sendMessage(Component.text("§cUsage: /sendall *your message*"));
|
source.sendMessage(Component.text("Usage: /sendall *your message*", NamedTextColor.RED));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Player p = (Player) source;
|
Player p = (Player) source;
|
||||||
|
Loading…
Reference in New Issue
Block a user