mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 06:50:12 +01:00
Add AnvilView#bypassEnchantmentLevelRestriction
Anvils, by default, limit applied enchantment levels to their respective maximum level. The added API enables plugins to disable this behaviour, allowing enchantments that are overleveled to be applied via the anvil.
This commit is contained in:
parent
6dfba7e0c7
commit
65f5b7a4b7
1 changed files with 24 additions and 0 deletions
|
@ -65,4 +65,28 @@ public interface AnvilView extends InventoryView {
|
|||
* @param levels the levels to set
|
||||
*/
|
||||
void setMaximumRepairCost(int levels);
|
||||
|
||||
// Paper start - bypass anvil level restrictions
|
||||
/**
|
||||
* Returns whether this view will bypass the vanilla enchantment level restriction
|
||||
* when applying enchantments to an item or not.
|
||||
* <p>
|
||||
* By default, vanilla will limit enchantments applied to items to the respective
|
||||
* {@link org.bukkit.enchantments.Enchantment#getMaxLevel()}, even if the applied enchantment itself is above said
|
||||
* limit.
|
||||
* Disabling this limit via {@link AnvilView#bypassEnchantmentLevelRestriction(boolean)} allows for, e.g., enchanted
|
||||
* books to be applied fully, even if their enchantments are beyond the limit.
|
||||
*
|
||||
* @return {@code true} if this view bypasses the vanilla restrictions.
|
||||
*/
|
||||
boolean bypassesEnchantmentLevelRestriction();
|
||||
|
||||
/**
|
||||
* Sets if enchantments applied via this anvil view may bypass vanilla's level restrictions.
|
||||
*
|
||||
* @param bypassEnchantmentLevelRestriction if this view bypasses the vanilla level restrictions.
|
||||
* @see AnvilView#bypassesEnchantmentLevelRestriction()
|
||||
*/
|
||||
void bypassEnchantmentLevelRestriction(boolean bypassEnchantmentLevelRestriction);
|
||||
// Paper end - bypass anvil level restrictions
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue