NametagVisibility function problem?

Discussion in 'Plugin Help/Development/Requests' started by Penor, Mar 14, 2015.

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

    Penor

    Hey I've been having problems with the new features that 1.8 has to offer. Seems like the nametag visibility function isnt working like its suppose to and I'm stuck code-wise because I cant figure out what I'm doing wrong. Maybe one of you guys can help me out.

    Code:
        /**
         *
         * @param color
         */
        public void setPrefix(ChatColor color, String name) {
            if (color == null) {
                for (org.bukkit.scoreboard.Team team : scoreboard.getTeams()) {
                    if (team.hasPlayer(getHandle())) {
                        team.removePlayer(getHandle());
                    }
                }
                //for (Brawler brawler : GameWorld.getBrawlers(this)) {
                for(Iterator<Brawler> iter = getServer().iterator(); iter.hasNext(); ) {
                    Brawler brawler = iter.next();
                    for (org.bukkit.scoreboard.Team team : brawler.getScoreboard().getTeams()) {
                        if (team.hasPlayer(getHandle())) {
                            team.removePlayer(getHandle());
                        }
                    }
                }
            } else {
                org.bukkit.scoreboard.Team team = scoreboard.getTeam(color.name());
                if (team == null) {
                    team = scoreboard.registerNewTeam(color.name());
                }
                team.setPrefix(color.toString());
                team.addPlayer(Bukkit.getOfflinePlayer(name));
                if(color == ChatColor.WHITE)
                    team.setNameTagVisibility(NameTagVisibility.ALWAYS);
                else
                    team.setNameTagVisibility(NameTagVisibility.NEVER);
                //for (Brawler brawler : GameWorld.getBrawlers(this)) {
                for(Iterator<Brawler> iter = getServer().iterator(); iter.hasNext(); ) {
                    Brawler brawler = iter.next();
                    org.bukkit.scoreboard.Team t = brawler.getScoreboard().getTeam(color.name());
                    if (t == null) {
                        t = brawler.getScoreboard().registerNewTeam(color.name());
                    }
                    t.setPrefix(color.toString());
                    t.addPlayer(Bukkit.getOfflinePlayer(name));
                }
            }
        }
    How this is suppose to work is that in my minigame, I color the nametags to signify that they are in game, and while in game nametags should be hidden. If the nametag is white then they are not in game and the nametag should be visible to everyone. If anyone can point out what I'm doing wrong that'd be great.

    Thanks.
     
  2. Offline

    Niels15

    Same problem, someone got solution?
     
Thread Status:
Not open for further replies.

Share This Page