AddxpCommand.java 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. package com.gmail.nossr50.commands.general;
  2. import org.bukkit.ChatColor;
  3. import org.bukkit.command.Command;
  4. import org.bukkit.command.CommandExecutor;
  5. import org.bukkit.command.CommandSender;
  6. import org.bukkit.entity.Player;
  7. import com.gmail.nossr50.Users;
  8. import com.gmail.nossr50.m;
  9. import com.gmail.nossr50.mcMMO;
  10. import com.gmail.nossr50.mcPermissions;
  11. import com.gmail.nossr50.config.LoadProperties;
  12. import com.gmail.nossr50.locale.mcLocale;
  13. import com.gmail.nossr50.skills.Skills;
  14. public class AddxpCommand implements CommandExecutor {
  15. private final mcMMO plugin;
  16. public AddxpCommand(mcMMO instance) {
  17. this.plugin = instance;
  18. }
  19. @Override
  20. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  21. Player player = null;
  22. if (sender instanceof Player) {
  23. player = (Player) sender;
  24. }
  25. if (player != null && !mcPermissions.getInstance().mmoedit(player)) {
  26. sender.sendMessage("This command requires permissions.");
  27. return true;
  28. }
  29. if (!LoadProperties.addxpEnable) {
  30. sender.sendMessage("This command is not enabled.");
  31. return true;
  32. }
  33. if (!(sender instanceof Player)) {
  34. if (args.length < 2) {
  35. // No console aliasing yet
  36. // System.out.println("Usage is /"+LoadProperties.addxp+" playername skillname xp");
  37. System.out.println("Usage is /addxp playername skillname xp");
  38. return true;
  39. } else if (args.length == 3) {
  40. if ((plugin.getServer().getPlayer(args[0]) != null) && m.isInt(args[2]) && Skills.isSkill(args[1])) {
  41. int newvalue = Integer.valueOf(args[2]);
  42. Users.getProfile(plugin.getServer().getPlayer(args[0])).addXP(Skills.getSkillType(args[1]), newvalue, plugin.getServer().getPlayer(args[0]));
  43. plugin.getServer().getPlayer(args[0]).sendMessage(ChatColor.GREEN + "Experience granted!");
  44. System.out.println(args[1] + " has been modified for " + plugin.getServer().getPlayer(args[0]).getName() + ".");
  45. Skills.XpCheckAll(plugin.getServer().getPlayer(args[0]));
  46. }
  47. } else {
  48. // No console aliasing yet
  49. // System.out.println("Usage is /"+LoadProperties.addxp+" playername skillname xp");
  50. System.out.println("Usage is /addxp playername skillname xp");
  51. }
  52. return true;
  53. }
  54. if (!mcPermissions.getInstance().mmoedit(player)) {
  55. player.sendMessage(ChatColor.YELLOW + "[mcMMO] " + ChatColor.DARK_RED + mcLocale.getString("mcPlayerListener.NoPermission"));
  56. return true;
  57. }
  58. if (args.length < 2) {
  59. player.sendMessage(ChatColor.RED + "Usage is /addxp playername skillname xp");
  60. return true;
  61. }
  62. if (args.length == 3) {
  63. if ((plugin.getServer().getPlayer(args[0]) != null) && m.isInt(args[2]) && Skills.isSkill(args[1])) {
  64. int newvalue = Integer.valueOf(args[2]);
  65. Users.getProfile(plugin.getServer().getPlayer(args[0])).addXP(Skills.getSkillType(args[1]), newvalue, plugin.getServer().getPlayer(args[0]));
  66. plugin.getServer().getPlayer(args[0]).sendMessage(ChatColor.GREEN + "Experience granted!");
  67. player.sendMessage(ChatColor.RED + args[1] + " has been modified.");
  68. Skills.XpCheckAll(plugin.getServer().getPlayer(args[0]));
  69. }
  70. } else if (args.length == 2 && m.isInt(args[1]) && Skills.isSkill(args[0])) {
  71. int newvalue = Integer.valueOf(args[1]);
  72. Users.getProfile(player).addXP(Skills.getSkillType(args[0]), newvalue, player);
  73. player.sendMessage(ChatColor.RED + args[0] + " has been modified.");
  74. } else {
  75. player.sendMessage(ChatColor.RED + "Usage is /addxp playername skillname xp");
  76. }
  77. return true;
  78. }
  79. }