Bom ... o scoreboard creio que seja o que mais provoque o lagg pelos metodos que já usei e tudo o que aconteceu sempre foi o scoreboard...
Queria saber como optimizar ao atualizar os dados do scoreboard (Kills,Deaths, etc...)
Code atual: (Esta no onEnable())
new BukkitRunnable() {
@SuppressWarnings("deprecation")
@Override
public void run() {
if(Bukkit.getOnlinePlayers().length == 0){
return;
}
for(Player p : Bukkit.getOnlinePlayers()){
if (Score.ntemscore.contains(p.getName())) {
if (p.getScoreboard() != null && p.getScoreboard().getObjective("scoreboardutils") != null) {
final String cash = Main.instance.obterinfo.cash(p);
final Team a2 = p.getScoreboard().getTeam("a2");
final Team a3 = p.getScoreboard().getTeam("a3");
final Team a4 = p.getScoreboard().getTeam("a4");
final Team a6 = p.getScoreboard().getTeam("a6");
final Team a7 = p.getScoreboard().getTeam("a7");
final Team a9 = p.getScoreboard().getTeam("a9");
final Team a10 = p.getScoreboard().getTeam("a10");
final Team a11 = p.getScoreboard().getTeam("a11");
a11.setSuffix(KillsDeathsRankXp.getRank(p));
a10.setSuffix(Integer.valueOf(KillsDeathsRankXp.getXp(p)).toString());
a9.setSuffix(Integer.valueOf(KillsDeathsRankXp.getCaixa(p)).toString());
a7.setSuffix(API.getKit(p));
a6.setSuffix(CombatLog.statuscombat(p));
a4.setSuffix(Integer.valueOf(KillsDeathsRankXp.getKills(p)).toString());
a3.setSuffix(Integer.valueOf(KillsDeathsRankXp.getDeaths(p)).toString());
a2.setSuffix(cash);
}
}
if (Score.temscore.contains(p.getName())) {
p.getScoreboard().clearSlot(DisplaySlot.SIDEBAR);
}
}
}
}.runTaskTimer(Main.getPlugin(), 60l, 20l);
Antes eu usava no playerjoinevent ou seja para cada player ele gerava 1 atualizador ...
Gostaria de saber o melhor metodo para evitar o lagg e atualizar todos os scoreboard
Pergunta
Solitario
Bom ... o scoreboard creio que seja o que mais provoque o lagg pelos metodos que já usei e tudo o que aconteceu sempre foi o scoreboard...
Queria saber como optimizar ao atualizar os dados do scoreboard (Kills,Deaths, etc...)
Code atual: (Esta no onEnable())
Antes eu usava no playerjoinevent ou seja para cada player ele gerava 1 atualizador ...
Gostaria de saber o melhor metodo para evitar o lagg e atualizar todos os scoreboard
Link para o comentário
Compartilhar em outros sites
9 respostass a esta questão
Posts Recomendados