public void addGuild(Guild to) { if (to == null) return; Scoreboard scoreboard = getUser().getScoreboard(); Guild guild = getUser().getGuild(); if (guild != null) { if (guild.equals(to)) { initialize(); return; } Team team = scoreboard.getTeam(to.getTag()); if (team == null) team = scoreboard.registerNewTeam(to.getTag()); for (User u : to.getMembers()) { OfflineUser player = new OfflineUser(u.getName()); if (!team.hasPlayer(player)) team.addPlayer(player); } String prefix = Settings.getInstance().prefixOther; if (guild.getAllies().contains(to)) prefix = Settings.getInstance().prefixAllies; if (guild.getEnemies().contains(to)) prefix = Settings.getInstance().prefixEnemies; prefix = prefix.replace("{TAG}", to.getTag()); if (prefix.length() > 16) prefix = prefix.substring(0, 16); team.setPrefix(prefix); } else { Team team = scoreboard.getTeam(to.getTag()); if (team == null) team = scoreboard.registerNewTeam(to.getTag()); for (User u : to.getMembers()) { OfflineUser player = new OfflineUser(u.getName()); if (!team.hasPlayer(player)) team.addPlayer(player); } team.setPrefix(replace(Settings.getInstance().prefixOther, "{TAG}", to.getTag())); } }
private void initialize() { if (getUser() == null) return; List<Guild> guilds = GuildUtils.getGuilds(); Scoreboard scoreboard = getUser().getScoreboard(); Guild guild = getUser().getGuild(); if (guild != null) { guilds.remove(guild); Settings config = Settings.getInstance(); String our = config.prefixOur; String ally = config.prefixAllies; String enemy = config.prefixEnemies; String other = config.prefixOther; Team team = scoreboard.getTeam(guild.getTag()); if (team == null) team = scoreboard.registerNewTeam(guild.getTag()); for (User u : guild.getMembers()) { if (u.getName() == null) continue; OfflineUser player = new OfflineUser(u.getName()); if (!team.hasPlayer(player)) team.addPlayer(player); } team.setPrefix(replace(our, "{TAG}", guild.getTag())); for (Guild one : guilds) { if (one == null || one.getTag() == null) continue; team = scoreboard.getTeam(one.getTag()); if (team == null) team = scoreboard.registerNewTeam(one.getTag()); for (User u : one.getMembers()) { if (u.getName() == null) continue; OfflineUser player = new OfflineUser(u.getName()); if (!team.hasPlayer(player)) team.addPlayer(player); } if (guild.getAllies().contains(one)) team.setPrefix(replace(ally, "{TAG}", one.getTag())); else if (guild.getEnemies().contains(one)) team.setPrefix(replace(enemy, "{TAG}", one.getTag())); else team.setPrefix(replace(other, "{TAG}", one.getTag())); } } else { String other = Settings.getInstance().prefixOther; for (Guild one : guilds) { if (one == null || one.getTag() == null) continue; Team team = scoreboard.getTeam(one.getTag()); if (team == null) team = scoreboard.registerNewTeam(one.getTag()); for (User u : one.getMembers()) { if (u.getName() == null) continue; OfflineUser player = new OfflineUser(u.getName()); if (!team.hasPlayer(player)) team.addPlayer(player); } team.setPrefix(replace(other, "{TAG}", one.getTag())); } } }
@EventHandler public void onPlayerJoin(PlayerJoinEvent e) { FileConfiguration locationsFile = YamlConfiguration.loadConfiguration(Main.getInstance().locations); Player p = e.getPlayer(); SPlayer player = new SPlayer(p); int blue = Team.BLUE.getPlayers().size(); int red = Team.RED.getPlayers().size(); p.teleport(locationUtil.deserializeLoc(locationsFile.getString("arena.lobby"))); gameManager.setCarrying(p, 0); Scoreboard sb = Bukkit.getScoreboardManager().getNewScoreboard(); org.bukkit.scoreboard.Team r = sb.registerNewTeam("red"); r.setPrefix(Color.np("&c")); org.bukkit.scoreboard.Team b = sb.registerNewTeam("blue"); b.setPrefix(Color.np("&b")); for (Player online : Bukkit.getOnlinePlayers()) { Team team = teamManager.getTeam(online); if (team == Team.BLUE) { b.addEntry(online.getName()); } else { r.addEntry(online.getName()); } } p.setScoreboard(sb); e.setJoinMessage(null); if (blue <= red) { player.setTeam(Team.BLUE); } else { player.setTeam(Team.RED); } }
private void colorPlayer(Player player, ChatColor color) { uncolorPlayer(player); playerColors.put(player.getUniqueId(), color); player.setDisplayName(color + player.getName() + ChatColor.RESET); Team team = scoreboard.registerNewTeam(player.getName()); team.setDisplayName(player.getName()); team.setPrefix(color.toString()); team.setSuffix(ChatColor.RESET.toString()); team.addEntry(player.getName()); player.setScoreboard(scoreboard); }
public void initConfig() { List<String> bw = getConfig().getStringList("blacklist"); for (String s : bw) { bw.add(s.toLowerCase()); } scoreboard = Bukkit.getScoreboardManager().getNewScoreboard(); this.saveDefaultConfig(); List<String> ls = getConfig().getStringList("ranks"); for (String s : ls) { assignedTeams.put(getConfig().getString("rank." + s + ".permission"), s); Team t = scoreboard.registerNewTeam("player" + getConfig().getString("rank." + s + ".order")); if (getConfig().getString("rank." + s + ".prefix") != null) { t.setPrefix( ChatColor.translateAlternateColorCodes( '&', getConfig().getString("rank." + s + ".prefix"))); } if (getConfig().getString("rank." + s + ".suffix") != null) { t.setSuffix( ChatColor.translateAlternateColorCodes( '&', getConfig().getString("rank." + s + ".suffix"))); } } Bukkit.getScheduler() .runTaskAsynchronously( this, new Runnable() { public void run() { while (whileloop == true) { for (Player p : Bukkit.getOnlinePlayers()) { if (!blacklistedworlds.contains(p.getWorld().getName().toLowerCase())) { p.setScoreboard(scoreboard); } } try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } } } }); }
@Override public void onEnable() { setup = new ConfigAccessor(this, "setup"); toggles = new ConfigAccessor(this, "toggles"); setup.saveDefaultConfig(); toggles.saveDefaultConfig(); compass = toggles.getConfig().getBoolean("compass", true); clock = toggles.getConfig().getBoolean("arenaclock", true); specchat = toggles.getConfig().getBoolean("specchat", true); scoreboard = toggles.getConfig().getBoolean("colouredtablist", true); output = toggles.getConfig().getBoolean("outputmessages", true); death = toggles.getConfig().getBoolean("deathspec", false); console = getServer().getConsoleSender(); if (scoreboard) { manager = Bukkit.getScoreboardManager(); board = manager.getNewScoreboard(); team = board.registerNewTeam("spec"); team.setPrefix( ChatColor.DARK_GRAY + "[" + ChatColor.GRAY + "Spec" + ChatColor.DARK_GRAY + "] " + ChatColor.GRAY); } for (Player player : getServer().getOnlinePlayers()) { user.put(player.getName(), new PlayerObject()); } getServer().getPluginManager().registerEvents(new SpectateListener(this), this); if (output) { console.sendMessage( prefix + "Version " + ChatColor.RED + "1.8" + ChatColor.GOLD + " is enabled!"); } this.getCommand("spectate").setExecutor(commands); this.getCommand("spec").setExecutor(commands); }