Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static Scoreboard scoreboard = new Scoreboard();
- public static void createBoard(Player p) throws Exception {
- ScoreboardTeam team = null;
- if (scoreboard.getPlayerTeam(Bukkit.getPlayer(p.getName()).getName()) == null) {
- team = scoreboard.createTeam(p.getName());
- }
- scoreboard.addPlayerToTeam(p.getName(), team.getName());
- team.setPrefix("");
- team.setDisplayName("");
- team.setSuffix("");
- PacketPlayOutScoreboardTeam packet = new PacketPlayOutScoreboardTeam(team, 0);
- ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet);
- Bukkit.getOnlinePlayers().stream().filter(pp -> pp != p).forEach(pp -> ((CraftPlayer) pp).getHandle().playerConnection.sendPacket(packet));
- Bukkit.getOnlinePlayers().stream().filter(pp -> pp != p).forEach(pp -> {
- ScoreboardTeam t = scoreboard.getTeam(pp.getName());
- PacketPlayOutScoreboardTeam packetShow = new PacketPlayOutScoreboardTeam(t, 0);
- ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packetShow);
- });
- }
- public static void updateBoard(Player p) {
- if(p != null) {
- ScoreboardTeam team = scoreboard.getPlayerTeam(p.getName());
- team.setDisplayName("");
- for (Player online : Bukkit.getOnlinePlayers()) {
- team.setPrefix(getValidPrefix(p, online));
- final Guild g = GuildManager.getGuild(p);
- if (g != null) {
- if (g.isOwner(p.getName())) {
- team.setSuffix(ChatUtil.fixColor(" &7✪✪"));
- } else if (g.isLeader(p.getName())) {
- team.setSuffix(ChatUtil.fixColor(" &7✪"));
- }
- }
- PacketPlayOutScoreboardTeam packet = new PacketPlayOutScoreboardTeam(team, 2);
- ((CraftPlayer) online).getHandle().playerConnection.sendPacket(packet);
- }
- }
- }
- public static void refreshAll() {
- for (Player p : Bukkit.getOnlinePlayers()) {
- updateBoard(p);
- }
- }
- public static String getValidPrefix(Player get, Player send) {
- final User u = UserManager.getUser(get);
- if (u != null && u.isProtected()) {
- return ChatUtil.fixColor("&e[OCHRONA] &r");
- }
- String color = "&c";
- final Guild g = GuildManager.getGuild(get);
- final Guild o = GuildManager.getGuild(send);
- if(g != null && o != null){
- if(g.equals(o)){
- color = "&a";
- }else if(g.getAlliance().contains(o.getTag())){
- color = "&9";
- }
- }
- String tag = "";
- if (g != null) {
- tag = "&8[" + color + g.getTag()+ "&8] " + color;
- }
- return ChatUtil.fixColor(tag);
- }
- public static void removeBoard(Player p) {
- try {
- if (scoreboard.getPlayerTeam(Bukkit.getPlayer(p.getName()).getName()) == null) {
- return;
- }
- ScoreboardTeam team = scoreboard.getPlayerTeam(p.getName());
- scoreboard.removePlayerFromTeam(p.getName(), team);
- PacketPlayOutScoreboardTeam packet = new PacketPlayOutScoreboardTeam(team, 1);
- ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet);
- Bukkit.getOnlinePlayers().stream().filter(pp -> pp != p).forEach(pp -> ((CraftPlayer) pp).getHandle().playerConnection.sendPacket(packet));
- Bukkit.getOnlinePlayers().stream().filter(pp -> pp != p).forEach(pp -> {
- ScoreboardTeam t = scoreboard.getTeam(pp.getName());
- PacketPlayOutScoreboardTeam packetHide = new PacketPlayOutScoreboardTeam(t, 1);
- ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packetHide);
- });
- scoreboard.removeTeam(team);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement