ACommand.java 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.gmail.nossr50.chat.commands;
  2. import org.bukkit.command.Command;
  3. import org.bukkit.command.CommandExecutor;
  4. import org.bukkit.command.CommandSender;
  5. import org.bukkit.entity.Player;
  6. import com.gmail.nossr50.mcMMO;
  7. import com.gmail.nossr50.chat.ChatManager;
  8. import com.gmail.nossr50.commands.CommandHelper;
  9. import com.gmail.nossr50.datatypes.PlayerProfile;
  10. import com.gmail.nossr50.locale.LocaleLoader;
  11. import com.gmail.nossr50.util.Users;
  12. public class ACommand implements CommandExecutor {
  13. @Override
  14. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  15. PlayerProfile profile;
  16. String usage = LocaleLoader.getString("Commands.Usage.1", "a", "<" + LocaleLoader.getString("Commands.Usage.Message") + ">");
  17. if (CommandHelper.noCommandPermissions(sender, "mcmmo.chat.adminchat")) {
  18. return true;
  19. }
  20. switch (args.length) {
  21. case 0:
  22. if (sender instanceof Player) {
  23. profile = Users.getProfile((Player) sender);
  24. if (profile.getPartyChatMode()) {
  25. profile.togglePartyChat();
  26. }
  27. profile.toggleAdminChat();
  28. if (profile.getAdminChatMode()) {
  29. sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.On"));
  30. }
  31. else {
  32. sender.sendMessage(LocaleLoader.getString("Commands.AdminChat.Off"));
  33. }
  34. }
  35. else {
  36. sender.sendMessage(usage);
  37. }
  38. return true;
  39. default:
  40. StringBuilder builder = new StringBuilder();
  41. builder.append(args[0]);
  42. for (int i = 1; i < args.length; i++) {
  43. builder.append(" ");
  44. builder.append(args[i]);
  45. }
  46. String message = builder.toString();
  47. if (sender instanceof Player) {
  48. Player player = (Player) sender;
  49. ChatManager.handleAdminChat(mcMMO.p, player.getName(), player.getDisplayName(), message);
  50. }
  51. else {
  52. String ssender = LocaleLoader.getString("Commands.Chat.Console");
  53. ChatManager.handleAdminChat(mcMMO.p, ssender, ssender, message);
  54. }
  55. return true;
  56. }
  57. }
  58. }