- Improved/Fixed smelt trigger (Thanks OfTeN!)
- Added drop_item_slot effect (Thanks OfTeN!)
- Removed paper-plugin.yml
- Added complete_advancement trigger
- Added advancements filter
- Added has_completed_advancement condition
- Added smith_item trigger
- Added open_crafting effect
- Added TAB integration: has_scoreboard_visible, has_boss_bar_visible
- Fixed AttributeEffect console spam from last version
- Big improvements to are and aoe_blocks: they will now run from the supplied location, rather than from the player's location. You may need to update some effects to have a location_to_player mutator
- Fixed all_players, random_player, run_chain, and nested chains for non-player triggers
- Added victim_as_dispatcher mutator
- Fixed Block and Location dispatchers
- Added dispatcher_as_player and dispatcher_as_victim mutators
- Improved all existing triggers for Dispatcher system
- Fixed run_command effect
- Fixed click_block and click_entity triggers firing twice (Thanks PQGuanfang!)
- API: Added TriggerData#dispatcher - there is no corresponding TriggerParameter as trigger data will always contain a dispatcher
- Several other performance and stability improvements
- Added new
Dispatcherinterface. 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.
registerHolderProviderhas been replaced withregisterSpecificHolderProvider<T>andregisterGenericHolderProviderEffect#onEnableandEffect#onDisablehave had the player versions deprecated and replaced with new versions that take Dispatchers. Update your effects!Condition#isMethas 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<*>#holdersetc.
To convert between anEntityand 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!
- Added conditions.default-state-off-main-thread option in /plugins/libreforge/config.yml. This is for more advanced users and should help fix not-met-lines not showing up in rare edge cases. However, changing the value from true to false may also make not-met-lines show up when they shouldn't at times.
- Fixed take_damage causing errors on versions before 1.20
- Deprecated drop_item_for_player, use drop_item instead
- not-met-lines now also works with per-effect conditions
- Added cooldown_effects
- Added create_boss_bar, remove_boss_bar, and update_boss_bar effects
