Вопрос MyCommand | Не работает IF (проверка плейсхолдера)

Ядро
Paper

8stds

Пользователь
Сообщения
13
Решения
1
Плагин
MyCommand
Ядро сервера
  1. Paper
Версия сервера
  1. 1.16.5
Ссылка
https://www.spigotmc.org/resources/mycommand.22272/
YAML:
RGI_COMMAND:
  command: /rgi
  type: RUN_COMMAND
  args: 0
  runcmd:
    - $Script$%if%%worldguard_region_name%!=''
    - "$text$&8—————————————"
    - "$text$&fИнформация региона &6%worldguard_region_name%&f:"
    - "$text$&fВладельцы: &6%worldguard_region_owner%"
    - "$text$&fУчастники: &6%worldguard_region_members%"
    - "$text$&fУчасток: (&6%worldguard_region_min_point_x%&f, &6%worldguard_region_min_point_y%&f, &6%worldguard_region_min_point_z%&f) — (&6%worldguard_region_max_point_x%&f, &6%worldguard_region_max_point_y%&f, &6%worldguard_region_max_point_z%&f)"
    - "$text$&8—————————————"
  permission-required: true
  error-message: "&cВы не стоите в регионе!"
  register: true
  permission-node: custom.rgi

Решил сделать свою команду для регион инфо, так как команда /rg i от worldguard меня не устраивает (форматированием и по другим причинам), решил сделать свою, красивую, но столкнулся с проблемой, где бы я не стоял выводит, что я не стою в регионе, весь вики проверил MyCommand, много способов перепробовал, но так и не исправил, помогите пожалуйста, может я просто что-то не вижу?
 
Решение
Решение нашёл! Как по мне MyCommand кривовато обрабатывает плейсхолдеры через if, накостылял дополнительно через ConditionalEvents:

YAML:
RGI_COMMAND:
  command: /rgi
  type: RUN_COMMAND
  args: 0
  runcmd:
    - "$text$&5—————————————"
    - "$text$&fИнформация региона &6%worldguard_region_name%&f:"
    - "$text$&fВладельцы: &6%worldguard_region_owner%"
    - "$text$&fУчастники: &6%worldguard_region_members%"
    - "$text$&fУчасток: (&6%worldguard_region_min_point_x%&f, &6%worldguard_region_min_point_y%&f, &6%worldguard_region_min_point_z%&f) — (&6%worldguard_region_max_point_x%&f, &6%worldguard_region_max_point_y%&f, &6%worldguard_region_max_point_z%&f)"
    - "$text$&5—————————————"
  permission-required: true
  register: true...
Решение нашёл! Как по мне MyCommand кривовато обрабатывает плейсхолдеры через if, накостылял дополнительно через ConditionalEvents:

YAML:
RGI_COMMAND:
  command: /rgi
  type: RUN_COMMAND
  args: 0
  runcmd:
    - "$text$&5—————————————"
    - "$text$&fИнформация региона &6%worldguard_region_name%&f:"
    - "$text$&fВладельцы: &6%worldguard_region_owner%"
    - "$text$&fУчастники: &6%worldguard_region_members%"
    - "$text$&fУчасток: (&6%worldguard_region_min_point_x%&f, &6%worldguard_region_min_point_y%&f, &6%worldguard_region_min_point_z%&f) — (&6%worldguard_region_max_point_x%&f, &6%worldguard_region_max_point_y%&f, &6%worldguard_region_max_point_z%&f)"
    - "$text$&5—————————————"
  permission-required: true
  register: true
  permission-node: custom.rgi

YAML:
Events:
     rgi_check:
        enabled: true
        type: player_command
        conditions:
        - '%command% startsWith /rgi'
        - '%parseother_{player}_{worldguard_region_name}% equals '
        actions:
          default:
          - 'cancel_event: true'
          - 'message: &cВы не стоите в регионе!'

Только вот так вот заработало, испробовал все уже варианты через MyCommand но он никак не проверяет пустой возврат от %worldguard_region_name% по нормальному.
 
Назад
Сверху Снизу