mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 22:56:45 +01:00
Change some stuff around with ChatManager, change ChatAPI to route
through ChatManager.
This commit is contained in:
parent
18a4f5ed40
commit
85b909a7ab
@ -1,13 +1,8 @@
|
||||
package com.gmail.nossr50.api;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.events.chat.McMMOAdminChatEvent;
|
||||
import com.gmail.nossr50.events.chat.McMMOPartyChatEvent;
|
||||
import com.gmail.nossr50.locale.LocaleLoader;
|
||||
import com.gmail.nossr50.util.Permissions;
|
||||
import com.gmail.nossr50.util.Users;
|
||||
import com.gmail.nossr50.party.PartyManager;
|
||||
import com.gmail.nossr50.util.ChatManager;
|
||||
|
||||
public final class ChatAPI {
|
||||
|
||||
@ -23,22 +18,8 @@ public final class ChatAPI {
|
||||
* @param message The message to send
|
||||
*/
|
||||
public static void sendPartyChat(String sender, String party, String message) {
|
||||
McMMOPartyChatEvent chatEvent = new McMMOPartyChatEvent(sender, party, message);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
mcMMO.p.getLogger().info("[P](" + chatEvent.getParty() + ")" + "<" + chatEvent.getSender() + "> " + chatEvent.getMessage());
|
||||
|
||||
for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
|
||||
if (Users.getProfile(player).inParty()) {
|
||||
if (Users.getProfile(player).getParty().getName().equalsIgnoreCase(chatEvent.getParty())) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.Chat.Prefix", new Object[] {chatEvent.getSender()} ) + chatEvent.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
ChatManager chatManager = new ChatManager(mcMMO.p, sender, message);
|
||||
chatManager.handlePartyChat(PartyManager.getInstance().getParty(party));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -50,18 +31,7 @@ public final class ChatAPI {
|
||||
* @param message The message to send
|
||||
*/
|
||||
public static void sendAdminChat(String sender, String message) {
|
||||
McMMOAdminChatEvent chatEvent = new McMMOAdminChatEvent(sender, message);
|
||||
mcMMO.p.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
mcMMO.p.getLogger().info("[A]<" + chatEvent.getSender() + "> " + chatEvent.getMessage());
|
||||
|
||||
for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
|
||||
if (Permissions.adminChat(player) || player.isOp())
|
||||
player.sendMessage(LocaleLoader.getString("Commands.AdminChat.Prefix", new Object[] {chatEvent.getSender()} ) + chatEvent.getMessage());
|
||||
}
|
||||
ChatManager chatManager = new ChatManager(mcMMO.p, sender, message);
|
||||
chatManager.handleAdminChat();
|
||||
}
|
||||
}
|
||||
|
@ -23,6 +23,7 @@ import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.config.Config;
|
||||
import com.gmail.nossr50.datatypes.PlayerProfile;
|
||||
import com.gmail.nossr50.locale.LocaleLoader;
|
||||
import com.gmail.nossr50.party.Party;
|
||||
import com.gmail.nossr50.runnables.BleedTimer;
|
||||
import com.gmail.nossr50.skills.SkillType;
|
||||
import com.gmail.nossr50.skills.Skills;
|
||||
@ -344,12 +345,21 @@ public class PlayerListener implements Listener {
|
||||
}
|
||||
|
||||
if (profile.getPartyChatMode()) {
|
||||
ChatManager chatManager = new ChatManager(plugin, player, event);
|
||||
chatManager.handlePartyChat();
|
||||
Party party = profile.getParty();
|
||||
|
||||
if (party == null) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.None"));
|
||||
return;
|
||||
}
|
||||
|
||||
ChatManager chatManager = new ChatManager(plugin, player.getName(), event.getMessage());
|
||||
chatManager.handlePartyChat(party);
|
||||
event.setCancelled(true);
|
||||
}
|
||||
else if (profile.getAdminChatMode()) {
|
||||
ChatManager chatManager = new ChatManager(plugin, player, event);
|
||||
ChatManager chatManager = new ChatManager(plugin, player.getName(), event.getMessage());
|
||||
chatManager.handleAdminChat();
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.gmail.nossr50.util;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
||||
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.events.chat.McMMOAdminChatEvent;
|
||||
@ -11,19 +10,17 @@ import com.gmail.nossr50.party.Party;
|
||||
|
||||
public class ChatManager {
|
||||
private mcMMO plugin;
|
||||
private Player player;
|
||||
private String playerName;
|
||||
private AsyncPlayerChatEvent event;
|
||||
private String message;
|
||||
|
||||
public ChatManager (mcMMO plugin, Player player, AsyncPlayerChatEvent event) {
|
||||
public ChatManager (mcMMO plugin, String playerName, String message) {
|
||||
this.plugin = plugin;
|
||||
this.player = player;
|
||||
this.playerName = player.getName();
|
||||
this.event = event;
|
||||
this.playerName = playerName;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public void handleAdminChat() {
|
||||
McMMOAdminChatEvent chatEvent = new McMMOAdminChatEvent(playerName, event.getMessage());
|
||||
McMMOAdminChatEvent chatEvent = new McMMOAdminChatEvent(playerName, message);
|
||||
plugin.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
@ -39,21 +36,12 @@ public class ChatManager {
|
||||
otherPlayer.sendMessage(LocaleLoader.getString("Commands.AdminChat.Prefix", new Object[] {playerName}) + adminMessage);
|
||||
}
|
||||
}
|
||||
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
public void handlePartyChat() {
|
||||
Party party = Users.getProfile(player).getParty();
|
||||
|
||||
if (party == null) {
|
||||
player.sendMessage(LocaleLoader.getString("Commands.Party.None"));
|
||||
return;
|
||||
}
|
||||
|
||||
public void handlePartyChat(Party party) {
|
||||
String partyName = party.getName();
|
||||
|
||||
McMMOPartyChatEvent chatEvent = new McMMOPartyChatEvent(playerName, partyName, event.getMessage());
|
||||
McMMOPartyChatEvent chatEvent = new McMMOPartyChatEvent(playerName, partyName, message);
|
||||
plugin.getServer().getPluginManager().callEvent(chatEvent);
|
||||
|
||||
if (chatEvent.isCancelled()) {
|
||||
@ -67,7 +55,5 @@ public class ChatManager {
|
||||
for (Player member : party.getOnlineMembers()) {
|
||||
member.sendMessage(LocaleLoader.getString("Commands.Party.Chat.Prefix", new Object[] {playerName}) + partyMessage);
|
||||
}
|
||||
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user