Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.lobbycore.scoreboard;
- import com.lobbycore.Main;
- import java.util.List;
- import me.clip.placeholderapi.PlaceholderAPI;
- import net.milkbowl.vault.permission.Permission;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Server;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.entity.Player;
- import org.bukkit.event.Listener;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.scheduler.BukkitScheduler;
- import org.bukkit.scoreboard.DisplaySlot;
- import org.bukkit.scoreboard.Objective;
- import org.bukkit.scoreboard.Score;
- import org.bukkit.scoreboard.Scoreboard;
- import org.bukkit.scoreboard.ScoreboardManager;
- public class ScoreBoard
- implements Listener
- {
- Main pl;
- private int taskID;
- public ScoreBoard(Main pl)
- {
- this.pl = pl;
- }
- public void createScoreboard(int ticks)
- {
- BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
- this.taskID = scheduler.scheduleSyncRepeatingTask(this.pl, new Runnable()
- {
- public void run()
- {
- FileConfiguration config = ScoreBoard.this.pl.getConfig();
- for (Player p : Bukkit.getOnlinePlayers()) {
- ScoreBoard.this.actualizarScoreboard(p, config);
- }
- }
- }, 0L, ticks);
- }
- private void actualizarScoreboard(Player p, FileConfiguration config)
- {
- ScoreboardManager manager = Bukkit.getScoreboardManager();
- Scoreboard scoreboard = manager.getNewScoreboard();
- Objective o = scoreboard.registerNewObjective("lobbycore", "dummy");
- o.setDisplaySlot(DisplaySlot.SIDEBAR);
- o.setDisplayName(ChatColor.translateAlternateColorCodes('&', config.getString("Scoreboard.title")));
- List<String> list = config.getStringList("Scoreboard.text");
- String name = "%player_name%";
- String ping = "%player_ping%";
- String online = "%bungee_total%";
- String rank = "%vault_rank%";
- String name2 = PlaceholderAPI.setPlaceholders(p, "%player_name%");
- String ping2 = PlaceholderAPI.setPlaceholders(p, "%player_ping%");
- String online2 = PlaceholderAPI.setPlaceholders(p, "%bungee_total%");
- for (int i = 0; i < list.size(); i++) {
- if (Bukkit.getPluginManager().isPluginEnabled("PermissionsEx"))
- {
- 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))));
- score1.setScore(list.size() - i);
- }
- else
- {
- Score score = o.getScore(ChatColor.translateAlternateColorCodes('&', ((String)list.get(i)).replace("%player_name%", name2).replace("%bungee_total%", online2).replace("%player_ping%", ping2)));
- score.setScore(list.size() - i);
- }
- }
- p.setScoreboard(scoreboard);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement