- - Добавлен триггер complete_advancement
- - Добавлен фильтр авансов
- - Добавлено условие has_completed_advancement
- - Добавлен триггер smith_item
- - Добавлен эффект open_crafting
- - Добавлена интеграция TAB: has_scoreboard_visible, has_boss_bar_visible
- Исправлен консольный спам AttributeEffect из прошлой версии
- Значительно улучшены эффекты are и aoe_blocks: теперь они будут запускаться из указанного местоположения, а не из местоположения игрока. Возможно, потребуется обновить некоторые эффекты, чтобы они имели мутатор location_to_player
- Исправлены триггеры all_players, random_player, run_chain и nested chains для неигровых триггеров
- Добавлен мутатор victim_as_dispatcher
- Исправлены диспетчеры блоков и локаций
- Добавлены мутаторы dispatcher_as_player и dispatcher_as_victim
- Улучшены все существующие триггеры для системы диспетчеров
- Исправлен эффект run_command
- Исправлено двойное срабатывание триггеров click_block и click_entity (спасибо PQGuanfang!)
- API: Добавлен TriggerData#dispatcher - нет соответствующего TriggerParameter, так как данные триггера всегда будут содержать диспетчер
- Несколько других улучшений производительности и стабильности
- Added new
Dispatcher
interface. A dispatcher can represent a Player, Entity, Block, or even the Server.- Holders (e.g. Enchantment Levels, Talismans, EcoItems) are no longer held by Players, but by Dispatchers
- Chains / Effects are now triggered by Dispatchers
- Conditions are now checked against Dispatchers
- Triggers are now triggered by Dispatchers
For Developers:
- Deprecated most core API methods and replaced them with new Dispatcher-based methods: e.g.
registerHolderProvider
has been replaced withregisterSpecificHolderProvider<T>
andregisterGenericHolderProvider
Effect#onEnable
andEffect#onDisable
have had the player versions deprecated and replaced with new versions that take Dispatchers. Update your effects!Condition#isMet
has had the player version deprecated and replaced with a new version that takes a Dispatcher- All methods like
Player#holders
,Player#updateHolders
, etc. have been deprecated and replaced withDispatcher<*>#holders
etc.
To convert between anEntity
and aDispatcher
, just doEntity#toDispatcher
- the core flow and most method names have remained the same.
Your existing Effects, Conditions, etc. will still work, however you should update them ASAP as the old methods will eventually be removed!
- - Добавлена опция conditions.default-state-off-main-thread в файл /plugins/libreforge/config.yml. Эта опция предназначена для более опытных пользователей и должна помочь исправить ситуацию, когда not-met-линии не отображаются в редких крайних случаях. Однако изменение значения с true на false также может привести к тому, что иногда not-met-линии будут отображаться там, где не должны.
- - Исправлена ошибка take_damage, вызывающая ошибки в версиях до 1.20
- - Утратил силу drop_item_for_player, вместо него используйте drop_item
- - not-met-lines теперь работает и с условиями на эффект
- - Добавлена функция cooldown_effects
- - Добавлены эффекты create_boss_bar, remove_boss_bar и update_boss_bar
- - Исправлена ошибка зачеркивания
- Триггер take_damage больше не будет срабатывать при повреждении пустоты, /kill или /suicide
- API: Добавлена категория RegistrableCategory
- - Добавлено условие is_op
- - Добавлено значение для триггера shoot_bow, от 0 до 1 в зависимости от натяжения лука
- - Добавлены фильтры value_above, value_below и value_equals
- - Фильтр fully_charged теперь работает с функцией shoot_bow
- - Добавлены фильтры item_durability_above_percent и item_durability_below_percent
- - Триггер smelt теперь выдает в качестве значения количество выплавленных предметов
- - Добавлены опциональные фильтры для mine_vein