mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-08-03 21:15:28 +02:00
51 lines
1.7 KiB
Java
51 lines
1.7 KiB
Java
package com.gmail.nossr50.runnables.party;
|
|
|
|
import com.gmail.nossr50.config.Config;
|
|
import com.gmail.nossr50.datatypes.party.Party;
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
|
import org.bukkit.ChatColor;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.plugin.Plugin;
|
|
import org.bukkit.scheduler.BukkitRunnable;
|
|
|
|
import java.util.regex.Matcher;
|
|
import java.util.regex.Pattern;
|
|
|
|
public class PartyChatTask extends BukkitRunnable {
|
|
private final Plugin plugin;
|
|
|
|
private final Party party;
|
|
private final String senderName;
|
|
private final String displayName;
|
|
private String message;
|
|
|
|
public PartyChatTask(Plugin plugin, Party party, String senderName, String displayName, String message) {
|
|
this.plugin = plugin;
|
|
|
|
this.party = party;
|
|
this.senderName = senderName;
|
|
this.displayName = displayName;
|
|
this.message = message;
|
|
}
|
|
|
|
@Override
|
|
public void run() {
|
|
if (Config.getInstance().getPartyChatColorLeaderName() && senderName.equalsIgnoreCase(party.getLeader().getPlayerName())) {
|
|
message = message.replaceFirst(Pattern.quote(displayName), ChatColor.GOLD + Matcher.quoteReplacement(displayName) + ChatColor.RESET);
|
|
}
|
|
|
|
for (Player member : party.getOnlineMembers()) {
|
|
member.sendMessage(message);
|
|
}
|
|
|
|
if (party.getAlly() != null) {
|
|
for (Player member : party.getAlly().getOnlineMembers()) {
|
|
String allyPrefix = LocaleLoader.formatString(Config.getInstance().getPartyChatPrefixAlly());
|
|
member.sendMessage(allyPrefix + message);
|
|
}
|
|
}
|
|
|
|
plugin.getServer().getConsoleSender().sendMessage(ChatColor.stripColor("[mcMMO] [P]<" + party.getName() + ">" + message));
|
|
}
|
|
}
|