MchudCommand.java 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package com.gmail.nossr50.spout.commands;
  2. import org.bukkit.command.Command;
  3. import org.bukkit.command.CommandExecutor;
  4. import org.bukkit.command.CommandSender;
  5. import org.bukkit.entity.Player;
  6. import com.gmail.nossr50.mcMMO;
  7. import com.gmail.nossr50.commands.CommandHelper;
  8. import com.gmail.nossr50.datatypes.PlayerProfile;
  9. import com.gmail.nossr50.locale.LocaleLoader;
  10. import com.gmail.nossr50.spout.SpoutConfig;
  11. import com.gmail.nossr50.spout.huds.HudType;
  12. import com.gmail.nossr50.spout.huds.SpoutHud;
  13. import com.gmail.nossr50.util.Users;
  14. public class MchudCommand implements CommandExecutor {
  15. @Override
  16. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  17. String usage = LocaleLoader.getString("Commands.Usage.1", new Object[] {"mchud", "<DISABLED | STANDARD | SMALL | RETRO>"});
  18. String invalid = LocaleLoader.getString("Commands.mchud.Invalid");
  19. if (CommandHelper.noConsoleUsage(sender)) {
  20. return true;
  21. }
  22. if (!mcMMO.spoutEnabled || !SpoutConfig.getInstance().getXPBarEnabled()) {
  23. sender.sendMessage(LocaleLoader.getString("Commands.Disabled"));
  24. return true;
  25. }
  26. Player player = (Player) sender;
  27. PlayerProfile playerProfile = Users.getProfile(player);
  28. SpoutHud spoutHud = playerProfile.getSpoutHud();
  29. if (spoutHud == null) {
  30. sender.sendMessage(LocaleLoader.getString("Commands.Disabled"));
  31. return true;
  32. }
  33. switch (args.length) {
  34. case 1:
  35. for (HudType hudType : HudType.values()) {
  36. if (hudType.toString().equalsIgnoreCase(args[0])) {
  37. playerProfile.setHudType(hudType);
  38. spoutHud.initializeXpBar();
  39. spoutHud.updateXpBar();
  40. return true;
  41. }
  42. }
  43. player.sendMessage(invalid);
  44. return true;
  45. default:
  46. player.sendMessage(usage);
  47. return true;
  48. }
  49. }
  50. }