Помогите Плавная анимация заголовка scoreboard.

Это сложно сделать?

  • Да

    Голосов: 1 14,3%
  • Нет

    Голосов: 6 85,7%

  • Всего проголосовало
    7

Namer_PRO

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Namer_PRO
Делаю анимацию заголовка scoreboard. Когда обновляю его, то заголовок дергано перемещается. На lastcraft видел его плавную анимацию. Как это сделать? Выручайте :)
Фото того, что хочу сделать:
ezgif_com_video_to_gif_2.gif

 
Нужна помощь :)
(даже идей нету пока, как это сделать)
 
Огромный массив со строками. Другого я не знаю.
 
Пакетами борд отправляй, бакит апи кал.
 
Борды вообще сложная наука. Ибо они созданы не для такого и приходится страдать стаком говна для реализации желаемого.
 
Вот пример анимации имени.
Код:
        ScoreboardManager manager = Bukkit.getScoreboardManager();
        board = manager.getNewScoreboard();
        Objective objective = board.registerNewObjective("test", "dummy", "displayName");
        objective.setDisplaySlot(DisplaySlot.SIDEBAR);
        Score score = objective.getScore("test");
        score.setScore(1);
        new ScoreboardRun(objective).runTaskTimer(this.plugin, 0, 1);

Код:
package Example;

import java.util.UUID;

import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scoreboard.Objective;

public class ScoreboardRun extends BukkitRunnable {
    Objective objective;

    ScoreboardRun(Objective objective) {
        this.objective = objective;
    }

    @Override
    public void run() {
        this.objective.setDisplayName(UUID.randomUUID().toString());
    }
}
Код:
    @EventHandler
    public void on(PlayerJoinEvent e) {
        e.getPlayer().setScoreboard(this.plugin.board);
    }
 
Вот пример анимации имени.
Код:
        ScoreboardManager manager = Bukkit.getScoreboardManager();
        board = manager.getNewScoreboard();
        Objective objective = board.registerNewObjective("test", "dummy", "displayName");
        objective.setDisplaySlot(DisplaySlot.SIDEBAR);
        Score score = objective.getScore("test");
        score.setScore(1);
        new ScoreboardRun(objective).runTaskTimer(this.plugin, 0, 1);

Код:
package Example;

import java.util.UUID;

import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scoreboard.Objective;

public class ScoreboardRun extends BukkitRunnable {
    Objective objective;

    ScoreboardRun(Objective objective) {
        this.objective = objective;
    }

    @Override
    public void run() {
        this.objective.setDisplayName(UUID.randomUUID().toString());
    }
}
Код:
    @EventHandler
    public void on(PlayerJoinEvent e) {
        e.getPlayer().setScoreboard(this.plugin.board);
    }
Спасибо, попробую.
 
Назад
Верх