1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Ошибка при Bukkit.dispatchCommand

Тема в разделе "Разработка плагинов для новичков", создана пользователем TheKrealisYT, 19 ноя 2020.

  1. Автор темы
    TheKrealisYT

    TheKrealisYT Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    _TheKrealisYT_
    Я пишу плагин, что при использовании предмета игрока должно телепортировать на спавн, выполнять команду от имени консоли. Вот кусочек из кода:
    lore.add(ChatColor.GOLD + "Ускользни во время пвп! =)");
    if (imeta.getDisplayName().equalsIgnoreCase(ChatColor.GRAY + "Волшебная бумага!")) {
    player.sendMessage(ChatColor.GREEN + "Вы успешно телепортированы на спавн");
    Bukkit.dispatchCommand((CommandSender)Bukkit.getConsoleSender(), "spawn" + event.getPlayer());
    player.getInventory().remove(player.getItemInHand());

    Ошибка происходит только тогда, когда пишу + event.getPlayer(), или же player.getName(). Если пишу просто "spawn" то все работает. Подскажите, что мне делать?

    Ошибка:
    [12:44:04 FATAL]: Error executing task
    java.util.concurrent.ExecutionException: java.lang.AssertionError: TRAP
    at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_251]
    at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_251]
    at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:47) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:850) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:423) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:774) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:666) ~[patched_1.12.2.jar:git-Paper-1618]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_251]
    Caused by: java.lang.AssertionError: TRAP
    at net.minecraft.server.v1_12_R1.ItemStack.F(ItemStack.java:117) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.ItemStack.setCount(ItemStack.java:892) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.PlayerInteractManager.a(PlayerInteractManager.java:441) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1064) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:26) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:5) ~[patched_1.12.2.jar:git-Paper-1618]
    at net.minecraft.server.v1_12_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:14) ~[patched_1.12.2.jar:git-Paper-1618]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_251]
    at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_251]
    at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) ~[patched_1.12.2.jar:git-Paper-1618]
    ... 5 more
     
  2. Lillie-May

    Lillie-May Новичок Пользователь

    Баллы:
    21
    "spawn" + event.getPlayer = "spawnPlayer",
    "spawn " + event.getPlayer = "spawn Player".
     
  3. Автор темы
    TheKrealisYT

    TheKrealisYT Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    _TheKrealisYT_
    не работает
     
  4. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    А нехрен делать операции запрещенные в айтемстаке...
     
  5. Spsiska_13

    Spsiska_13 Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Yura2108
    Отменяй ивент использования предмета перед тем как удалить его)
     
  6. Автор темы
    TheKrealisYT

    TheKrealisYT Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    _TheKrealisYT_
    Теперь пишет не варн, а неизвестная команда
     
  7. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Во-первых, между "spawn" и ником игрока пропущен пробел.

    Во-вторых, для получения имени игрока нужно использовать "player.getName()", а не просто "player".

    В итоге должно получиться
    "spawn " + player.getName()
     
  8. Code

    Code Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    _Gizmo
    а обязательно выполнять команду спавна вместо того чтобы просто телепортировать игрока?
     
  9. Todorov26

    Todorov26 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Todorov26
    Нет ты можешь спокойно телепортировать игрока на спавн основного мира или любую другую локацию
     

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