- Fixed player argument being incorrectly null for some BossDeathEvent/BossKillEvents
- Added consume_held_item effect, runs Player#updateEffects to be able to create consumable items to interact with other holders
- Fixed bug when enabling/disabling permanent effects in different orders than they were disabled/enabled in; this led to effects such as add_stat giving the wrong bonuses for some users with some configs.
- API: Effect#getUUID, Effect#getNamespacedKey, Player#getEffectAmount have been removed, and a new Identifiers parameter is passed to effects on enable / disable instead (A data class of a UUID and NamespacedKey to be used)
- Rewrote the entire effect scanning system (again), will be faster and more reliable now.
- Changed how effects detect trigger compatibility. (API) - Instead of supplying a Collection<Trigger> in the constructor, a () -> Collection<Trigger> is supplied instead. Triggers.withParameters returns () -> Collection<Trigger> now, and specifying all triggers uses Triggers.all() rather than Triggers.values(). Effect#applicableTriggers remains unchanged; however the named parameter in the effect constructor is now triggers rather than applicableTriggers.
This will fix issues with triggers being registered after effect constructor invocation but before effect compilation, for example the kill_boss trigger not working with give_points.