2013-06-07 00:48:25 +02:00
|
|
|
package com.gmail.nossr50.chat;
|
|
|
|
|
2013-08-17 13:53:46 +02:00
|
|
|
import org.bukkit.ChatColor;
|
2013-06-07 00:48:25 +02:00
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
import org.bukkit.plugin.Plugin;
|
|
|
|
|
|
|
|
import com.gmail.nossr50.config.Config;
|
|
|
|
import com.gmail.nossr50.datatypes.party.Party;
|
|
|
|
import com.gmail.nossr50.events.chat.McMMOPartyChatEvent;
|
|
|
|
|
|
|
|
public class PartyChatManager extends ChatManager {
|
|
|
|
private Party party;
|
|
|
|
|
|
|
|
protected PartyChatManager(Plugin plugin) {
|
2013-08-17 12:18:29 +02:00
|
|
|
super(plugin, Config.getInstance().getPartyDisplayNames(), Config.getInstance().getPartyChatPrefix());
|
2013-06-07 00:48:25 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public void setParty(Party party) {
|
|
|
|
this.party = party;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void handleChat(String senderName, String displayName, String message, boolean isAsync) {
|
|
|
|
handleChat(new McMMOPartyChatEvent(plugin, senderName, displayName, party.getName(), message, isAsync));
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected void sendMessage() {
|
2013-08-17 13:53:46 +02:00
|
|
|
if (Config.getInstance().getPartyChatColorLeaderName() && senderName.equalsIgnoreCase(party.getLeader())) {
|
|
|
|
message = message.replaceAll(displayName, ChatColor.GOLD + displayName + ChatColor.RESET);
|
|
|
|
}
|
|
|
|
|
2013-06-07 00:48:25 +02:00
|
|
|
for (Player member : party.getOnlineMembers()) {
|
2013-06-13 17:10:46 +02:00
|
|
|
member.sendMessage(message);
|
2013-06-07 00:48:25 +02:00
|
|
|
}
|
|
|
|
|
2013-06-13 17:10:46 +02:00
|
|
|
plugin.getLogger().info("[P]<" + party.getName() + ">" + message);
|
2013-06-07 00:48:25 +02:00
|
|
|
}
|
|
|
|
}
|