Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.87 KB | None | 0 0
  1. package com.lobbycore.scoreboard;
  2.  
  3. import com.lobbycore.Main;
  4. import java.util.List;
  5. import me.clip.placeholderapi.PlaceholderAPI;
  6. import net.milkbowl.vault.permission.Permission;
  7. import org.bukkit.Bukkit;
  8. import org.bukkit.ChatColor;
  9. import org.bukkit.Server;
  10. import org.bukkit.configuration.file.FileConfiguration;
  11. import org.bukkit.entity.Player;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.plugin.PluginManager;
  14. import org.bukkit.scheduler.BukkitScheduler;
  15. import org.bukkit.scoreboard.DisplaySlot;
  16. import org.bukkit.scoreboard.Objective;
  17. import org.bukkit.scoreboard.Score;
  18. import org.bukkit.scoreboard.Scoreboard;
  19. import org.bukkit.scoreboard.ScoreboardManager;
  20.  
  21. public class ScoreBoard
  22. implements Listener
  23. {
  24. Main pl;
  25. private int taskID;
  26.  
  27. public ScoreBoard(Main pl)
  28. {
  29. this.pl = pl;
  30. }
  31.  
  32. public void createScoreboard(int ticks)
  33. {
  34. BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
  35. this.taskID = scheduler.scheduleSyncRepeatingTask(this.pl, new Runnable()
  36. {
  37. public void run()
  38. {
  39. FileConfiguration config = ScoreBoard.this.pl.getConfig();
  40. for (Player p : Bukkit.getOnlinePlayers()) {
  41. ScoreBoard.this.actualizarScoreboard(p, config);
  42. }
  43. }
  44. }, 0L, ticks);
  45. }
  46.  
  47. private void actualizarScoreboard(Player p, FileConfiguration config)
  48. {
  49. ScoreboardManager manager = Bukkit.getScoreboardManager();
  50. Scoreboard scoreboard = manager.getNewScoreboard();
  51. Objective o = scoreboard.registerNewObjective("lobbycore", "dummy");
  52. o.setDisplaySlot(DisplaySlot.SIDEBAR);
  53. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', config.getString("Scoreboard.title")));
  54. List<String> list = config.getStringList("Scoreboard.text");
  55. String name = "%player_name%";
  56. String ping = "%player_ping%";
  57. String online = "%bungee_total%";
  58. String rank = "%vault_rank%";
  59. String name2 = PlaceholderAPI.setPlaceholders(p, "%player_name%");
  60. String ping2 = PlaceholderAPI.setPlaceholders(p, "%player_ping%");
  61. String online2 = PlaceholderAPI.setPlaceholders(p, "%bungee_total%");
  62. for (int i = 0; i < list.size(); i++) {
  63. if (Bukkit.getPluginManager().isPluginEnabled("PermissionsEx"))
  64. {
  65. Score score1 = o.getScore(ChatColor.translateAlternateColorCodes('&', ((String)list.get(i)).replace("%player_name%", name2).replace("%bungee_total%", online2).replace("%player_ping%", ping2).replace("%vault_rank%", Main.permission.getPrimaryGroup(p))));
  66. score1.setScore(list.size() - i);
  67. }
  68. else
  69. {
  70. Score score = o.getScore(ChatColor.translateAlternateColorCodes('&', ((String)list.get(i)).replace("%player_name%", name2).replace("%bungee_total%", online2).replace("%player_ping%", ping2)));
  71. score.setScore(list.size() - i);
  72. }
  73. }
  74. p.setScoreboard(scoreboard);
  75. }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement