Отображение статуса регионов: свободен, занят или принадлежит вам. Через ConditionalEvents

Отображение статуса регионов: свободен, занят или принадлежит вам. Через ConditionalEvents 2025-07-26

Создайте и подтвердите аккаунт для скачивания

lednik

Пользователь
Сообщения
18
Решения
1
lednik добавил(а) новый ресурс:

You must be logged in to see this link. - Отображает регион: свободный занят или ваш. Сделан через плейсхолдеры worldguarda и ConditionalEvent

Названия регионов через Conditional Events
Необходимые плагины:
- WorldGuard
- WorldEdit/FastAsyncWorldEdit
- PlaceholderAPI
После скачивания перенести файл в
plugins/ConditionalEvents/events

Плагин отображает тип региона в экшен баре: Свободный, Занятый или Ваш

You must be logged in to see this link.
 
Внимание: чтобы на спавне не писало занятая территория необходимо в locked_rg в кондишн дописать



conditions:
- '%worldguard_region_name% != %empty%'
- ‘%worldguard_region_name% != spawn’

А также прошу оставить отзыв
 
В целом я глянул ресурс... Ну такое себе. Что бы все это прямо вот корректно работало лучше наверное было бы объединить в один ивент с разными conditions и отдельными actions под них. Да и если честно ваши ивенты your_rg и your_rg2 по сути то своей и не работают вовсе. Просто там должно быть не %worldguard_region_members% == %player_name% как у вас, а %worldguard_region_members% contains %player% и только тогда оно хоть как то начнет работать верно. Использовать == в плейсхолдере %worldguard_region_members% это ошибка, ибо выводит он всех участников региона. Потому contains для подобных плейсхолдеров будет более приемлемым.
Объединено

Вот смотрите я поделюсь с вами черновой версией подобного ивента.
YAML:
Events:
  region_actionbar:
    enabled: true
    type: repetitive
    repetitive_time: 20
    conditions:
     - '%worldguard_region_name% == spawn and %player_world% == spawn execute actions1'
     - '%worldguard_region_name% == pvp and %player_world% == spawn execute actions2'
     - '%worldguard_region_name% != %empty% and %worldguard_region_owner% contains %player% execute actions3'
     - '%worldguard_region_name% != %empty% and %worldguard_region_members% contains %player% execute actions4'
     - '%worldguard_region_name% == %empty% execute actions5'
     - '%worldguard_region_name% != %empty% and %worldguard_region_members% != %player% and %worldguard_region_owner% != %player% execute actions6'
    actions:
      actions1:
      - 'actionbar: &a&lСПАВН;0'
      actions2:
      - 'actionbar: &a&lPVP-АРЕНА;0'
      actions3:
      - 'actionbar: &a&lВАША ТЕРРИТОРИЯ;0'
      actions4:
      - 'actionbar: &a&lУЧАСТНИК ТЕРРИТОРИИ;0'
      actions5:
      - 'actionbar: &e&lСВОБОДНАЯ ТЕРРИТОРИЯ;0'
      actions6:
      - 'actionbar: &c&lЧУЖАЯ ТЕРРИТОРИЯ;0'
При таком раскладе все отображается корректно, если у вас будут вопросы задавайте объясню, зачем и почему.
 
Последнее редактирование:
В целом я глянул ресурс... Ну такое себе. Что бы все это прямо вот корректно работало лучше наверное было бы объединить в один ивент с разными conditions и отдельными actions под них. Да и если честно ваши ивенты your_rg и your_rg2 по сути то своей и не работают вовсе. Просто там должно быть не %worldguard_region_members% == %player_name% как у вас, а %worldguard_region_members% contains %player% и только тогда оно хоть как то начнет работать верно. Использовать == в плейсхолдере %worldguard_region_members% это ошибка, ибо выводит он всех участников региона. Потому contains для подобных плейсхолдеров будет более приемлемым.
Объединено

Вот смотрите я поделюсь с вами черновой версией подобного ивента.
YAML:
Events:
  region_actionbar:
    enabled: true
    type: repetitive
    repetitive_time: 20
    conditions:
     - '%worldguard_region_name% == spawn and %player_world% == spawn execute actions1'
     - '%worldguard_region_name% == pvp and %player_world% == spawn execute actions2'
     - '%worldguard_region_name% != %empty% and %worldguard_region_owner% contains %player% execute actions3'
     - '%worldguard_region_name% != %empty% and %worldguard_region_members% contains %player% execute actions4'
     - '%worldguard_region_name% == %empty% execute actions5'
     - '%worldguard_region_name% != %empty% and %worldguard_region_members% != %player% and %worldguard_region_owner% != %player% execute actions6'
    actions:
      actions1:
      - 'actionbar: &a&lСПАВН;0'
      actions2:
      - 'actionbar: &a&lPVP-АРЕНА;0'
      actions3:
      - 'actionbar: &a&lВАША ТЕРРИТОРИЯ;0'
      actions4:
      - 'actionbar: &a&lУЧАСТНИК ТЕРРИТОРИИ;0'
      actions5:
      - 'actionbar: &e&lСВОБОДНАЯ ТЕРРИТОРИЯ;0'
      actions6:
      - 'actionbar: &c&lЧУЖАЯ ТЕРРИТОРИЯ;0'
При таком раскладе все отображается корректно, если у вас будут вопросы задавайте объясню, зачем и почему.
Благодарен что исправили но можете обьяснить как работает actions и номер или где можно посмотреть полную документацию
 
Благодарен что исправили но можете обьяснить как работает actions и номер или где можно посмотреть полную документацию
С документацией у плагина сейчас все ПЛОХО. Сперва вам нужно на вики -
Очень многое скрыто не в самой вики, а в примерах, что дает автор плагина. Вам нужно смотреть пример 7 и пример 8. Там как раз идет это деление действий на позитивные и негативные.
Объединено

Вот 7
YAML:
example7:
    type: player_kill
    conditions:
    - '%victim% == PLAYER'
    - '%target:vault_rank% == vip execute actions1'
    - '%target:vault_rank% == admin execute actions2'
    actions:
      default:
      - "message: &6You've killed &e%target:player%"
      - "message: &7You receive: &a$100"
      - "console_command: eco give %player% 100"
      actions1:
      - "message: &6You've killed &e%target:player%"
      - "message: &7Since it's a &bVIP &7player you get: &a$500"
      - "console_command: eco give %player% 500"
      actions2:
      - "message: &6You've killed &e%target:player%"
      - "message: &7Since it's an &4Admin &7player you get: &a$1000"
      - "console_command: eco give %player% 1000"
А вот 8
YAML:
example8:
    type: player_command
    conditions:
    - "%main_command% == /checklevel"
    - "%args_length% < 1 execute error1"
    - "%parseother_{arg_1}_{player_online}% == no execute error2"
    actions:
      default:
      - "cancel_event: true"
      - "message: &aLevel of &e%arg_1% &ais: &e%otherplayer_level_{arg_1}%"
      error1:
      - "cancel_event: true"
      - "message: &cYou must use &7/checklevel <player>"
      error2:
      - "cancel_event: true"
      - "message: &cThat player is not online."
 
Назад
Сверху Снизу