Изменения и дополнения
- Исправлено: некорректный учёт вращения текстовых снарядов.
- Переименован атрибут bulletRotation в forcedBulletRotation.
- Добавлен булевый атрибут bulletRotatesBasedOnDirection — определяет, будет ли текстовый снаряд вращаться в зависимости от направления движения (по умолчанию false).
- Добавлен недостающий алиас для условия owner.
- Исправлен NoSuchMethodError с методом setTarget на версии 1.21.8.
- Добавлены улучшения для расширенной RPG-совместимости.
- Добавлено событие MythicPlayerVariableEvent3.
- Проведён рефакторинг внутренних имён для единообразия.
- Добавлена поддержка символа | для задания значения по умолчанию в ключевом слове ket для карт и списков.
- Добавлено мета-ключевое слово formatted.
- Добавлен класс PolymorphicPlaceholder для лучшей обработки операций с переменными.
- Оптимизировано создание переменных в механике VariableSet и связанном коде.
- Добавлено мета-ключевое слово cache — при первом парсинге плейсхолдера результат кешируется, а при последующих обращениях возвращается сохранённое значение.
- Существенно оптимизирована обработка мета-ключевых слов плейсхолдеров переменных, теперь можно безопасно комбинировать большое количество ключевых слов.
- Удалены (временно) мета-ключевые слова type, expires, expiration и saved.
- Улучшена обработка мета-ключевых слов, добавлена поддержка парсинга математических операций и других типо-специфичных преобразований (например, get для списка ожидает Integer и теперь корректно парсит математику в этом месте).
- Добавлен тип переменной MetaSkill и атрибут variable в механику VSkill.
- Это позволяет предварительно парсить MetaSkills для использования в vskill-механиках без повторной регистрации при каждом выполнении, что даёт возможность использовать контент, зависящий от времени.
- Исправлена проблема с MetaSkillVariable, при которой связанный MetaSkill не перезагружался.
- Добавлен тип переменной Item и соответствующий плейсхолдер.
- Слот может быть именованным (Hand, Offhand и т. д.) или числовым. Работает только для игроков.
- Добавлен атрибут variable в механики giveitem и takeitem.
- giveitem теперь может нацеливаться на локации: если это контейнер — предметы помещаются внутрь, иначе они дропаются в указанном месте.
- Добавлено 24 мета-ключевых слова для работы с типом Item, позволяющих модифицировать ItemStack через их использование.
- Добавлена поддержка плейсхолдеров для атрибута радиуса призыва
- Исправлены сломанные голограммы в предыдущих сборках
- Исправлены ошибки с неизменяемым списком цветов свечения на версии 1.21.8
🔹 Добавлены новые типы переменных: Boolean, Vector, Time.
🔹 Переработан парсинг метаданных плейсхолдеров переменных — теперь каждая метадата имеет конкретный тип возвращаемого значения, что позволяет цеплять операции, если типы совместимы.
🔹 Добавлено множество новых метаданных — теперь их всего 106.
🔹 Все типы переменных теперь поддерживаются в механиках variableadd и variablesubtract, с уникальным поведением в зависимости от типа.
🔹 Механика foreachvalues теперь также задаёт параметр index для скиллов.
🔹 Вернулись плейсхолдеры <<> и <>>.
🔹 Добавлены новые плейсхолдеры: <^dot> и <^dot2>.
🔹 Новые типы данных для переменных
– Унифицированы все плейсхолдеры переменных с областью видимости:
<scope.var.имя>
Теперь можно добавлять метаданные в конец плейсхолдера:
<scope.var.имя.метаданные>
📌 Доступные метаданные:
– Для всех переменных:
• expires — есть ли срок действия
• expiration — время истечения
• saved — сохранена ли переменная
– Для переменных типа локация:
• x, y, z, yaw, pitch, world
– Для векторов:
• x, y, z
🔹 Добавлен тип переменной Set (множество)
– Поддерживает метаданные:
• size — размер множества
– Обновлены SetVariable, VariableAdd, VariableSubtract — теперь работают с Set
– Добавлено условие VariableContains, чтобы проверять:
• содержит ли строка подстроку
• содержит ли Set конкретную строку
• содержит ли Set все или хотя бы один элемент другого Set
🔹 Добавлена механика ForEach
– Если использовать префикс set/ в переменных моба — создаётся переменная Set
🔹 Добавлен тип переменной List (список)
– Метаданные для List:
• size, first, last, reversed, sorted
• число — доступ по индексу (с нуля)
– VariableAdd добавляет в конец списка
– VariableSubtract удаляет по индексу
– Добавлена механика ForEachValue
🔹 Добавлен тип переменной Map (словарь)
– Метаданные для Map:
• size, keys, values
• строка — получить значение по ключу
– VariableAdd и VariableSubtract теперь работают и с Map (и заодно с double)
– Для List добавлены метаданные:
• pop — удалить последний
• shift — удалить первый
– Введены префиксы переменных моба: map/ и list/
🔧 Исправлено: условие на здоровье срабатывало некорректно — теперь работает как надо.
- Добавлена поддержка версии 1.21.8
- В механики shoot и volley добавлены параметры startYOffset startForwardOffset и startSideOffset
- Для орбиталов добавлены недостающие параметры и поддержка плейсхолдеров включая hitConditions stopConditions hitTargeter и drawHitbox
- Оптимизирована логика орбиталов
- Удалено ненужное использование reflection в AI целях
- Начата работа над системой группировки частиц (particle bundler)
- – Добавлен атрибут bulletRotation для текстовых снарядов (text display bullets)
- – Добавлен плейсхолдер для вывода количества миллисекунд, прошедших с эпохи
- – В условии comparevalues тип данных заменён с int на long
- – Добавлен универсальный атрибут upoffset для таргетера позиции
- – Исправлен volatilecode для вращения текстовых дисплеев на версии 1_20_R1
Добавлена поддержка плейсхолдеров для радиуса в эффекте ParticleOrbital (закрывает #1973)
Удалён псевдоним hs для hugSurface в механике орбиты
Добавлена опция immuneDelay в механику орбиты и исправлена проблема с игнорированием защиты от повторных попаданий
Обновлена логика выбора целей для орбитальных эффектов
Объединён фикс утечки памяти от masmc05
Добавлен параметр exactmatch=false для условия mythicMobType
Исправлена инициализация класса поиска сущностей — теперь он корректно загружается
Добавлено кэширование для различных запросов сущностей
Рефакторинг и оптимизация проверки условий по здоровью в механиках умений
Исправлены ошибки, возникавшие при обращении других плагинов к методам до полной загрузки плагина
Добавлены недостающие параметры в дефолтный конфиг
Оптимизирована система отслеживания кулдаунов умений и механик
Исправлена IllegalStateException, связанная с аурами в последней dev-сборке
Параметр sync=true в механике ауры теперь принудительно запускает её через синхронный планировщик
- Исправлена некорректная работа параметра verticalOffset у ракет
- Исправлена ошибка, из-за которой предметы не загружались при наличии двух одинаковых атрибутов в конфигурации
Добавлен параметр shape в таргетеры @EntitiesInRadius и @EntitiesNearOrigin
Форма может быть SPHERE (по умолчанию), SQUARE или CYLINDER. При использовании CYLINDER доступны дополнительные параметры: height и yoffset
Исправлена проблема, из-за которой предметы с атрибутами не стакивались
Исправлены некоторые механики, связанные с прочностью, которые не использовали данные из новых компонентов прочности
Обновлены некоторые библиотеки
5.9.5 RELEASE
Исправлены ошибки модификаторов уровня
Исправлено несколько проблем с эффектом отдачи на новых версиях
Исправлена инверсия опции freezeFacing в механике stun