CommandRegistrationManager.java 26 KB

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