CommandRegistrationManager.java 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506
  1. package com.gmail.nossr50.util.commands;
  2. import com.gmail.nossr50.commands.*;
  3. import com.gmail.nossr50.commands.admin.CompatibilityCommand;
  4. import com.gmail.nossr50.commands.admin.McmmoReloadLocaleCommand;
  5. import com.gmail.nossr50.commands.admin.PlayerDebugCommand;
  6. import com.gmail.nossr50.commands.chat.McChatSpy;
  7. import com.gmail.nossr50.commands.database.DatabaseRemovePlayerCommand;
  8. import com.gmail.nossr50.commands.database.McpurgeCommand;
  9. import com.gmail.nossr50.commands.database.MmoshowdbCommand;
  10. import com.gmail.nossr50.commands.experience.AddlevelsCommand;
  11. import com.gmail.nossr50.commands.experience.AddxpCommand;
  12. import com.gmail.nossr50.commands.experience.MmoeditCommand;
  13. import com.gmail.nossr50.commands.experience.SkillresetCommand;
  14. import com.gmail.nossr50.commands.hardcore.HardcoreCommand;
  15. import com.gmail.nossr50.commands.hardcore.VampirismCommand;
  16. import com.gmail.nossr50.commands.party.PartyCommand;
  17. import com.gmail.nossr50.commands.party.teleport.PtpCommand;
  18. import com.gmail.nossr50.commands.player.*;
  19. import com.gmail.nossr50.commands.skills.*;
  20. import com.gmail.nossr50.config.Config;
  21. import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
  22. import com.gmail.nossr50.locale.LocaleLoader;
  23. import com.gmail.nossr50.mcMMO;
  24. import com.gmail.nossr50.util.text.StringUtils;
  25. import org.bukkit.command.PluginCommand;
  26. import java.util.ArrayList;
  27. import java.util.List;
  28. import java.util.Locale;
  29. public final class CommandRegistrationManager {
  30. private CommandRegistrationManager() {}
  31. private static final String permissionsMessage = LocaleLoader.getString("mcMMO.NoPermission");
  32. private static void registerSkillCommands() {
  33. for (PrimarySkillType skill : PrimarySkillType.values()) {
  34. String commandName = skill.toString().toLowerCase(Locale.ENGLISH);
  35. String localizedName = skill.getName().toLowerCase(Locale.ENGLISH);
  36. PluginCommand command;
  37. command = mcMMO.p.getCommand(commandName);
  38. command.setDescription(LocaleLoader.getString("Commands.Description.Skill", StringUtils.getCapitalized(localizedName)));
  39. command.setPermission("mcmmo.commands." + commandName);
  40. command.setPermissionMessage(permissionsMessage);
  41. command.setUsage(LocaleLoader.getString("Commands.Usage.0", localizedName));
  42. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.2", localizedName, "?", "[" + LocaleLoader.getString("Commands.Usage.Page") + "]"));
  43. switch (skill) {
  44. case ACROBATICS:
  45. command.setExecutor(new AcrobaticsCommand());
  46. break;
  47. case ALCHEMY:
  48. command.setExecutor(new AlchemyCommand());
  49. break;
  50. case ARCHERY:
  51. command.setExecutor(new ArcheryCommand());
  52. break;
  53. case AXES:
  54. command.setExecutor(new AxesCommand());
  55. break;
  56. case EXCAVATION:
  57. command.setExecutor(new ExcavationCommand());
  58. break;
  59. case FISHING:
  60. command.setExecutor(new FishingCommand());
  61. break;
  62. case HERBALISM:
  63. command.setExecutor(new HerbalismCommand());
  64. break;
  65. case MINING:
  66. command.setExecutor(new MiningCommand());
  67. break;
  68. case REPAIR:
  69. command.setExecutor(new RepairCommand());
  70. break;
  71. case SALVAGE:
  72. command.setExecutor(new SalvageCommand());
  73. break;
  74. case SMELTING:
  75. command.setExecutor(new SmeltingCommand());
  76. break;
  77. case SWORDS:
  78. command.setExecutor(new SwordsCommand());
  79. break;
  80. case TAMING:
  81. command.setExecutor(new TamingCommand());
  82. break;
  83. case UNARMED:
  84. command.setExecutor(new UnarmedCommand());
  85. break;
  86. case WOODCUTTING:
  87. command.setExecutor(new WoodcuttingCommand());
  88. break;
  89. case CROSSBOWS:
  90. command.setExecutor(new CrossbowsCommand());
  91. break;
  92. case TRIDENTS:
  93. command.setExecutor(new TridentsCommand());
  94. break;
  95. default:
  96. break;
  97. }
  98. }
  99. }
  100. private static void registerAddlevelsCommand() {
  101. PluginCommand command = mcMMO.p.getCommand("addlevels");
  102. command.setDescription(LocaleLoader.getString("Commands.Description.addlevels"));
  103. command.setPermission("mcmmo.commands.addlevels;mcmmo.commands.addlevels.others");
  104. command.setPermissionMessage(permissionsMessage);
  105. command.setUsage(LocaleLoader.getString("Commands.Usage.3.XP", "addlevels", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">", "<" + LocaleLoader.getString("Commands.Usage.Level") + ">"));
  106. command.setExecutor(new AddlevelsCommand());
  107. }
  108. private static void registerAddxpCommand() {
  109. PluginCommand command = mcMMO.p.getCommand("addxp");
  110. command.setDescription(LocaleLoader.getString("Commands.Description.addxp"));
  111. command.setPermission("mcmmo.commands.addxp;mcmmo.commands.addxp.others");
  112. command.setPermissionMessage(permissionsMessage);
  113. command.setUsage(LocaleLoader.getString("Commands.Usage.3.XP", "addxp", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">", "<" + LocaleLoader.getString("Commands.Usage.XP") + ">"));
  114. command.setExecutor(new AddxpCommand());
  115. }
  116. private static void registerMcgodCommand() {
  117. PluginCommand command = mcMMO.p.getCommand("mcgod");
  118. command.setDescription(LocaleLoader.getString("Commands.Description.mcgod"));
  119. command.setPermission("mcmmo.commands.mcgod;mcmmo.commands.mcgod.others");
  120. command.setPermissionMessage(permissionsMessage);
  121. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcgod", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  122. command.setExecutor(new McgodCommand());
  123. }
  124. // private static void registerDropTreasureCommand() {
  125. // PluginCommand command = mcMMO.p.getCommand("mmodroptreasures");
  126. // command.setDescription(LocaleLoader.getString("Commands.Description.droptreasures"));
  127. // command.setPermission("mcmmo.commands.droptreasures");
  128. // command.setPermissionMessage(permissionsMessage);
  129. // command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcgod"));
  130. // command.setExecutor(new DropTreasureCommand());
  131. // }
  132. private static void registerMmoInfoCommand() {
  133. PluginCommand command = mcMMO.p.getCommand("mmoinfo");
  134. command.setDescription(LocaleLoader.getString("Commands.Description.mmoinfo"));
  135. command.setPermission("mcmmo.commands.mmoinfo");
  136. command.setPermissionMessage(permissionsMessage);
  137. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mmoinfo", "[" + LocaleLoader.getString("Commands.Usage.SubSkill") + "]"));
  138. command.setExecutor(new MmoInfoCommand());
  139. }
  140. private static void registerMmoDebugCommand() {
  141. PluginCommand command = mcMMO.p.getCommand("mmodebug");
  142. command.setDescription(LocaleLoader.getString("Commands.Description.mmodebug"));
  143. command.setPermission(null); //No perm required to save support headaches
  144. command.setPermissionMessage(permissionsMessage);
  145. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mmodebug"));
  146. command.setExecutor(new PlayerDebugCommand());
  147. }
  148. private static void registerMcChatSpyCommand() {
  149. PluginCommand command = mcMMO.p.getCommand("mcchatspy");
  150. command.setDescription(LocaleLoader.getString("Commands.Description.mcchatspy"));
  151. command.setPermission("mcmmo.commands.mcchatspy;mcmmo.commands.mcchatspy.others");
  152. command.setPermissionMessage(permissionsMessage);
  153. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcchatspy", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  154. command.setExecutor(new McChatSpy());
  155. }
  156. private static void registerMcrefreshCommand() {
  157. PluginCommand command = mcMMO.p.getCommand("mcrefresh");
  158. command.setDescription(LocaleLoader.getString("Commands.Description.mcrefresh"));
  159. command.setPermission("mcmmo.commands.mcrefresh;mcmmo.commands.mcrefresh.others");
  160. command.setPermissionMessage(permissionsMessage);
  161. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcrefresh", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  162. command.setExecutor(new McrefreshCommand());
  163. }
  164. private static void registerMmoeditCommand() {
  165. PluginCommand command = mcMMO.p.getCommand("mmoedit");
  166. command.setDescription(LocaleLoader.getString("Commands.Description.mmoedit"));
  167. command.setPermission("mcmmo.commands.mmoedit;mcmmo.commands.mmoedit.others");
  168. command.setPermissionMessage(permissionsMessage);
  169. command.setUsage(LocaleLoader.getString("Commands.Usage.3.XP", "mmoedit", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">", "<" + LocaleLoader.getString("Commands.Usage.Level") + ">"));
  170. command.setExecutor(new MmoeditCommand());
  171. }
  172. private static void registerSkillresetCommand() {
  173. PluginCommand command = mcMMO.p.getCommand("skillreset");
  174. command.setDescription(LocaleLoader.getString("Commands.Description.skillreset"));
  175. command.setPermission("mcmmo.commands.skillreset;mcmmo.commands.skillreset.others"); // Only need the main ones, not the individual skill ones
  176. command.setPermissionMessage(permissionsMessage);
  177. command.setUsage(LocaleLoader.getString("Commands.Usage.2", "skillreset", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]", "<" + LocaleLoader.getString("Commands.Usage.Skill") + ">"));
  178. command.setExecutor(new SkillresetCommand());
  179. }
  180. private static void registerXprateCommand() {
  181. List<String> aliasList = new ArrayList<>();
  182. aliasList.add("mcxprate");
  183. PluginCommand command = mcMMO.p.getCommand("xprate");
  184. command.setDescription(LocaleLoader.getString("Commands.Description.xprate"));
  185. command.setPermission("mcmmo.commands.xprate;mcmmo.commands.xprate.reset;mcmmo.commands.xprate.set");
  186. command.setPermissionMessage(permissionsMessage);
  187. command.setUsage(LocaleLoader.getString("Commands.Usage.2", "xprate", "<" + LocaleLoader.getString("Commands.Usage.Rate") + ">", "<true|false>"));
  188. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "xprate", "reset"));
  189. command.setAliases(aliasList);
  190. command.setExecutor(new XprateCommand());
  191. }
  192. private static void registerInspectCommand() {
  193. PluginCommand command = mcMMO.p.getCommand("inspect");
  194. command.setDescription(LocaleLoader.getString("Commands.Description.inspect"));
  195. command.setPermission("mcmmo.commands.inspect;mcmmo.commands.inspect.far;mcmmo.commands.inspect.offline");
  196. command.setPermissionMessage(permissionsMessage);
  197. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "inspect", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
  198. command.setExecutor(new InspectCommand());
  199. }
  200. private static void registerMccooldownCommand() {
  201. PluginCommand command = mcMMO.p.getCommand("mccooldown");
  202. command.setDescription(LocaleLoader.getString("Commands.Description.mccooldown"));
  203. command.setPermission("mcmmo.commands.mccooldown");
  204. command.setPermissionMessage(permissionsMessage);
  205. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mccooldowns"));
  206. command.setExecutor(new MccooldownCommand());
  207. }
  208. private static void registerMcabilityCommand() {
  209. PluginCommand command = mcMMO.p.getCommand("mcability");
  210. command.setDescription(LocaleLoader.getString("Commands.Description.mcability"));
  211. command.setPermission("mcmmo.commands.mcability;mcmmo.commands.mcability.others");
  212. command.setPermissionMessage(permissionsMessage);
  213. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcability", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  214. command.setExecutor(new AbilityToggleCommand());
  215. }
  216. private static void registerMcmmoCommand() {
  217. PluginCommand command = mcMMO.p.getCommand("mcmmo");
  218. command.setDescription(LocaleLoader.getString("Commands.Description.mcmmo"));
  219. command.setPermission("mcmmo.commands.mcmmo.description;mcmmo.commands.mcmmo.help");
  220. command.setPermissionMessage(permissionsMessage);
  221. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcmmo"));
  222. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "mcmmo", "help"));
  223. command.setExecutor(new McmmoCommand());
  224. }
  225. private static void registerMcrankCommand() {
  226. PluginCommand command = mcMMO.p.getCommand("mcrank");
  227. command.setDescription(LocaleLoader.getString("Commands.Description.mcrank"));
  228. command.setPermission("mcmmo.commands.mcrank;mcmmo.commands.mcrank.others;mcmmo.commands.mcrank.others.far;mcmmo.commands.mcrank.others.offline");
  229. command.setPermissionMessage(permissionsMessage);
  230. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcrank", "[" + LocaleLoader.getString("Commands.Usage.Player") + "]"));
  231. command.setExecutor(new McrankCommand());
  232. }
  233. private static void registerMcstatsCommand() {
  234. PluginCommand command = mcMMO.p.getCommand("mcstats");
  235. command.setDescription(LocaleLoader.getString("Commands.Description.mcstats"));
  236. command.setPermission("mcmmo.commands.mcstats");
  237. command.setPermissionMessage(permissionsMessage);
  238. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcstats"));
  239. command.setExecutor(new McstatsCommand());
  240. }
  241. private static void registerMctopCommand() {
  242. PluginCommand command = mcMMO.p.getCommand("mctop");
  243. command.setDescription(LocaleLoader.getString("Commands.Description.mctop"));
  244. command.setPermission("mcmmo.commands.mctop"); // Only need the main one, not the individual skill ones
  245. command.setPermissionMessage(permissionsMessage);
  246. command.setUsage(LocaleLoader.getString("Commands.Usage.2", "mctop", "[" + LocaleLoader.getString("Commands.Usage.Skill") + "]", "[" + LocaleLoader.getString("Commands.Usage.Page") + "]"));
  247. command.setExecutor(new MctopCommand());
  248. }
  249. private static void registerMcpurgeCommand() {
  250. PluginCommand command = mcMMO.p.getCommand("mcpurge");
  251. command.setDescription(LocaleLoader.getString("Commands.Description.mcpurge", Config.getInstance().getOldUsersCutoff()));
  252. command.setPermission("mcmmo.commands.mcpurge");
  253. command.setPermissionMessage(permissionsMessage);
  254. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcpurge"));
  255. command.setExecutor(new McpurgeCommand());
  256. }
  257. private static void registerMcremoveCommand() {
  258. PluginCommand command = mcMMO.p.getCommand("mcremove");
  259. command.setDescription(LocaleLoader.getString("Commands.Description.mcremove"));
  260. command.setPermission("mcmmo.commands.mcremove");
  261. command.setPermissionMessage(permissionsMessage);
  262. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcremove", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
  263. command.setExecutor(new DatabaseRemovePlayerCommand());
  264. }
  265. private static void registerMmoshowdbCommand() {
  266. PluginCommand command = mcMMO.p.getCommand("mmoshowdb");
  267. command.setDescription(LocaleLoader.getString("Commands.Description.mmoshowdb"));
  268. command.setPermission("mcmmo.commands.mmoshowdb");
  269. command.setPermissionMessage(permissionsMessage);
  270. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mmoshowdb"));
  271. command.setExecutor(new MmoshowdbCommand());
  272. }
  273. private static void registerMcconvertCommand() {
  274. PluginCommand command = mcMMO.p.getCommand("mcconvert");
  275. command.setDescription(LocaleLoader.getString("Commands.Description.mcconvert"));
  276. command.setPermission("mcmmo.commands.mcconvert;mcmmo.commands.mcconvert.experience;mcmmo.commands.mcconvert.database");
  277. command.setPermissionMessage(permissionsMessage);
  278. command.setUsage(LocaleLoader.getString("Commands.Usage.2", "mcconvert", "database", "<flatfile|sql>"));
  279. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.2", "mcconvert", "experience", "<linear|exponential>"));
  280. command.setExecutor(new McconvertCommand());
  281. }
  282. // private static void registerAdminChatCommand() {
  283. // PluginCommand command = mcMMO.p.getCommand("adminchat");
  284. // command.setDescription(LocaleLoader.getString("Commands.Description.adminchat"));
  285. // command.setPermission("mcmmo.chat.adminchat");
  286. // command.setPermissionMessage(permissionsMessage);
  287. // command.setUsage(LocaleLoader.getString("Commands.Usage.0", "adminchat"));
  288. // command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "adminchat", "<on|off>"));
  289. // command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "adminchat", "<" + LocaleLoader.getString("Commands.Usage.Message") + ">"));
  290. // command.setExecutor(new AdminChatCommand());
  291. // }
  292. // private static void registerPartyChatCommand() {
  293. // PluginCommand command = mcMMO.p.getCommand("partychat");
  294. // command.setDescription(LocaleLoader.getString("Commands.Description.partychat"));
  295. // command.setPermission("mcmmo.chat.partychat;mcmmo.commands.party");
  296. // command.setPermissionMessage(permissionsMessage);
  297. // command.setUsage(LocaleLoader.getString("Commands.Usage.0", "partychat"));
  298. // command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "partychat", "<on|off>"));
  299. // command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "partychat", "<" + LocaleLoader.getString("Commands.Usage.Message") + ">"));
  300. // command.setExecutor(new PartyChatCommand());
  301. // }
  302. private static void registerPartyCommand() {
  303. PluginCommand command = mcMMO.p.getCommand("party");
  304. command.setDescription(LocaleLoader.getString("Commands.Description.party"));
  305. command.setPermission("mcmmo.commands.party;mcmmo.commands.party.accept;mcmmo.commands.party.create;mcmmo.commands.party.disband;" +
  306. "mcmmo.commands.party.xpshare;mcmmo.commands.party.invite;mcmmo.commands.party.itemshare;mcmmo.commands.party.join;" +
  307. "mcmmo.commands.party.kick;mcmmo.commands.party.lock;mcmmo.commands.party.owner;mcmmo.commands.party.password;" +
  308. "mcmmo.commands.party.quit;mcmmo.commands.party.rename;mcmmo.commands.party.unlock");
  309. command.setPermissionMessage(permissionsMessage);
  310. command.setExecutor(new PartyCommand());
  311. }
  312. private static void registerPtpCommand() {
  313. PluginCommand command = mcMMO.p.getCommand("ptp");
  314. command.setDescription(LocaleLoader.getString("Commands.Description.ptp"));
  315. command.setPermission("mcmmo.commands.ptp"); // Only need the main one, not the individual ones for toggle/accept/acceptall
  316. command.setPermissionMessage(permissionsMessage);
  317. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "ptp", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
  318. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "ptp", "<toggle|accept|acceptall>"));
  319. command.setExecutor(new PtpCommand());
  320. }
  321. private static void registerHardcoreCommand() {
  322. PluginCommand command = mcMMO.p.getCommand("hardcore");
  323. command.setDescription(LocaleLoader.getString("Commands.Description.hardcore"));
  324. command.setPermission("mcmmo.commands.hardcore;mcmmo.commands.hardcore.toggle;mcmmo.commands.hardcore.modify");
  325. command.setPermissionMessage(permissionsMessage);
  326. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "hardcore", "[on|off]"));
  327. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "hardcore", "<" + LocaleLoader.getString("Commands.Usage.Rate") + ">"));
  328. command.setExecutor(new HardcoreCommand());
  329. }
  330. private static void registerVampirismCommand() {
  331. PluginCommand command = mcMMO.p.getCommand("vampirism");
  332. command.setDescription(LocaleLoader.getString("Commands.Description.vampirism"));
  333. command.setPermission("mcmmo.commands.vampirism;mcmmo.commands.vampirism.toggle;mcmmo.commands.vampirism.modify");
  334. command.setPermissionMessage(permissionsMessage);
  335. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "vampirism", "[on|off]"));
  336. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.1", "vampirism", "<" + LocaleLoader.getString("Commands.Usage.Rate") + ">"));
  337. command.setExecutor(new VampirismCommand());
  338. }
  339. private static void registerMcnotifyCommand() {
  340. PluginCommand command = mcMMO.p.getCommand("mcnotify");
  341. command.setDescription(LocaleLoader.getString("Commands.Description.mcnotify"));
  342. command.setPermission("mcmmo.commands.mcnotify");
  343. command.setPermissionMessage(permissionsMessage);
  344. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcnotify"));
  345. command.setExecutor(new McnotifyCommand());
  346. }
  347. private static void registerMHDCommand() {
  348. PluginCommand command = mcMMO.p.getCommand("mhd");
  349. command.setDescription("Resets all mob health bar settings for all players to the default"); //TODO: Localize
  350. command.setPermission("mcmmo.commands.mhd");
  351. command.setPermissionMessage(permissionsMessage);
  352. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mhd"));
  353. command.setExecutor(new MHDCommand());
  354. }
  355. private static void registerMcscoreboardCommand() {
  356. PluginCommand command = mcMMO.p.getCommand("mcscoreboard");
  357. command.setDescription("Change the current mcMMO scoreboard being displayed"); //TODO: Localize
  358. command.setPermission("mcmmo.commands.mcscoreboard");
  359. command.setPermissionMessage(permissionsMessage);
  360. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mcscoreboard", "<CLEAR | KEEP>"));
  361. command.setUsage(command.getUsage() + "\n" + LocaleLoader.getString("Commands.Usage.2", "mcscoreboard", "time", "<seconds>"));
  362. command.setExecutor(new McscoreboardCommand());
  363. }
  364. private static void registerMcImportCommand() {
  365. PluginCommand command = mcMMO.p.getCommand("mcimport");
  366. command.setDescription("Import mod config files"); //TODO: Localize
  367. command.setPermission("mcmmo.commands.mcimport");
  368. command.setPermissionMessage(permissionsMessage);
  369. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcimport"));
  370. command.setExecutor(new McImportCommand());
  371. }
  372. private static void registerReloadLocaleCommand() {
  373. PluginCommand command = mcMMO.p.getCommand("mcmmoreloadlocale");
  374. command.setDescription("Reloads locale"); // TODO: Localize
  375. command.setPermission("mcmmo.commands.reloadlocale");
  376. command.setPermissionMessage(permissionsMessage);
  377. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mcmmoreloadlocale"));
  378. command.setExecutor(new McmmoReloadLocaleCommand());
  379. }
  380. private static void registerCompatibilityCommand() {
  381. PluginCommand command = mcMMO.p.getCommand("mmocompat"); //TODO: Localize
  382. command.setDescription(LocaleLoader.getString("Commands.Description.mmocompat"));
  383. command.setUsage(LocaleLoader.getString("Commands.Usage.0", "mmocompat"));
  384. command.setExecutor(new CompatibilityCommand());
  385. }
  386. private static void registerXPBarCommand() {
  387. PluginCommand command = mcMMO.p.getCommand("mmoxpbar"); //TODO: Localize
  388. command.setDescription(LocaleLoader.getString("Commands.Description.mmoxpbar"));
  389. command.setUsage(LocaleLoader.getString("Commands.Usage.1", "mmoxpbar", "<reset | disable>"));
  390. command.setUsage(command.getUsage() +"\n" + LocaleLoader.getString("Commands.Usage.2", "mmoxpbar", "<show | hide | disable>", "<skillname>"));
  391. command.setExecutor(new XPBarCommand());
  392. }
  393. public static void registerCommands() {
  394. // Generic Commands
  395. registerXPBarCommand();
  396. registerMmoInfoCommand();
  397. registerMmoDebugCommand();
  398. registerMcImportCommand();
  399. registerMcabilityCommand();
  400. registerMcgodCommand();
  401. registerMcChatSpyCommand();
  402. registerMcmmoCommand();
  403. registerMcnotifyCommand();
  404. registerMcrefreshCommand();
  405. registerMcscoreboardCommand();
  406. registerMHDCommand();
  407. registerXprateCommand();
  408. // Database Commands
  409. registerMcpurgeCommand();
  410. registerMcremoveCommand();
  411. registerMmoshowdbCommand();
  412. registerMcconvertCommand();
  413. // Experience Commands
  414. registerAddlevelsCommand();
  415. registerAddxpCommand();
  416. registerMmoeditCommand();
  417. registerSkillresetCommand();
  418. // Hardcore Commands
  419. registerHardcoreCommand();
  420. registerVampirismCommand();
  421. // Party Commands
  422. registerPartyCommand();
  423. registerPtpCommand();
  424. // Player Commands
  425. registerInspectCommand();
  426. registerMccooldownCommand();
  427. registerMcrankCommand();
  428. registerMcstatsCommand();
  429. registerMctopCommand();
  430. // Skill Commands
  431. registerSkillCommands();
  432. // Admin commands
  433. registerReloadLocaleCommand();
  434. // Misc
  435. registerCompatibilityCommand();
  436. }
  437. }