Перейти к основному содержимому

Создание червоточин

webapp_banner.jpg

Что такое червоточины?

Червоточины — это разновидность высокоэффективной системы телепортации от портала к порталу. Порталы отмечаются визуальными эффектами.

Механика червоточин

Червоточины могут делать следующее:

  • Переносить через один портал к порталу назначения и от портала назначения обратно к первому.
  • Воспроизводить звук, когда игроки проходят через них
  • Временно ослеплять игроков при прохождении для плавного перехода
  • Выталкивать игроков, чтобы избежать попадания в петлю телепортации
  • Блокировать игрокам телепортацию на 5 секунд, чтобы избежать попадания в петлю телепортации
  • Автоматически отключать режим полёта при телепортации игроков
  • Воспроизводить сложные визуальные эффекты
  • Требовать прав (permissions) для использования червоточины
  • Требовать использования валюты для использования червоточины
  • Уведомлять игроков и администраторов, когда портал назначения недоступен

Создание червоточины

Червоточины добавляются как конфигурационные файлы в папку wormholes. Можно создавать подпапки, и это рекомендуется делать, если вы добавляете червоточины для конкретных подземелий, в формате ` ~/plugins/EliteMobs/wormholes/dungeonName/dungeonName_identifier.yml`.

Выброс (Ejection)

Yaw и Pitch (две последние цифры в координатах) в location1 и location2 задают, куда игроки будут выброшены из червоточины при прохождении через неё. Рассмотрим этот пример:

location1: my_world,20,10,20,180,20

Поскольку Yaw установлен в 180, игрок будет выброшен лицом на север, а поскольку Pitch установлен в 20, он также будет выброшен слегка вверх. Если вы хотите, чтобы игрок оставался в том же блоке, что и червоточина, при выбросе, то рекомендуется установить Pitch отрицательным, чтобы игроки не соскальзывали с блока.

Конфигурация червоточины

Ниже приведён пример корректной конфигурации червоточины:

isEnabled: true
location1: em_primis,1288.5,19,452.5,135,-23
location2: em_primis,1288.5,-39,451.5,180,-1

isEnabled

Устанавливает, включена ли червоточина.

KeyValuesDefault
isEnabledBooleantrue
Пример
isEnabled: true

location1

Указывает первое местоположение червоточины.

KeyValuesDefault
location1Stringnone
Пример
location1: world_one,50,100,50,0,0

location2

Указывает второе местоположение червоточины.

KeyValuesDefault
location2Stringnone
Пример
location2: world_two,100,33,100,0,0

location1Text

Устанавливает отображаемый текст первого местоположения.

KeyValuesDefault
location1TextStringnone
Пример
location1Text: Awesome Wormhole In World One

create_wormhole_location1text.jpg


location2Text

Устанавливает отображаемый текст второго местоположения.

KeyValuesDefault
location2TextStringnone
Пример
location2Text: Awesome Wormhole In World Two

create_wormhole_location2text.jpg


permission

Устанавливает право (permission), необходимое для использования червоточины.

KeyValuesDefault
permissionStringnone
Пример
permission: elitemobs.mypermission

coinCost

Устанавливает стоимость использования червоточины в элитных монетах.

KeyValuesDefault
coinCostDouble0
Пример
coinCost: 2.5

style

Устанавливает визуальную форму червоточины.

Частицы, из которых состоят эти формы, могут вызывать лаги на некоторых клиентах. Чтобы отключить частицы, зайдите в Wormholes.yml и установите noParticlesMode в true.

KeyValuesDefault
styleNONE / CRYSTAL / ICOSAHEDRON / CUBECUBE
Пример
style: CRYSTAL

create_wormhole_style.jpg


particleColor

Устанавливает цвет частиц, используемых в параметре style.

KeyValuesDefault
particleColor0x с последующим hex-кодом0
Пример
particleColor: 0x9f5cdd

create_wormhole_particlecolor.jpg


blindPlayer

Устанавливает, ослепляет ли портал игрока для более плавной телепортации.

KeyValuesDefault
blindPlayerBooleanfalse
Пример
blindPlayer: true

create_wormhole_blind.jpg


sizeMultiplier

Умножает размер портала и формы, заданной параметром style. sizeMultiplier также влияет на радиус активации — игроки должны находиться в пределах 1.5 × sizeMultiplier блоков от червоточины, чтобы запустить телепортацию.

KeyValuesDefault
sizeMultiplierMultiplier1
Пример
sizeMultiplier: 3

Помните, что после применения множителя размера вам придётся скорректировать координаты Y червоточины.

create_wormhole_size.jpg


customModel1

Устанавливает пользовательскую модель для отображения червоточины в первом местоположении. Использует строку-идентификатор модели. Это переопределяет форму, заданную в style, для местоположения 1.

KeyValuesDefault
customModel1Stringnone
Пример
customModel1: my_custom_wormhole_model

customModel2

Устанавливает пользовательскую модель для отображения червоточины во втором местоположении. Использует строку-идентификатор модели. Это переопределяет форму, заданную в style, для местоположения 2.

KeyValuesDefault
customModel2Stringnone
Пример
customModel2: my_custom_wormhole_model

Пример конфигурации червоточины

В этом примере мы создадим простую червоточину, которая переносит нас из одного мира в другой. Не забывайте, что червоточины также могут просто телепортировать игроков в другое место в том же мире.

isEnabled: true #Мы включаем червоточину, установив это значение в true
location1: my_world,1.5,11.0,1.5,108.0,5.0 #здесь червоточина появится в my_world
location2: my_other_world,766.5,29.0,517.5,-136.0,5.0 #здесь червоточина появится в my_other_world
location1Text: "&aGo to My World" #создаёт красивый отображаемый текст над червоточиной location1
location2Text: "&aGo to My Other World" #создаёт красивый отображаемый текст над червоточиной location2
permission: eliteperm.coolplayers #только игроки с этим правом смогут использовать червоточину, как для location1, так и для location2
coinCost: 2 #игрокам нужно будет заплатить 2 элитные монеты, чтобы использовать червоточину
style: CRYSTAL #эта червоточина будет в форме кристалла
particleColor: 0x00ff00 #это установит частицы червоточины зелёного цвета
blindPlayer: true #телепортация через червоточину ослепит игрока на короткое время, чтобы сделать переход менее резким
sizeMultiplier: 1.0 #задаёт, насколько большой должна быть форма червоточины

Проблемы с производительностью

Частицы червоточин могут вызывать проблемы с производительностью клиента у игроков, использующих Bedrock. Вы можете настроить производительность частиц в ~plugins\EliteMobs\Wormholes.yml:

  • reducedParticlesMode: true (по умолчанию) — снижает плотность частиц на 50% для лучшей производительности, особенно рекомендуется для серверов с клиентами Bedrock
  • noParticlesMode: true — полностью отключает все частицы червоточин

Примечание: червоточины отображаются только для игроков в пределах 30 блоков для оптимизации производительности сервера.