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

Помогите Mycommand - не работает проверка суффикса у игрока

Тема в разделе "Помощь", создана пользователем Harakiry, 22 сен 2021.

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

    Harakiry Новичок Пользователь

    Баллы:
    21
    Код:
    verify:
      command: /verify
      type: RUN_CONSOLE
      runcmd:
       - $Script$%if%$args1%vault_suffix%=="&c✕"
       - lp user $arg1 meta setsuffix 1 "&a✓"
       - $Script$%else%
       - $text$
       - '$text$ &fИзвините, игрок уже &aверифицирован'
       - $text$
      permission-required: true
      permission-node: mycmd.verify
      error-message: |-
        &7
        &fИспользуйте &a/verify [Ник игрока]
        &7
    У меня на сервере есть верификация, она нужна для возможности вставать на хелперку, сделал команду на выдачу галочки (для удобства) но даже если у игрока нету ✓, пишет что игрок верифицирован, то есть не происходит проверка, что делать? (P.S. $arg1 это это игрок которого нужно верифицировать)
     
  2. Overwrite

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

    Баллы:
    98
    Имя в Minecraft:
    OverwriteMC
    Может не %vault_suffix% а %luckperms_suffix% поставить?
     
  3. OJIEKCAHDP

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

    Баллы:
    76
    Имя в Minecraft:
    OJIEKCAHDP
    может потому что ты сравниваешь ник игрока с суффиксом? Естественно суффикс != ник игрока
    предлагаю парсить плейсхолдером суффикс по нику:
    Код:
    $Script$%if%%parseother_{$args1}_{%vault_suffix%}=="&c✕"
    
    Кстати солидарен с Overwrite, лучше используй плейсхолдеры напрямую от LP.
     
    Последнее редактирование: 23 сен 2021
  4. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    У меня проблема с ParseOther, при попытки /papi parse me %parseother_Harakiry_%luckperms_suffix%
    Пишет: An internal error occurred while attempting to perform this command
    А в команде тупо не идёт проверка из-за того что не работает холдер
     
  5. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Код:
    [07:20:06 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'papi' in plugin PlaceholderAPI v2.10.10
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[minecraft_server.jar:git-Paper-1618]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:152) ~[minecraft_server.jar:git-Paper-1618]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:685) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.PlayerConnection.handleCommand(PlayerConnection.java:1492) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1297) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:45) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:5) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:14) ~[minecraft_server.jar:git-Paper-1618]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
        at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:850) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:423) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:774) ~[minecraft_server.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:666) ~[minecraft_server.jar:git-Paper-1618]
        at java.lang.Thread.run(Thread.java:829) [?:?]
    Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
        at ParseOtherExpansion.onRequest(ParseOtherExpansion.java:36) ~[?:?]
        at me.clip.placeholderapi.replacer.CharsReplacer.apply(CharsReplacer.java:160) ~[?:?]
        at me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:70) ~[?:?]
        at me.clip.placeholderapi.commands.impl.local.CommandParse.evaluateParseSingular(CommandParse.java:115) ~[?:?]
        at me.clip.placeholderapi.commands.impl.local.CommandParse.evaluate(CommandParse.java:57) ~[?:?]
        at me.clip.placeholderapi.commands.PlaceholderCommandRouter.onCommand(PlaceholderCommandRouter.java:113) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[minecraft_server.jar:git-Paper-1618]
        ... 15 more
     
  6. _MrJaycob_

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

    Баллы:
    76
    Имя в Minecraft:
    JaycobYT
    Потому что не правильно парсишь плейсхолдер. /papi parse me %parseother_{Harakiry}_{luckperms_suffix}%
     
  7. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Спасибо все работает, но теперь другая проблема у меня есть error-message когда ничего не написано, но если я пишу /verify без ника, мне пишет что игрок верифицирован, как это исправить?
     
  8. _MrJaycob_

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

    Баллы:
    76
    Имя в Minecraft:
    JaycobYT
    Добавь перед error-message
    required_args: 1

    И ты в плейсхолдере ParseOther заменил Harakiry на $arg1 ?
     
  9. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Да, я ведь не первый день делаю команды в mycommand
     
  10. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Можно ещё вопрос, что делать если
    Код:
    %PlayerOptionsFor%$arg1%sendMessage: text
    , не работает как нужно
     
  11. OJIEKCAHDP

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

    Баллы:
    76
    Имя в Minecraft:
    OJIEKCAHDP
    а как нужно? и ещё надо не $arg1, a $args1
     
  12. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Ну оно по логике должно отправлять сообщение игроку которому выдали verify, но оно отправляет мне же :/
     
  13. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    $args1 - не работает, вот строка с консоли
    Код:
    [15:22:08 INFO]: [MyCmd] %PlayerOptionsFor% $args1 failed retrieving the player, not online?
     
  14. _MrJaycob_

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

    Баллы:
    76
    Имя в Minecraft:
    JaycobYT
    - '$text_to_specific_player%$arg1% Вы верифицированы!'
     
  15. xSdDVD

    xSdDVD Новичок Пользователь

    Баллы:
    11
    Всё работает, спасибо
     

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