Solved LeaderBoard Help

Discussion in 'Plugin Development' started by The Fancy Whale, Apr 2, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    The Fancy Whale

    I am working on a method to reload the scoreboard. For some reason whenever I reload the scoreboard this strange thing happens:
    [​IMG]
    Here is my method for reloading the board:
    Code:java
    1. public static void reloadBoard(Player player){
    2. int killz = stats.getConfig().getInt(player.getName().toLowerCase() + ".kills");
    3. int deathz = stats.getConfig().getInt(player.getName().toLowerCase() + ".deaths");
    4. player.setScoreboard(manager.getNewScoreboard());
    5. objective.setDisplaySlot(DisplaySlot.SIDEBAR);
    6. objective.setDisplayName(ChatColor.GOLD + "Stats");
    7. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Kills:"));
    8. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + killz));
    9. statsboard.resetScores(Bukkit.getOfflinePlayer(" "));
    10. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.RED + "Deaths:"));
    11. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.RED + "" + deathz));
    12. statsboard.resetScores(Bukkit.getOfflinePlayer(""));
    13. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.GREEN + "K/D Ratio:"));
    14. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + checkKD(player)));
    15. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.RED + "K/D Ratio:"));
    16. statsboard.resetScores(Bukkit.getOfflinePlayer(ChatColor.RED + "" + checkKD(player)));
    17. Score kills = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Kills:"));
    18. kills.setScore(8);
    19. Score killtot = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + killz));
    20. killtot.setScore(7);
    21. Score blank = objective.getScore(Bukkit.getOfflinePlayer(" "));
    22. blank.setScore(6);
    23. Score deaths = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "Deaths:"));
    24. deaths.setScore(5);
    25. Score deathtot = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "" + deathz));
    26. deathtot.setScore(4);
    27. Score blank2 = objective.getScore(Bukkit.getOfflinePlayer(""));
    28. blank2.setScore(3);
    29. if (checkKD(player) >= 1){
    30. Score kd2 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "K/D Ratio:"));
    31. kd2.setScore(2);
    32. Score kd3 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + checkKD(player)));
    33. kd3.setScore(1);
    34. }
    35. else {
    36. Score kd2 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "K/D Ratio:"));
    37. kd2.setScore(2);
    38. Score kd3 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "" + checkKD(player)));
    39. kd3.setScore(1);
    40. }
    41. player.setScoreboard(statsboard);
    42. }

    Also, no errors

    EDIT: new code:
    Code:java
    1. public static void reloadBoard(Player player){
    2. int killz = stats.getConfig().getInt(player.getName().toLowerCase() + ".kills");
    3. int deathz = stats.getConfig().getInt(player.getName().toLowerCase() + ".deaths");
    4. player.setScoreboard(manager.getNewScoreboard());
    5. objective.setDisplaySlot(DisplaySlot.SIDEBAR);
    6. objective.setDisplayName(ChatColor.GOLD + "Stats");
    7. for(OfflinePlayer playe : statsboard.getPlayers())
    8. {
    9.  
    10. statsboard.resetScores(playe);
    11. }
    12. Score kills = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Kills:"));
    13. kills.setScore(8);
    14. Score killtot = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + killz));
    15. killtot.setScore(7);
    16. Score blank = objective.getScore(Bukkit.getOfflinePlayer(" "));
    17. blank.setScore(6);
    18. Score deaths = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "Deaths:"));
    19. deaths.setScore(5);
    20. Score deathtot = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "" + deathz));
    21. deathtot.setScore(4);
    22. Score blank2 = objective.getScore(Bukkit.getOfflinePlayer(""));
    23. blank2.setScore(3);
    24. if (checkKD(player) >= 1){
    25. Score kd2 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "K/D Ratio:"));
    26. kd2.setScore(2);
    27. Score kd3 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "" + checkKD(player)));
    28. kd3.setScore(1);
    29. }
    30. else {
    31. Score kd2 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "K/D Ratio:"));
    32. kd2.setScore(2);
    33. Score kd3 = objective.getScore(Bukkit.getOfflinePlayer(ChatColor.RED + "" + checkKD(player)));
    34. kd3.setScore(1);
    35. }
    36. player.setScoreboard(statsboard);
    37. }

    But for some reason when I use the method to reload board for someone, it reloads the board for everyone.. Anyone know what the issue is now?
    (I no longer have that weird issue like in the picture)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 7, 2016
Thread Status:
Not open for further replies.

Share This Page