Помогите Ошибка при добавлении Scoreboard

  • Автор темы Автор темы Jhiid
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Jhiid

Участник
Пользователь
Баллы
31
HTML:
[16:38:24] [Server thread/ERROR]: Could not pass event PlayerMoveEvent to Clover
Craft v0.1
org.bukkit.event.EventException: null
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:320) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
a:70) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j
ava:529) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
ava:514) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.jav
a:986) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PacketPlayInFlying.a(SourceFile:126) [S
pigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PacketPlayInFlying$PacketPlayInLook.a(S
ourceFile:88) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb9
8]
        at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerCo
nnectionUtils.java:19) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af5
69-6ddeb98]
        at net.minecraft.server.v1_14_R1.PlayerConnectionUtils$$Lambda$3212/1390
00387.run(Unknown Source) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94
af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [Spigot-1.1
4.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFil
e:144) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(
SourceFile:23) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb
98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFil
e:118) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java
:909) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftSe
rver.java:902) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb
98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile
:127) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftS
erver.java:886) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6dde
b98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.jav
a:819) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
Caused by: java.lang.IllegalArgumentException: Score 'зl┬р°р ёъюЁюёЄ№ яхЁхфтшцхэ
ш : 0.10000000149011612' is longer than the limit of 40 characters
        at org.apache.commons.lang.Validate.isTrue(Validate.java:136) ~[Spigot-1
.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.craftbukkit.v1_14_R1.scoreboard.CraftObjective.getScore(Cr
aftObjective.java:121) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af
569-6ddeb98]
        at clover.main.MainClass.createScoreboard(MainClass.java:266) ~[?:?]
        at clover.main.MainClass.ScoreBoard(MainClass.java:253) ~[?:?]
        at sun.reflect.GeneratedMethodAccessor320.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1
.8.0_45]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:316) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        ... 18 more
>
Вот ошибка и код
PHP:
@EventHandler
    public void ScoreBoard(PlayerMoveEvent e) {
        if(e.getPlayer().getGameMode()==GameMode.ADVENTURE) {
        e.getPlayer().setScoreboard(createScoreboard(e.getPlayer()));
        }
    }
    public Scoreboard createScoreboard(Player p) {
        Scoreboard scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
        Objective objective = scoreboard.registerNewObjective("scoreboard", "1");

        objective.setDisplayName(ChatColor.BOLD+"Статистика вашего персонажа");
        objective.setDisplaySlot(DisplaySlot.SIDEBAR);
        double getHealth = Math.floor(p.getHealth());
        double getMaxHealth = p.getMaxHealth();
        Score line1= objective.getScore(ChatColor.BOLD+"Ваше здоровье: "+getHealth+" / "+getMaxHealth);
        Score line2 = objective.getScore(ChatColor.BOLD+"Ваш уровень еды: "+p.getFoodLevel());
        Score line3 = objective.getScore(ChatColor.BOLD+"Ваша скорость передвижения: "+p.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).getValue());
        Score line4 = objective.getScore(ChatColor.BOLD+"Ваш уровень брони: "+p.getAttribute(Attribute.GENERIC_ARMOR).getValue());
        Score line5 = objective.getScore(ChatColor.BOLD+"Ваша скорость аттаки: "+p.getAttribute(Attribute.GENERIC_ATTACK_SPEED).getValue());
        line1.setScore(0);
        line2.setScore(1);
        line3.setScore(2);
        line4.setScore(3);
        line5.setScore(4);
        return scoreboard;
    }
 
Код:
Caused by: java.lang.IllegalArgumentException: Score 'зl┬р°р ёъюЁюёЄ№ яхЁхфтшцхэ
ш : 0.10000000149011612' is longer than the limit of 40 characters
из перевода ошибки понятно, что превышен лимит 40 символов.
 
