CommandRegistrationHelper.java 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. package com.gmail.nossr50.commands;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.bukkit.command.PluginCommand;
  5. import com.gmail.nossr50.mcMMO;
  6. import com.gmail.nossr50.commands.admin.AddlevelsCommand;
  7. import com.gmail.nossr50.commands.admin.AddxpCommand;
  8. import com.gmail.nossr50.commands.admin.McgodCommand;
  9. import com.gmail.nossr50.locale.LocaleLoader;
  10. import com.gmail.nossr50.skills.acrobatics.AcrobaticsCommand;
  11. import com.gmail.nossr50.skills.archery.ArcheryCommand;
  12. import com.gmail.nossr50.skills.axes.AxesCommand;
  13. import com.gmail.nossr50.skills.excavation.ExcavationCommand;
  14. import com.gmail.nossr50.skills.fishing.FishingCommand;
  15. import com.gmail.nossr50.skills.herbalism.HerbalismCommand;
  16. import com.gmail.nossr50.skills.mining.MiningCommand;
  17. import com.gmail.nossr50.skills.repair.RepairCommand;
  18. import com.gmail.nossr50.skills.smelting.SmeltingCommand;
  19. import com.gmail.nossr50.skills.swords.SwordsCommand;
  20. import com.gmail.nossr50.skills.taming.TamingCommand;
  21. import com.gmail.nossr50.skills.unarmed.UnarmedCommand;
  22. import com.gmail.nossr50.skills.utilities.SkillType;
  23. import com.gmail.nossr50.skills.woodcutting.WoodcuttingCommand;
  24. import com.gmail.nossr50.util.Misc;
  25. public final class CommandRegistrationHelper {
  26. private CommandRegistrationHelper() {};
  27. private static String permissionsMessage = LocaleLoader.getString("mcMMO.NoPermission");
  28. public static void registerSkillCommands() {
  29. for (SkillType skill : SkillType.values()) {
  30. if (skill != SkillType.ALL) {
  31. String commandName = skill.toString().toLowerCase();
  32. String localizedName = LocaleLoader.getString(Misc.getCapitalized(commandName) + ".SkillName").toLowerCase();
  33. List<String> aliasList = new ArrayList<String>();
  34. aliasList.add(localizedName);
  35. PluginCommand command;
  36. // Make us play nice with Essentials
  37. if (skill == SkillType.REPAIR && mcMMO.p.getServer().getPluginManager().isPluginEnabled("Essentials")) {
  38. command = mcMMO.p.getCommand("mcrepair");
  39. }
  40. else {
  41. command = mcMMO.p.getCommand(commandName);
  42. }
  43. command.setAliases(aliasList);
  44. command.setDescription(LocaleLoader.getString("Commands.Description.Skill", Misc.getCapitalized(localizedName)));
  45. command.setPermission("mcmmo.skills." + commandName);
  46. command.setPermissionMessage(permissionsMessage);
  47. switch (skill) {
  48. case ACROBATICS:
  49. command.setExecutor(new AcrobaticsCommand());
  50. break;
  51. case ARCHERY:
  52. command.setExecutor(new ArcheryCommand());
  53. break;
  54. case AXES:
  55. command.setExecutor(new AxesCommand());
  56. break;
  57. case EXCAVATION:
  58. command.setExecutor(new ExcavationCommand());
  59. break;
  60. case FISHING:
  61. command.setExecutor(new FishingCommand());
  62. break;
  63. case HERBALISM:
  64. command.setExecutor(new HerbalismCommand());
  65. break;
  66. case MINING:
  67. command.setExecutor(new MiningCommand());
  68. break;
  69. case REPAIR:
  70. command.setExecutor(new RepairCommand());
  71. break;
  72. case SMELTING:
  73. command.setExecutor(new SmeltingCommand());
  74. break;
  75. case SWORDS:
  76. command.setExecutor(new SwordsCommand());
  77. break;
  78. case TAMING:
  79. command.setExecutor(new TamingCommand());
  80. break;
  81. case UNARMED:
  82. command.setExecutor(new UnarmedCommand());
  83. break;
  84. case WOODCUTTING:
  85. command.setExecutor(new WoodcuttingCommand());
  86. break;
  87. default:
  88. break;
  89. }
  90. }
  91. }
  92. }
  93. public static void registerAddlevelsCommand() {
  94. PluginCommand command = mcMMO.p.getCommand("addlevels");
  95. command.setDescription(LocaleLoader.getString("Commands.Description.addlevels"));
  96. command.setPermission("mcmmo.commands.addlevels");
  97. command.setPermissionMessage(permissionsMessage);
  98. command.setUsage(LocaleLoader.getString("Commands.Usage.3", "addlevels", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">", "<" + LocaleLoader.getString("Commands.Usage.Level") + ">"));
  99. command.setExecutor(new AddlevelsCommand());
  100. }
  101. public static void registerAddxpCommand() {
  102. PluginCommand command = mcMMO.p.getCommand("addxp");
  103. command.setDescription(LocaleLoader.getString("Commands.Description.addxp"));
  104. command.setPermission("mcmmo.commands.addxp");
  105. command.setPermissionMessage(permissionsMessage);
  106. command.setUsage(LocaleLoader.getString("Commands.Usage.3", "addxp", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">", "<" + LocaleLoader.getString("Commands.Usage.XP") + ">"));
  107. command.setExecutor(new AddxpCommand());
  108. }
  109. public static void registerMcgodCommand() {
  110. PluginCommand command = mcMMO.p.getCommand("mcgod");
  111. command.setDescription(LocaleLoader.getString("Commands.Description.mcgod"));
  112. command.setPermission("mcmmo.commands.mcgod");
  113. command.setPermissionMessage(permissionsMessage);
  114. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcgod", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  115. command.setExecutor(new McgodCommand());
  116. }
  117. }