McmmoCommand.java 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.gmail.nossr50.commands;
  2. import com.gmail.nossr50.config.Config;
  3. import com.gmail.nossr50.locale.LocaleLoader;
  4. import com.gmail.nossr50.mcMMO;
  5. import com.gmail.nossr50.util.Permissions;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.command.Command;
  8. import org.bukkit.command.CommandExecutor;
  9. import org.bukkit.command.CommandSender;
  10. import org.jetbrains.annotations.NotNull;
  11. public class McmmoCommand implements CommandExecutor {
  12. @Override
  13. public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
  14. switch (args.length) {
  15. case 0:
  16. if (!Permissions.mcmmoDescription(sender)) {
  17. sender.sendMessage(command.getPermissionMessage());
  18. return true;
  19. }
  20. String description = LocaleLoader.getString("mcMMO.Description");
  21. String[] mcSplit = description.split(",");
  22. sender.sendMessage(mcSplit);
  23. sender.sendMessage(LocaleLoader.getString("mcMMO.Description.FormerDevs"));
  24. if (Config.getInstance().getDonateMessageEnabled()) {
  25. sender.sendMessage(LocaleLoader.getString("MOTD.Donate"));
  26. sender.sendMessage(ChatColor.GOLD + " - " + ChatColor.GREEN + "nossr50@gmail.com" + ChatColor.GOLD + " Paypal");
  27. }
  28. if (Permissions.showversion(sender)) {
  29. sender.sendMessage(LocaleLoader.getString("MOTD.Version", mcMMO.p.getDescription().getVersion()));
  30. }
  31. mcMMO.getHolidayManager().anniversaryCheck(sender);
  32. return true;
  33. case 1:
  34. if (args[0].equalsIgnoreCase("?") || args[0].equalsIgnoreCase("help") || args[0].equalsIgnoreCase("commands")) {
  35. if (!Permissions.mcmmoHelp(sender)) {
  36. sender.sendMessage(command.getPermissionMessage());
  37. return true;
  38. }
  39. sender.sendMessage(LocaleLoader.getString("Commands.mcc.Header"));
  40. displayGeneralCommands(sender);
  41. displayOtherCommands(sender);
  42. displayPartyCommands(sender);
  43. }
  44. return true;
  45. default:
  46. return false;
  47. }
  48. }
  49. private void displayGeneralCommands(CommandSender sender) {
  50. sender.sendMessage(ChatColor.DARK_AQUA + " /mcstats " + LocaleLoader.getString("Commands.Stats"));
  51. sender.sendMessage(ChatColor.DARK_AQUA + " /<skill>" + LocaleLoader.getString("Commands.SkillInfo"));
  52. sender.sendMessage(ChatColor.DARK_AQUA + " /mctop " + LocaleLoader.getString("Commands.Leaderboards"));
  53. if (Permissions.inspect(sender)) {
  54. sender.sendMessage(ChatColor.DARK_AQUA + " /inspect " + LocaleLoader.getString("Commands.Inspect"));
  55. }
  56. if (Permissions.mcability(sender)) {
  57. sender.sendMessage(ChatColor.DARK_AQUA + " /mcability " + LocaleLoader.getString("Commands.ToggleAbility"));
  58. }
  59. }
  60. private void displayOtherCommands(CommandSender sender) {
  61. //Don't show them this category if they have none of the permissions
  62. if(!Permissions.skillreset(sender) && !Permissions.mmoedit(sender) && !Permissions.adminChat(sender) && !Permissions.mcgod(sender))
  63. return;
  64. sender.sendMessage(LocaleLoader.getString("Commands.Other"));
  65. if (Permissions.skillreset(sender)) {
  66. sender.sendMessage(ChatColor.DARK_AQUA + " /skillreset <skill|all> " + LocaleLoader.getString("Commands.Reset"));
  67. }
  68. if (Permissions.mmoedit(sender)) {
  69. sender.sendMessage(ChatColor.DARK_AQUA + " /mmoedit " + LocaleLoader.getString("Commands.mmoedit"));
  70. }
  71. if (Permissions.adminChat(sender)) {
  72. sender.sendMessage(ChatColor.DARK_AQUA + " /adminchat " + LocaleLoader.getString("Commands.AdminToggle"));
  73. }
  74. if (Permissions.mcgod(sender)) {
  75. sender.sendMessage(ChatColor.DARK_AQUA + " /mcgod " + LocaleLoader.getString("Commands.mcgod"));
  76. }
  77. }
  78. private void displayPartyCommands(CommandSender sender) {
  79. if (Permissions.party(sender)) {
  80. sender.sendMessage(LocaleLoader.getString("Commands.Party.Commands"));
  81. sender.sendMessage(ChatColor.DARK_AQUA + " /party create <" + LocaleLoader.getString("Commands.Usage.PartyName") + "> " + LocaleLoader.getString("Commands.Party1"));
  82. sender.sendMessage(ChatColor.DARK_AQUA + " /party join <" + LocaleLoader.getString("Commands.Usage.Player") + "> " + LocaleLoader.getString("Commands.Party2"));
  83. sender.sendMessage(ChatColor.DARK_AQUA + " /party quit " + LocaleLoader.getString("Commands.Party.Quit"));
  84. if (Permissions.partyChat(sender)) {
  85. sender.sendMessage(ChatColor.DARK_AQUA + " /party chat " + LocaleLoader.getString("Commands.Party.Toggle"));
  86. }
  87. sender.sendMessage(ChatColor.DARK_AQUA + " /party invite <" + LocaleLoader.getString("Commands.Usage.Player") + "> " + LocaleLoader.getString("Commands.Party.Invite"));
  88. sender.sendMessage(ChatColor.DARK_AQUA + " /party accept " + LocaleLoader.getString("Commands.Party.Accept"));
  89. if (Permissions.partySubcommand(sender, PartySubcommandType.TELEPORT)) {
  90. sender.sendMessage(ChatColor.DARK_AQUA + " /party teleport <" + LocaleLoader.getString("Commands.Usage.Player") + "> " + LocaleLoader.getString("Commands.Party.Teleport"));
  91. }
  92. }
  93. }
  94. }