MmoeditCommand.java 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  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.mcPermissions;
  10. import com.gmail.nossr50.datatypes.PlayerProfile;
  11. import com.gmail.nossr50.locale.mcLocale;
  12. import com.gmail.nossr50.skills.Skills;
  13. public class MmoeditCommand implements CommandExecutor {
  14. @Override
  15. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  16. Player player = null;
  17. if (sender instanceof Player)
  18. {
  19. player = (Player) sender;
  20. }
  21. if (player != null && !mcPermissions.getInstance().mmoedit(player)) {
  22. sender.sendMessage("This command requires permissions.");
  23. return true;
  24. }
  25. if (!(sender instanceof Player))
  26. {
  27. if (args.length < 2)
  28. {
  29. System.out.println("Usage is /mmoedit playername skillname newvalue");
  30. return true;
  31. } else if (args.length == 3)
  32. {
  33. PlayerProfile PPt = null;
  34. if(Users.players.containsKey(args[0].toLowerCase())) {
  35. PPt = Users.players.get(args[0].toLowerCase());
  36. }
  37. if(PPt == null)
  38. Users.getOfflineProfile(args[0]); //Only grab offline profile if the above failed
  39. if(!PPt.isLoaded())
  40. {
  41. sender.sendMessage("Player does not exist in the database!");
  42. return true;
  43. }
  44. if (m.isInt(args[2]) && Skills.isSkill(args[1]))
  45. {
  46. int newvalue = Integer.valueOf(args[2]);
  47. Users.getOfflineProfile(args[0]).modifyskill(Skills.getSkillType(args[1]), newvalue);
  48. System.out.println(args[1] + " has been modified for " + args[0] + ".");
  49. }
  50. } else
  51. {
  52. System.out.println("Usage is /mmoedit playername skillname newvalue");
  53. }
  54. return true;
  55. }
  56. if (!mcPermissions.getInstance().mmoedit(player))
  57. {
  58. player.sendMessage(ChatColor.YELLOW + "[mcMMO] " + ChatColor.DARK_RED + mcLocale.getString("mcPlayerListener.NoPermission"));
  59. return true;
  60. }
  61. if (args.length < 2)
  62. {
  63. player.sendMessage(ChatColor.RED + "Usage is /mmoedit playername skillname newvalue");
  64. return true;
  65. }
  66. if (args.length == 3)
  67. {
  68. PlayerProfile PPt = null;
  69. if(Users.players.containsKey(args[0].toLowerCase())) {
  70. PPt = Users.players.get(args[0].toLowerCase());
  71. }
  72. if(PPt == null)
  73. Users.getOfflineProfile(args[0]); //Only grab offline profile if the above failed
  74. if(!PPt.isLoaded())
  75. {
  76. sender.sendMessage("Player does not exist in the database!");
  77. return true;
  78. }
  79. if (m.isInt(args[2]) && Skills.isSkill(args[1]))
  80. {
  81. int newvalue = Integer.valueOf(args[2]);
  82. PPt.modifyskill(Skills.getSkillType(args[1]), newvalue);
  83. player.sendMessage(ChatColor.RED + args[1] + " has been modified for "+args[0]);
  84. }
  85. } else if (args.length == 2)
  86. {
  87. if (m.isInt(args[1]) && Skills.isSkill(args[0]))
  88. {
  89. PlayerProfile PP = Users.getProfile(player);
  90. int newvalue = Integer.valueOf(args[1]);
  91. PP.modifyskill(Skills.getSkillType(args[0]), newvalue);
  92. player.sendMessage(ChatColor.RED + args[0] + " has been modified.");
  93. }
  94. } else
  95. {
  96. player.sendMessage(ChatColor.RED + "Usage is /mmoedit playername skillname newvalue");
  97. }
  98. return true;
  99. }
  100. }