Помогите [РЕШЕНО] Мигающий скорборд

  • Автор темы Автор темы FyuzYT
  • Дата начала Дата начала

FyuzYT

Активный участник
Пользователь
Баллы
76
Всем здрасте. Столкнулся с проблемой при создании скорборда, а точнее с анимацией в скорборде. Нужно сделать анимацию, немного порывшись в помойке я нашёл некоторые методы смены заголовка и строки. Всё вроде хорошо встало, всё идёт. Только скорборд иногда мигает что не очень устраивает...
Код:
Java:
public void setAnimatedLine(List<String> strings, int row, Scoreboard scoreboard, int ticks){
       
        new BukkitRunnable(){
           
            int animated = 0;
            int size = strings.size();

            @Override
            public void run() {
                if(size - 1 != animated){
                    Objective objective = scoreboard.getObjective(DisplaySlot.SIDEBAR);
                    for(String entry : scoreboard.getEntries()) {
                        if(objective.getScore(entry).getScore() == row) {
                            scoreboard.resetScores(entry);
                            break;
                        }
                    }
                    objective.getScore(main.toColor(strings.get(animated))).setScore(row);
                    animated = animated + 1;
                }else{
                    Objective objective = scoreboard.getObjective(DisplaySlot.SIDEBAR);
                    for(String entry : scoreboard.getEntries()) {
                        if(objective.getScore(entry).getScore() == row) {
                            scoreboard.resetScores(entry);
                            break;
                        }
                    }
                    objective.getScore(main.toColor(strings.get(animated))).setScore(row);
                    animated = 0;
                }
            }
           
        }.runTaskTimer(main, 0, ticks);
       
    }
   
    public void setLine(String line, int row, Scoreboard scoreboard){
        Objective objective = scoreboard.getObjective(DisplaySlot.SIDEBAR);
        for(String entry : scoreboard.getEntries()) {
            if(objective.getScore(entry).getScore() == row) {
                scoreboard.resetScores(entry);
                break;
            }
        }
        objective.getScore(main.toColor(line)).setScore(row);
    }
   
    public void setAnimatedTitle(List<String> strings, Scoreboard scoreboard, int ticks){
       
        new BukkitRunnable(){
           
            int animated = 0;
            int size = strings.size();

            @Override
            public void run() {
                if(size - 1 != animated){
                    scoreboard.getObjective(DisplaySlot.SIDEBAR).setDisplayName(main.toColor(strings.get(animated)));
                    animated = animated + 1;
                }else{
                    scoreboard.getObjective(DisplaySlot.SIDEBAR).setDisplayName(main.toColor(strings.get(animated)));
                    animated = 0;
                }
            }
           
        }.runTaskTimer(main, 0, ticks);
       
    }
 
Я вообще делал полностью перерегистрацию борда и никогда не мигало.
 
Назад
Верх