HTML:
[16:38:24] [Server thread/ERROR]: Could not pass event PlayerMoveEvent to Clover
Craft v0.1
org.bukkit.event.EventException: null
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:320) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
a:70) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j
ava:529) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
ava:514) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.jav
a:986) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PacketPlayInFlying.a(SourceFile:126) [S
pigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.PacketPlayInFlying$PacketPlayInLook.a(S
ourceFile:88) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb9
8]
        at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerCo
nnectionUtils.java:19) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af5
69-6ddeb98]
        at net.minecraft.server.v1_14_R1.PlayerConnectionUtils$$Lambda$3212/1390
00387.run(Unknown Source) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94
af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [Spigot-1.1
4.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFil
e:144) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(
SourceFile:23) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb
98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFil
e:118) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java
:909) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftSe
rver.java:902) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb
98]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile
:127) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftS
erver.java:886) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6dde
b98]
        at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.jav
a:819) [Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
Caused by: java.lang.IllegalArgumentException: Score 'зl┬р°р ёъюЁюёЄ№ яхЁхфтшцхэ
ш : 0.10000000149011612' is longer than the limit of 40 characters
        at org.apache.commons.lang.Validate.isTrue(Validate.java:136) ~[Spigot-1
.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        at org.bukkit.craftbukkit.v1_14_R1.scoreboard.CraftObjective.getScore(Cr
aftObjective.java:121) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af
569-6ddeb98]
        at clover.main.MainClass.createScoreboard(MainClass.java:266) ~[?:?]
        at clover.main.MainClass.ScoreBoard(MainClass.java:253) ~[?:?]
        at sun.reflect.GeneratedMethodAccessor320.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1
.8.0_45]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
va:316) ~[Spigot-1.14.4-94af569-20190911-0820.jar:git-Spigot-94af569-6ddeb98]
        ... 18 more
>
Вот ошибка и код
PHP:
@EventHandler
    public void ScoreBoard(PlayerMoveEvent e) {
        if(e.getPlayer().getGameMode()==GameMode.ADVENTURE) {
        e.getPlayer().setScoreboard(createScoreboard(e.getPlayer()));
        }
    }
    public Scoreboard createScoreboard(Player p) {
        Scoreboard scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
        Objective objective = scoreboard.registerNewObjective("scoreboard", "1");

        objective.setDisplayName(ChatColor.BOLD+"Статистика вашего персонажа");
        objective.setDisplaySlot(DisplaySlot.SIDEBAR);
        double getHealth = Math.floor(p.getHealth());
        double getMaxHealth = p.getMaxHealth();
        Score line1= objective.getScore(ChatColor.BOLD+"Ваше здоровье: "+getHealth+" / "+getMaxHealth);
        Score line2 = objective.getScore(ChatColor.BOLD+"Ваш уровень еды: "+p.getFoodLevel());
        Score line3 = objective.getScore(ChatColor.BOLD+"Ваша скорость передвижения: "+p.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).getValue());
        Score line4 = objective.getScore(ChatColor.BOLD+"Ваш уровень брони: "+p.getAttribute(Attribute.GENERIC_ARMOR).getValue());
        Score line5 = objective.getScore(ChatColor.BOLD+"Ваша скорость аттаки: "+p.getAttribute(Attribute.GENERIC_ATTACK_SPEED).getValue());
        line1.setScore(0);
        line2.setScore(1);
        line3.setScore(2);
        line4.setScore(3);
        line5.setScore(4);
        return scoreboard;
    }
Обновлять борд лучше через шедулер каждую секунду например у всех игроков.

А если по теме, обрезай текст длинее 40 символов до 40 символов что бы не уйти в лимит.
 
Вы просто лохи 😁. Слабо? 1.14.4
23efc31ee6.jpg
 
Я всё пофиксил просто перевёл int в строку
NumberFormat formatter = new DecimalFormat("#0.00");
String getMovespeed = formatter.format(p.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).getValue());
Мне не нужено 40 пробелов в скорборде
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.
Назад
Верх