Initially brought to my attention by Chaps79 on Discord a number of various bugs have been fixed:
* If you try to craft an item on the anvil but you don't have enough experience to do it, then the craft won't trigger.
* Items that aren't considered traditionally enchantable items will now default to an XP cost of 1, so that you don't get to enchant those for free.
* If you enchant a stack of items, then you a receive a stack of enchanted items. I thought about making it so that each item enchanted takes it's own enchanting book, but that seems unwieldy, and generally the items that stack aren't traditional tools and armor, so I figure it's fine. As always, feel free to change this behavior if it's unsuitable for you.
* At some point, formatting for enchantment names was broken, and started defaulting back to purple. This has been fixed, and you'll now get your regular gray enchantment lore lines again.
* Whenever you mixed vanilla and non vanilla enchants within any of the systems, things broke. From initial testing, this seems to have been fixed. So if you have an enchantment book with Protection 4 and "My Custom Helmet Enchant 5", then it should no longer be dropping Protection 4. This also goes the same for the enchantment table.
* Lore that already exists on the item should carry over to the newly enchanted item, although positioning on it might be a bit wonky. Ultimately the enchantment lore/regular lore needs to be tracked separately to avoid this issue, which will be a bit of a rewrite, but at least it's on there for now.
* Vanilla enchantments will now fire the relevant customevents, not just Denizen enchantments.
* When you cancel a customevent, it doesn't cancel the entire item from being enchanted, just that one enchantment. So if you decide to selectively cancel Protection enchantments, then someone using an anvil and enchanting book with Protection and Thorns will still get the Thorns on the item.
If you're using this and find any bugs, feel free to reach out to me on Discord!