Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Тонкости работы Scoreboard

Статус
Закрыто для дальнейших ответов.

Studenikin

Старожил
Пользователь
Баллы
123
Имя в Minecraft
stuvanya
Пытаюсь сделать бегущую строку в заглавии scoreboard, есть такой код:
Java:
    protected void updateScoreboard() {
        for(Player p:Bukkit.getOnlinePlayers()){
            Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard();
            p.setScoreboard(board);
            Objective o = board.registerNewObjective("def", "dummy");
            o.setDisplayName(displayname);
            o.setDisplaySlot(DisplaySlot.SIDEBAR);
            Score s10 = o.getScore("§7");
            s10.setScore(10);
/*тут еще несколько строк с различным содержимым*/
}
Если его вызвать раз в тик ( такая скорость нужна для бегущей строки), для игроков вся таблица выглядит мигающей. Суть вопроса такова: возможно ли обновлять раз в тик только заголовок борда, оставляя неизменным тело таблицы?
 
Ты создаёшь заново каждый раз. Получай уже существующую методом Player.getScoreboard() и обновляй заголовок.
 
Ты создаёшь заново каждый раз. Получай уже существующую методом Player.getScoreboard() и обновляй заголовок.
Спасибо, то есть делать так:
Java:
for(Player p:Bukkit.getOnlinePlayers()){
            Scoreboard board = p.getScoreboard();
            Objective o = board.getObjective(DisplaySlot.SIDEBAR);
            o.setDisplayName(displayname);
        }
?
 
Спасибо, то есть делать так:
Java:
for(Player p:Bukkit.getOnlinePlayers()){
            Scoreboard board = p.getScoreboard();
            Objective o = board.getObjective(DisplaySlot.SIDEBAR);
            o.setDisplayName(displayname);
        }
?
Да, не забыв единоразово поставить игроку "свою" доску.
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх