Fix build!

This commit is contained in:
destro174 2022-02-19 15:14:41 +01:00
parent ab852cf55e
commit 342957ef68
23 changed files with 184 additions and 166 deletions

View File

@ -3,7 +3,9 @@ plugins {
}
dependencies {
compileOnly("com.alttd:Galaxy-API:1.18.1-R0.1-SNAPSHOT")
compileOnly("com.alttd:Galaxy-API:1.18.1-R0.1-SNAPSHOT") {
exclude("net.kyori.adventure.text.minimessage")
}
compileOnly("net.kyori:adventure-text-minimessage:4.10.0-SNAPSHOT") // Minimessage
compileOnly("org.spongepowered:configurate-yaml:4.1.2") // Configurate
compileOnly("net.luckperms:api:5.3") // Luckperms

View File

@ -4,9 +4,8 @@ import com.alttd.chat.ChatAPI;
import com.alttd.chat.config.Config;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.placeholder.PlaceholderResolver;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import net.luckperms.api.LuckPerms;
import net.luckperms.api.model.group.Group;
@ -245,24 +244,24 @@ public class Utility {
return getMiniMessage().deserialize(message);
}
public static Component parseMiniMessage(String message, Map<String, Replacement<?>> placeholders) {
public static Component parseMiniMessage(String message, TagResolver placeholders) {
if (placeholders == null) {
return getMiniMessage().deserialize(message);
} else {
return getMiniMessage().deserialize(message, PlaceholderResolver.map(placeholders));
return getMiniMessage().deserialize(message, placeholders);
}
}
public static Component parseMiniMessage(String message, Placeholder<?> ... placeholders) {
public static Component parseMiniMessage(String message, TagResolver ... placeholders) {
if (placeholders == null) {
return getMiniMessage().deserialize(message);
} else {
return getMiniMessage().deserialize(message, PlaceholderResolver.placeholders(placeholders));
return getMiniMessage().deserialize(message, TagResolver.resolver(placeholders));
}
}
public static String stripTokens(String input) {
return getMiniMessage().stripTokens(input);
return getMiniMessage().stripTags(input);
}
public static MiniMessage getMiniMessage() {

View File

@ -7,6 +7,19 @@ allprojects {
group = "com.alttd.chat"
version = "1.0.0-SNAPSHOT"
description = "All in one minecraft chat plugin"
repositories {
mavenCentral()
maven("https://repo.destro.xyz/snapshots") // Altitude - Galaxy
maven("https://oss.sonatype.org/content/groups/public/") // Adventure
maven("https://oss.sonatype.org/content/repositories/snapshots/") // Minimessage
maven("https://oss.sonatype.org/content/repositories/") // Minimessage
maven("https://nexus.velocitypowered.com/repository/") // Velocity
maven("https://nexus.velocitypowered.com/repository/maven-public/") // Velocity
maven("https://repo.spongepowered.org/maven") // Configurate
maven("https://repo.extendedclip.com/content/repositories/placeholderapi/") // Papi
maven("https://jitpack.io")
}
}
subprojects {

View File

@ -5,7 +5,9 @@ plugins {
dependencies {
implementation(project(":api")) // API
compileOnly("com.alttd:Galaxy-API:1.18.1-R0.1-SNAPSHOT") // Galaxy
compileOnly("com.alttd:Galaxy-API:1.18.1-R0.1-SNAPSHOT") { // Galaxy
exclude("net.kyori.adventure.text.minimessage")
}
compileOnly("net.kyori:adventure-text-minimessage:4.10.0-SNAPSHOT") // Minimessage
compileOnly("com.gitlab.ruany:LiteBansAPI:0.3.5") // move to proxy
}

View File

@ -3,8 +3,7 @@ package com.alttd.chat.commands;
import com.alttd.chat.util.Utility;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.placeholder.PlaceholderResolver;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
@ -26,9 +25,9 @@ public class ChatClear implements CommandExecutor {
if (!player.hasPermission("chat.clear-bypass"))
player.sendMessage(component);
Bukkit.getServer().sendMessage(miniMessage.deserialize(
"<gold><player> cleared chat.</gold>", PlaceholderResolver.placeholders(
Placeholder.component("player", miniMessage.deserialize(sender.getName()))
)));
"<gold><player> cleared chat.</gold>",
Placeholder.component("player",sender.name()))
);
return true;
}
}

View File

@ -12,7 +12,8 @@ import com.google.common.io.ByteArrayDataOutput;
import com.google.common.io.ByteStreams;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
import org.bukkit.Bukkit;
import org.bukkit.Material;
@ -53,11 +54,12 @@ public class ChatHandler {
updatedMessage = Utility.formatText(updatedMessage);
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("message", Replacement.miniMessage(updatedMessage));
placeholders.put("sendername", Replacement.miniMessage(player.getName()));
placeholders.put("receivername", Replacement.miniMessage(target));
placeholders.put("[i]", Replacement.component(itemComponent(player.getInventory().getItemInMainHand())));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("message", updatedMessage),
Placeholder.component("sendername", player.name()),
Placeholder.parsed("receivername", target),
Placeholder.component("[i]", itemComponent(player.getInventory().getItemInMainHand()))
);
Component component = Utility.parseMiniMessage("<message>", placeholders);
@ -83,9 +85,7 @@ public class ChatHandler {
long timeLeft = TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis() - user.getGcCooldown());
if(timeLeft <= Config.GCCOOLDOWN && !player.hasPermission("chat.globalchat.cooldownbypass")) { // player is on cooldown and should wait x seconds
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("cooldown", Replacement.miniMessage(Config.GCCOOLDOWN-timeLeft+""));
player.sendMessage(Utility.parseMiniMessage(Config.GCONCOOLDOWN, placeholders));
player.sendMessage(Utility.parseMiniMessage(Config.GCONCOOLDOWN, Placeholder.parsed("cooldown", Config.GCCOOLDOWN-timeLeft+"")));
return;
}
@ -108,13 +108,13 @@ public class ChatHandler {
updatedMessage = updatedMessage.replace("[i]", "<[i]>");
updatedMessage = Utility.formatText(updatedMessage);
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.component(senderName));
placeholders.put("prefix", Replacement.component(prefix));
placeholders.put("message", Replacement.miniMessage(updatedMessage));
placeholders.put("server", Replacement.miniMessage(Bukkit.getServerName()));
placeholders.put("[i]", Replacement.component(itemComponent(player.getInventory().getItemInMainHand())));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("sender", senderName),
Placeholder.component("prefix", prefix),
Placeholder.parsed("message", updatedMessage),
Placeholder.parsed("server", Bukkit.getServerName()),
Placeholder.component("[i]]", itemComponent(player.getInventory().getItemInMainHand()))
);
Component component = Utility.parseMiniMessage(Config.GCFORMAT, placeholders);
user.setGcCooldown(System.currentTimeMillis());
@ -146,13 +146,13 @@ public class ChatHandler {
updatedMessage = Utility.formatText(updatedMessage);
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.component(senderName));
placeholders.put("message", Replacement.miniMessage(updatedMessage));
placeholders.put("server", Replacement.miniMessage(Bukkit.getServerName()));
placeholders.put("channel", Replacement.miniMessage(channel.getChannelName()));
placeholders.put("[i]", Replacement.component(itemComponent(player.getInventory().getItemInMainHand())));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("sender", senderName),
Placeholder.parsed("message", updatedMessage),
Placeholder.parsed("server", Bukkit.getServerName()),
Placeholder.parsed("channel", channel.getChannelName()),
Placeholder.component("[i]]", itemComponent(player.getInventory().getItemInMainHand()))
);
Component component = Utility.parseMiniMessage(channel.getFormat(), placeholders);
if (channel.isProxy()) {

View File

@ -12,8 +12,8 @@ import io.papermc.paper.chat.ChatRenderer;
import io.papermc.paper.event.player.AsyncChatEvent;
import net.kyori.adventure.audience.Audience;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.serializer.plain.PlainComponentSerializer;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@ -21,7 +21,6 @@ import org.bukkit.event.Listener;
import org.jetbrains.annotations.NotNull;
import java.util.HashMap;
import java.util.Map;
public class ChatListener implements Listener, ChatRenderer {
@ -62,10 +61,10 @@ public class ChatListener implements Listener, ChatRenderer {
message = message.replace("[i]", "<[i]>"); // end of todo
message = Utility.formatText(message);
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("message", Replacement.miniMessage(message));
placeholders.put("[i]", Replacement.component(ChatHandler.itemComponent(player.getInventory().getItemInMainHand())));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("message", message),
Placeholder.component("[i]]", ChatHandler.itemComponent(player.getInventory().getItemInMainHand()))
);
Component component = Utility.parseMiniMessage("<message>", placeholders);
@ -76,14 +75,14 @@ public class ChatListener implements Listener, ChatRenderer {
@Override
public @NotNull Component render(@NotNull Player player, @NotNull Component sourceDisplayName, @NotNull Component message, @NotNull Audience viewer) {
ChatUser user = ChatUserManager.getChatUser(player.getUniqueId());
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.component(user.getDisplayName()));
placeholders.put("sendername", Replacement.component(player.name()));
placeholders.put("prefix", Replacement.component(user.getPrefix()));
placeholders.put("prefixall", Replacement.component(user.getPrefixAll()));
placeholders.put("staffprefix", Replacement.component(user.getStaffPrefix()));
placeholders.put("message", Replacement.component(message));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("sender", user.getDisplayName()),
Placeholder.component("sendername", player.name()),
Placeholder.component("prefix", user.getPrefix()),
Placeholder.component("prefixall", user.getPrefixAll()),
Placeholder.component("staffprefix", user.getStaffPrefix()),
Placeholder.component("message ", message)
);
return Utility.parseMiniMessage(Config.CHATFORMAT, placeholders);
}

View File

@ -2,22 +2,20 @@ package com.alttd.chat.util;
import com.alttd.chat.config.Config;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.serializer.plain.PlainComponentSerializer;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import java.util.HashMap;
import java.util.Map;
public class GalaxyUtility {
public static void sendBlockedNotification(String prefix, Player player, String input, String target) {
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("prefix", Replacement.miniMessage(prefix));
placeholders.put("displayname", Replacement.miniMessage(Utility.getDisplayName(player.getUniqueId(), player.getName())));
placeholders.put("target", Replacement.miniMessage((target.isEmpty() ? " tried to say: " : " -> " + target + ": ")));
placeholders.put("input", Replacement.miniMessage(input));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("prefix", prefix),
Placeholder.parsed("displayname", Utility.getDisplayName(player.getUniqueId(), player.getName())),
Placeholder.parsed("target", (target.isEmpty() ? " tried to say: " : " -> " + target + ": ")),
Placeholder.parsed("input", input)
);
Component blockedNotification = Utility.parseMiniMessage(Config.NOTIFICATIONFORMAT, placeholders);
Bukkit.getOnlinePlayers().forEach(a ->{

View File

@ -4,21 +4,21 @@ include(":api")
include(":galaxy")
include(":velocity")
dependencyResolutionManagement {
repositories {
mavenLocal()
mavenCentral()
maven("https://repo.destro.xyz/snapshots") // Altitude - Galaxy
maven("https://oss.sonatype.org/content/groups/public/") // Adventure
maven("https://oss.sonatype.org/content/repositories/snapshots/") // Minimessage
maven("https://nexus.velocitypowered.com/repository/") // Velocity
maven("https://nexus.velocitypowered.com/repository/maven-public/") // Velocity
maven("https://repo.spongepowered.org/maven") // Configurate
maven("https://repo.extendedclip.com/content/repositories/placeholderapi/") // Papi
maven("https://jitpack.io")
}
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
}
//dependencyResolutionManagement {
// repositories {
// mavenLocal()
// mavenCentral()
// maven("https://repo.destro.xyz/snapshots") // Altitude - Galaxy
// maven("https://oss.sonatype.org/content/groups/public/") // Adventure
// maven("https://oss.sonatype.org/content/repositories/snapshots/") // Minimessage
// maven("https://nexus.velocitypowered.com/repository/") // Velocity
// maven("https://nexus.velocitypowered.com/repository/maven-public/") // Velocity
// maven("https://repo.spongepowered.org/maven") // Configurate
// maven("https://repo.extendedclip.com/content/repositories/placeholderapi/") // Papi
// maven("https://jitpack.io")
// }
// repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
//}
pluginManagement {
repositories {

View File

@ -8,7 +8,7 @@ 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 net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.Arrays;

View File

@ -1,6 +1,7 @@
package com.alttd.velocitychat.commands;
import com.alttd.chat.config.Config;
import com.alttd.chat.util.Utility;
import com.alttd.velocitychat.VelocityChat;
import com.mojang.brigadier.arguments.StringArgumentType;
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
@ -21,8 +22,6 @@ import java.util.Optional;
public class Report {
private static final MiniMessage miniMessage = MiniMessage.miniMessage();
public Report(ProxyServer proxyServer) {
LiteralCommandNode<CommandSource> command = LiteralArgumentBuilder
.<CommandSource>literal("report")
@ -46,7 +45,7 @@ public class Report {
.<CommandSource, String>argument("report", StringArgumentType.greedyString())
.executes(context -> {
if (!(context.getSource() instanceof Player player)) {
context.getSource().sendMessage(miniMessage.deserialize(Config.NO_CONSOLE));
context.getSource().sendMessage(Utility.parseMiniMessage(Config.NO_CONSOLE));
return 1;
}
Optional<ServerConnection> optionalServerConnection = player.getCurrentServer();

View File

@ -9,7 +9,7 @@ import com.alttd.chat.util.Utility;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -38,7 +38,7 @@ public class Create implements SubCommand {
}
if (PartyManager.getParty(args[1]) != null) {
source.sendMessage(Utility.parseMiniMessage(Config.PARTY_EXISTS,
Placeholder.miniMessage("party", args[1])
Placeholder.parsed("party", args[1])
));
return;
}
@ -47,8 +47,8 @@ public class Create implements SubCommand {
party.addUser(ChatUserManager.getChatUser(player.getUniqueId()), player.getUsername());
PartyManager.addParty(party);
source.sendMessage(Utility.parseMiniMessage(Config.CREATED_PARTY,
Placeholder.miniMessage("party_name", party.getPartyName()),
Placeholder.miniMessage("party_password", party.getPartyPassword())));
Placeholder.unparsed("party_name", party.getPartyName()),
Placeholder.unparsed("party_password", party.getPartyPassword())));
}
@Override

View File

@ -8,7 +8,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -39,7 +39,7 @@ public class Disband implements SubCommand {
return;
}
if (args.length == 1) {
source.sendMessage(Utility.parseMiniMessage(Config.DISBAND_PARTY_CONFIRM, Placeholder.miniMessage("party", party.getPartyName())));
source.sendMessage(Utility.parseMiniMessage(Config.DISBAND_PARTY_CONFIRM, Placeholder.unparsed("party", party.getPartyName())));
return;
}
if (!args[1].equalsIgnoreCase("confirm") || !args[2].equals(party.getPartyName())) {
@ -48,8 +48,8 @@ public class Disband implements SubCommand {
}
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party,
Utility.parseMiniMessage(Config.DISBANDED_PARTY,
Placeholder.miniMessage("owner", player.getUsername()),
Placeholder.miniMessage("party", party.getPartyName())
Placeholder.unparsed("owner", player.getUsername()),
Placeholder.unparsed("party", party.getPartyName())
), null);
party.delete();
}

View File

@ -9,7 +9,7 @@ import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -38,8 +38,8 @@ public class Info implements SubCommand {
}
source.sendMessage(Utility.parseMiniMessage(Config.PARTY_INFO,
Placeholder.miniMessage("party", party.getPartyName()),
Placeholder.miniMessage("password", party.getPartyPassword()),
Placeholder.unparsed("party", party.getPartyName()),
Placeholder.unparsed("password", party.getPartyPassword()),
Placeholder.component("owner", party.getPartyUser(party.getOwnerUuid()).getDisplayName()),
Placeholder.component("members", Component.join(Component.text(", "), displayNames))
));

View File

@ -8,7 +8,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -50,17 +50,17 @@ public class Invite implements SubCommand {
if (!target.isActive()) {
source.sendMessage(Utility.parseMiniMessage(Config.NOT_ONLINE,
Placeholder.miniMessage("player", target.getUsername())
Placeholder.unparsed("player", target.getUsername())
));
return;
}
target.sendMessage(Utility.parseMiniMessage(Config.JOIN_PARTY_CLICK_MESSAGE,
Placeholder.miniMessage("party", party.getPartyName()),
Placeholder.miniMessage("party_password", party.getPartyPassword())
Placeholder.unparsed("party", party.getPartyName()),
Placeholder.unparsed("party_password", party.getPartyPassword())
));
source.sendMessage(Utility.parseMiniMessage(Config.SENT_PARTY_INV,
Placeholder.miniMessage("player", target.getUsername())
Placeholder.unparsed("player", target.getUsername())
));
}

View File

@ -10,7 +10,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -46,11 +46,11 @@ public class Join implements SubCommand {
// party.addUser(ChatUserManager.getChatUser(player.getUniqueId())); //Removed until we can get nicknames to translate to colors correctly
ChatUser chatUser = ChatUserManager.getChatUser(player.getUniqueId());
party.addUser(chatUser, player.getUsername());
source.sendMessage(Utility.parseMiniMessage(Config.JOINED_PARTY, Placeholder.miniMessage("party_name", party.getPartyName())));
source.sendMessage(Utility.parseMiniMessage(Config.JOINED_PARTY, Placeholder.unparsed("party_name", party.getPartyName())));
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party,
Utility.parseMiniMessage(Config.PLAYER_JOINED_PARTY,
Placeholder.component("player_name", chatUser.getDisplayName()),
Placeholder.miniMessage("party_name", party.getPartyName())
Placeholder.unparsed("party_name", party.getPartyName())
), null);
}

View File

@ -9,7 +9,7 @@ import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.ServerConnection;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -45,8 +45,8 @@ public class Leave implements SubCommand {
source.sendMessage(Utility.parseMiniMessage(Config.NOTIFY_FINDING_NEW_OWNER));
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party,
Utility.parseMiniMessage(Config.OWNER_LEFT_PARTY,
Placeholder.miniMessage("old_owner", player.getUsername()),
Placeholder.miniMessage("new_owner", party.getPartyUser(uuid).getPlayerName())
Placeholder.unparsed("old_owner", player.getUsername()),
Placeholder.unparsed("new_owner", party.getPartyUser(uuid).getPlayerName())
), null);
} else {
party.delete();
@ -55,7 +55,7 @@ public class Leave implements SubCommand {
source.sendMessage(Utility.parseMiniMessage(Config.LEFT_PARTY));
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party,
Utility.parseMiniMessage(Config.PLAYER_LEFT_PARTY,
Placeholder.miniMessage("player_name", player.getUsername())
Placeholder.unparsed("player_name", player.getUsername())
), null);
}
}

View File

@ -9,7 +9,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -45,7 +45,7 @@ public class Name implements SubCommand {
}
if (PartyManager.getParty(args[1]) != null) {
source.sendMessage(Utility.parseMiniMessage(Config.PARTY_EXISTS,
Placeholder.miniMessage("party", args[1])
Placeholder.unparsed("party", args[1])
));
return;
}
@ -54,8 +54,8 @@ public class Name implements SubCommand {
party.setPartyName(args[1]);
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party, Utility.parseMiniMessage(Config.RENAMED_PARTY,
Placeholder.component("owner", ChatUserManager.getChatUser(player.getUniqueId()).getDisplayName()),
Placeholder.miniMessage("old_name", oldName),
Placeholder.miniMessage("new_name", args[1])
Placeholder.unparsed("old_name", oldName),
Placeholder.unparsed("new_name", args[1])
), null);
}

View File

@ -9,7 +9,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -44,15 +44,15 @@ public class Owner implements SubCommand {
PartyUser partyUser = party.getPartyUser(args[1]);
if (partyUser == null) {
source.sendMessage(Utility.parseMiniMessage(Config.NOT_A_PARTY_MEMBER,
Placeholder.miniMessage("player", args[1])
Placeholder.unparsed("player", args[1])
));
return;
}
party.setNewOwner(partyUser.getUuid());
VelocityChat.getPlugin().getChatHandler().sendPartyMessage(party,
Utility.parseMiniMessage(Config.NEW_PARTY_OWNER,
Placeholder.miniMessage("old_owner", player.getUsername()),
Placeholder.miniMessage("new_owner", partyUser.getPlayerName())
Placeholder.unparsed("old_owner", player.getUsername()),
Placeholder.unparsed("new_owner", partyUser.getPlayerName())
), null);
}

View File

@ -10,7 +10,7 @@ import com.alttd.velocitychat.VelocityChat;
import com.alttd.velocitychat.commands.SubCommand;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -50,7 +50,7 @@ public class Remove implements SubCommand {
partyUser = party.getPartyUser(args[1]);
if (partyUser == null) {
source.sendMessage(Utility.parseMiniMessage(Config.NOT_A_PARTY_MEMBER,
Placeholder.miniMessage("player", args[1])
Placeholder.unparsed("player", args[1])
));
return;
}
@ -59,7 +59,7 @@ public class Remove implements SubCommand {
partyUser = party.getPartyUser(onlinePlayer.getUniqueId());
if (partyUser == null) {
source.sendMessage(Utility.parseMiniMessage(Config.NOT_A_PARTY_MEMBER,
Placeholder.miniMessage("player", onlinePlayer.getUsername())
Placeholder.unparsed("player", onlinePlayer.getUsername())
));
return;
}
@ -73,12 +73,12 @@ public class Remove implements SubCommand {
if (onlinePlayer != null && onlinePlayer.isActive()) {
onlinePlayer.sendMessage(Utility.parseMiniMessage(Config.REMOVED_FROM_PARTY,
Placeholder.miniMessage("party", party.getPartyName())
Placeholder.unparsed("party", party.getPartyName())
));
}
source.sendMessage(Utility.parseMiniMessage(Config.REMOVED_USER_FROM_PARTY,
Placeholder.miniMessage("player", onlinePlayer == null ? partyUser.getPlayerName() : onlinePlayer.getUsername())
Placeholder.unparsed("player", onlinePlayer == null ? partyUser.getPlayerName() : onlinePlayer.getUsername())
));
}

View File

@ -17,8 +17,8 @@ import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.ServerConnection;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
import org.jetbrains.annotations.Nullable;
@ -39,13 +39,14 @@ public class ChatHandler {
Player player2 = optionalPlayer2.get();
ChatUser targetUser = ChatUserManager.getChatUser(player2.getUniqueId());
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.component(senderUser.getDisplayName()));
placeholders.put("sendername", Replacement.miniMessage(player.getUsername()));
placeholders.put("receiver", Replacement.component(targetUser.getDisplayName()));
placeholders.put("receivername", Replacement.miniMessage(player2.getUsername()));
placeholders.put("message", Replacement.component(GsonComponentSerializer.gson().deserialize(message)));
placeholders.put("server", Replacement.miniMessage(player.getCurrentServer().isPresent() ? player.getCurrentServer().get().getServerInfo().getName() : "Altitude"));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("sender", senderUser.getDisplayName()),
Placeholder.unparsed("sendername", player.getUsername()),
Placeholder.component("receiver", targetUser.getDisplayName()),
Placeholder.unparsed("receivername", player2.getUsername()),
Placeholder.component("message", GsonComponentSerializer.gson().deserialize(message)),
Placeholder.unparsed("server", player.getCurrentServer().isPresent() ? player.getCurrentServer().get().getServerInfo().getName() : "Altitude")
);
ServerConnection serverConnection;
if(player.getCurrentServer().isPresent() && player2.getCurrentServer().isPresent()) {
@ -75,11 +76,12 @@ public class ChatHandler {
}
public static void sendBlockedNotification(String prefix, Player player, String input, String target, ServerConnection serverConnection) {
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("prefix", Replacement.miniMessage(prefix));
placeholders.put("displayname", Replacement.miniMessage(Utility.getDisplayName(player.getUniqueId(), player.getUsername())));
placeholders.put("target", Replacement.miniMessage((target.isEmpty() ? " tried to say: " : " -> " + target + ": ")));
placeholders.put("input", Replacement.miniMessage(input));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("prefix", prefix),
Placeholder.parsed("displayname", Utility.getDisplayName(player.getUniqueId(), player.getUsername())),
Placeholder.parsed("target", (target.isEmpty() ? " tried to say: " : " -> " + target + ": ")),
Placeholder.parsed("input", input)
);
Component blockedNotification = Utility.parseMiniMessage(Config.NOTIFICATIONFORMAT, placeholders);
serverConnection.getServer().getPlayersConnected().forEach(pl ->{
@ -130,13 +132,14 @@ public class ChatHandler {
updatedMessage = Utility.formatText(updatedMessage);
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.component(senderName));
placeholders.put("username", Replacement.miniMessage(player.getUsername()));
placeholders.put("party", Replacement.miniMessage(party.getPartyName()));
placeholders.put("message", Replacement.miniMessage(updatedMessage));
placeholders.put("server", Replacement.miniMessage(serverConnection.getServer().getServerInfo().getName()));
placeholders.put("[i]", Replacement.component(item));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("sender", senderName),
Placeholder.unparsed("username", player.getUsername()),
Placeholder.unparsed("party", party.getPartyName()),
Placeholder.parsed("message", updatedMessage),
Placeholder.unparsed("server", serverConnection.getServer().getServerInfo().getName()),
Placeholder.component("[i]", item)
);
Component partyMessage = Utility.parseMiniMessage(Config.PARTY_FORMAT, placeholders);
sendPartyMessage(party, partyMessage, user.getIgnoredBy());
@ -168,10 +171,11 @@ public class ChatHandler {
serverName = sender.getCurrentServer().isPresent() ? sender.getCurrentServer().get().getServerInfo().getName() : "Altitude";
}
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("message", Replacement.miniMessage(Utility.formatText(message)));
placeholders.put("sender", Replacement.component(senderName));
placeholders.put("server", Replacement.miniMessage(serverName));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("message", Utility.formatText(message)),
Placeholder.component("sender", senderName),
Placeholder.parsed("server", serverName)
);
Component component = Utility.parseMiniMessage(Config.GACFORMAT, placeholders);
@ -209,12 +213,13 @@ public class ChatHandler {
ChatUser chatUser = ChatUserManager.getChatUser(targetUUID);
chatUser.addMail(mail);
// TODO load from config
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("sender", Replacement.miniMessage(senderName));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("sender", senderName)
);
optionalPlayer.ifPresent(player -> player.sendMessage(Utility.parseMiniMessage(Config.mailReceived, placeholders)));
commandSource.sendMessage(Utility.parseMiniMessage(Config.mailSent,
Placeholder.component("player_name", chatUser.getDisplayName()),
Placeholder.miniMessage("message", message)
Placeholder.parsed("message", message)
));
}
@ -244,12 +249,13 @@ public class ChatHandler {
}
ChatUser chatUser = ChatUserManager.getChatUser(mail.getSender());
Date sentTime = new Date(mail.getSendTime());
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("staffprefix", Replacement.component(chatUser.getStaffPrefix()));
placeholders.put("sender", Replacement.component(chatUser.getDisplayName()));
placeholders.put("message", Replacement.miniMessage(mail.getMessage()));
placeholders.put("date", Replacement.miniMessage(sentTime.toString()));
placeholders.put("time_ago", Replacement.miniMessage(String.valueOf(TimeUnit.MILLISECONDS.toDays(new Date().getTime() - sentTime.getTime()))));
TagResolver placeholders = TagResolver.resolver(
Placeholder.component("staffprefix", chatUser.getStaffPrefix()),
Placeholder.component("sender", chatUser.getDisplayName()),
Placeholder.parsed("message", mail.getMessage()),
Placeholder.parsed("date", sentTime.toString()),
Placeholder.parsed("time_ago", String.valueOf(TimeUnit.MILLISECONDS.toDays(new Date().getTime() - sentTime.getTime())))
);
Component mailMessage = Utility.parseMiniMessage(Config.mailBody, placeholders);
component = component.append(Component.newline()).append(mailMessage);
}

View File

@ -9,7 +9,7 @@ import com.velocitypowered.api.event.PostOrder;
import com.velocitypowered.api.event.Subscribe;
import com.velocitypowered.api.proxy.Player;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import java.util.ArrayList;
import java.util.List;
@ -34,9 +34,9 @@ public class ChatListener {
}
Component message = Utility.parseMiniMessage(Config.GACFORMAT,
Placeholder.miniMessage("sender", senderName),
Placeholder.miniMessage("message", event.getMessage()),
Placeholder.miniMessage("server", serverName)
Placeholder.parsed("sender", senderName),
Placeholder.parsed("message", event.getMessage()),
Placeholder.parsed("server", serverName)
);
plugin.getProxy().getAllPlayers().stream().filter(target -> target.hasPermission("command.chat.globaladminchat")).forEach(target -> {

View File

@ -18,8 +18,8 @@ import com.velocitypowered.api.event.player.ServerConnectedEvent;
import com.velocitypowered.api.event.player.ServerPostConnectEvent;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.server.RegisteredServer;
import net.kyori.adventure.text.minimessage.placeholder.Placeholder;
import net.kyori.adventure.text.minimessage.placeholder.Replacement;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import java.util.*;
@ -55,7 +55,7 @@ public class ProxyPlayerListener {
if (unReadMail.isEmpty())
return;
player.sendMessage(Utility.parseMiniMessage(Config.mailUnread,
Placeholder.miniMessage("amount", String.valueOf(unReadMail.size()))
Placeholder.unparsed("amount", String.valueOf(unReadMail.size()))
));
}
@ -85,10 +85,11 @@ public class ProxyPlayerListener {
Player player = event.getPlayer();
Map<String, Replacement<?>> placeholders = new HashMap<>();
placeholders.put("player", Replacement.miniMessage(player.getUsername()));
placeholders.put("from_server", Replacement.miniMessage(previousServer.getServerInfo().getName()));
placeholders.put("to_server", Replacement.miniMessage(event.getServer().getServerInfo().getName()));
TagResolver placeholders = TagResolver.resolver(
Placeholder.parsed("player", player.getUsername()),
Placeholder.parsed("from_server", previousServer.getServerInfo().getName()),
Placeholder.parsed("to_server", event.getServer().getServerInfo().getName())
);
ServerWrapper wrapper = serverHandler.getWrapper(previousServer.getServerInfo().getName());
if(wrapper != null) {
@ -101,7 +102,7 @@ public class ProxyPlayerListener {
} else {
ServerWrapper wrapper = serverHandler.getWrapper(event.getServer().getServerInfo().getName());
if(wrapper != null) {
wrapper.sendJoinLeaveMessage(event.getPlayer().getUniqueId(), Utility.parseMiniMessage(Config.SERVERJOINMESSAGE, Placeholder.miniMessage("player", event.getPlayer().getUsername())));
wrapper.sendJoinLeaveMessage(event.getPlayer().getUniqueId(), Utility.parseMiniMessage(Config.SERVERJOINMESSAGE, Placeholder.unparsed("player", event.getPlayer().getUsername())));
}
}
}
@ -115,8 +116,8 @@ public class ProxyPlayerListener {
ServerWrapper wrapper = serverHandler.getWrapper(registeredServer.getServerInfo().getName());
if(wrapper != null) {
wrapper.sendJoinLeaveMessage(event.getPlayer().getUniqueId(), Utility.parseMiniMessage(Config.SERVERLEAVEMESSAGE,
Placeholder.miniMessage("player", event.getPlayer().getUsername()),
Placeholder.miniMessage("from_server", registeredServer.getServerInfo().getName())
Placeholder.unparsed("player", event.getPlayer().getUsername()),
Placeholder.unparsed("from_server", registeredServer.getServerInfo().getName())
));
}
}