Remnant: Make a unified custom enchantment system
Right now custom enchantments like Vorpal are just implemented as Lore, and they have to have about 6 special cases throughout the codebase to work seamlessly. If we want to have more custom enchantments than just Vorpal, we should have make API surface for it.
We should actually know what kinds of custom enchantments we want before we do this, for obvious reasons.
Requirements
- Enchantments can store arbitrary data on ItemStacks, like database keys
- Enchantments can add lore to the ItemStack to be displayed on hover
- An enchantment can easily change its displayed level. Vorpal uses this, incrementing the enchantment level by 1 for each player stored on the item.
- Probably more??
Enchantments we'd implement using this system
- Vorpal
- Enchant that gives access to a special HiddenOre drop table
- Lava fishing
Edited by Amelorate