mcRankAsync.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package com.gmail.nossr50.runnables;
  2. import java.util.Map;
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.command.CommandSender;
  6. import com.gmail.nossr50.mcMMO;
  7. import com.gmail.nossr50.datatypes.SkillType;
  8. import com.gmail.nossr50.util.Database;
  9. import com.gmail.nossr50.util.Misc;
  10. public class mcRankAsync implements Runnable {
  11. private Database database = mcMMO.getPlayerDatabase();
  12. private final String playerName;
  13. private final CommandSender sender;
  14. public mcRankAsync(String playerName, CommandSender sender) {
  15. this.playerName = playerName;
  16. this.sender = sender;
  17. }
  18. @Override
  19. public void run() {
  20. final Map<String, Integer> skills = database.readSQLRank(playerName);
  21. Bukkit.getScheduler().scheduleSyncDelayedTask(Bukkit.getPluginManager().getPlugin("mcMMO"), new Runnable() {
  22. @Override
  23. public void run() {
  24. for (SkillType skillType : SkillType.values()) {
  25. if (skillType.equals(SkillType.ALL))
  26. continue; // We want the overall ranking to be at the bottom
  27. sender.sendMessage(ChatColor.YELLOW + Misc.getCapitalized(skillType.name()) + ChatColor.GREEN + " - " + (skills.get(skillType.name()) == null ? ChatColor.WHITE + "Unranked" : ChatColor.GOLD + "Rank " + ChatColor.WHITE + "#" + ChatColor.GREEN + skills.get(skillType.name())));
  28. }
  29. sender.sendMessage(ChatColor.YELLOW + "Overall" + ChatColor.GREEN + " - " + (skills.get("ALL") == null ? ChatColor.WHITE + "Unranked" : ChatColor.GOLD + "Rank " + ChatColor.WHITE + "#" + ChatColor.GREEN + skills.get("ALL")));
  30. }
  31. }, 1L);
  32. }
  33. }