Changed /p and /a to use /partychat and /adminchat as the default

command name. The use of /p, /pc, /a, and /ac is still supported.
This commit is contained in:
GJ
2013-02-06 17:57:16 -05:00
parent d0ca2b9d4b
commit d5550c8fd1
8 changed files with 121 additions and 62 deletions

View File

@ -7,46 +7,61 @@ import org.bukkit.entity.Player;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.chat.ChatManager;
import com.gmail.nossr50.commands.CommandHelper;
import com.gmail.nossr50.datatypes.McMMOPlayer;
import com.gmail.nossr50.locale.LocaleLoader;
import com.gmail.nossr50.util.Users;
public class ACommand implements CommandExecutor {
public class AdminChatCommand implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
McMMOPlayer mcMMOPlayer;
String usage = LocaleLoader.getString("Commands.Usage.1", "a", "<" + LocaleLoader.getString("Commands.Usage.Message") + ">");
if (CommandHelper.noCommandPermissions(sender, "mcmmo.chat.adminchat")) {
return true;
}
switch (args.length) {
case 0:
if (sender instanceof Player) {
mcMMOPlayer = Users.getPlayer((Player) sender);
if (!(sender instanceof Player)) {
return false;
}
if (mcMMOPlayer.getPartyChatMode()) {
mcMMOPlayer.togglePartyChat();
}
mcMMOPlayer = Users.getPlayer((Player) sender);
mcMMOPlayer.toggleAdminChat();
// Can't have both party & admin chat at the same time.
if (mcMMOPlayer.getPartyChatMode()) {
mcMMOPlayer.togglePartyChat();
}
if (mcMMOPlayer.getAdminChatMode()) {
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.On"));
}
else {
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.Off"));
}
mcMMOPlayer.toggleAdminChat();
if (mcMMOPlayer.getAdminChatMode()) {
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.On"));
}
else {
sender.sendMessage(usage);
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.Off"));
}
return true;
default:
if (args.length == 1) {
if (!(sender instanceof Player)) {
return false;
}
mcMMOPlayer = Users.getPlayer((Player) sender);
if (args[0].equalsIgnoreCase("on")) {
mcMMOPlayer.setPartyChat(false);
mcMMOPlayer.setAdminChat(true);
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.On"));
return true;
}
if (args[0].equalsIgnoreCase("off")) {
mcMMOPlayer.setAdminChat(false);
sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.Off"));
return true;
}
}
StringBuilder builder = new StringBuilder();
builder.append(args[0]);

View File

@ -7,60 +7,69 @@ import org.bukkit.entity.Player;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.chat.ChatManager;
import com.gmail.nossr50.commands.CommandHelper;
import com.gmail.nossr50.datatypes.McMMOPlayer;
import com.gmail.nossr50.locale.LocaleLoader;
import com.gmail.nossr50.party.Party;
import com.gmail.nossr50.party.PartyManager;
import com.gmail.nossr50.util.Users;
public class PCommand implements CommandExecutor {
private final mcMMO plugin;
public PCommand (mcMMO plugin) {
this.plugin = plugin;
}
public class PartyChatCommand implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
McMMOPlayer mcMMOPlayer;
String usage = LocaleLoader.getString("Commands.Usage.2", "p", "<" + LocaleLoader.getString("Commands.Usage.PartyName") + ">", "<" + LocaleLoader.getString("Commands.Usage.Message") + ">");
if (CommandHelper.noCommandPermissions(sender, "mcmmo.commands.party")) {
return true;
}
switch (args.length) {
case 0:
if (sender instanceof Player) {
mcMMOPlayer = Users.getPlayer((Player) sender);
if (!(sender instanceof Player)) {
return false;
}
if (mcMMOPlayer.getAdminChatMode()) {
mcMMOPlayer.toggleAdminChat();
}
mcMMOPlayer = Users.getPlayer((Player) sender);
mcMMOPlayer.togglePartyChat();
// Can't have both party & admin chat at the same time.
if (mcMMOPlayer.getAdminChatMode()) {
mcMMOPlayer.toggleAdminChat();
}
if (mcMMOPlayer.getPartyChatMode()) {
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.On"));
}
else {
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.Off"));
}
mcMMOPlayer.togglePartyChat();
if (mcMMOPlayer.getPartyChatMode()) {
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.On"));
}
else {
sender.sendMessage(usage);
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.Off"));
}
return true;
default:
if (args.length == 1) {
if (!(sender instanceof Player)) {
return false;
}
mcMMOPlayer = Users.getPlayer((Player) sender);
if (args[0].equalsIgnoreCase("on")) {
mcMMOPlayer.setAdminChat(false);
mcMMOPlayer.setPartyChat(true);
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.On"));
return true;
}
if (args[0].equalsIgnoreCase("off")) {
mcMMOPlayer.setPartyChat(false);
sender.sendMessage(LocaleLoader.getString("Commands.Party.Chat.Off"));
return true;
}
}
if (sender instanceof Player) {
Player player = (Player) sender;
Party party = Users.getPlayer(player).getParty();
if (party == null) {
player.sendMessage(LocaleLoader.getString("Commands.Party.None"));
sender.sendMessage(LocaleLoader.getString("Commands.Party.None"));
return true;
}
@ -73,11 +82,11 @@ public class PCommand implements CommandExecutor {
}
String message = builder.toString();
ChatManager.handlePartyChat(plugin, party, player.getName(), player.getDisplayName(), message);
ChatManager.handlePartyChat(mcMMO.p, party, player.getName(), player.getDisplayName(), message);
}
else {
if (args.length < 2) {
sender.sendMessage(usage);
sender.sendMessage(LocaleLoader.getString("Party.Specify"));
return true;
}
@ -96,10 +105,10 @@ public class PCommand implements CommandExecutor {
builder.append(args[i]);
}
String ssender = LocaleLoader.getString("Commands.Chat.Console");
String consoleSender = LocaleLoader.getString("Commands.Chat.Console");
String message = builder.toString();
ChatManager.handlePartyChat(plugin, party, ssender, ssender, message);
ChatManager.handlePartyChat(mcMMO.p, party, consoleSender, consoleSender, message);
}
return true;