kurrycat2004 / EnchantmentLibrary

For all your enchantment storage needs
GNU General Public License v3.0
0 stars 0 forks source link

Enchantment Library

1.12.2 only

Dependencies:


Description

Adds a single block: the Enchantment Library, which can store any number of enchantments.

When inserting an enchanted book, it gets converted into its "point worth".
The "points worth" of an enchantment is 2level-1, where level is the level of the inserted enchantment.
You can then extract any stored enchantment at any level, as long as you have enough points, and you have inserted an enchantment of at least that level before.
So inserting two Unbreaking II books and extracting one Unbreaking III will NOT work if you have never inserted an Unbreaking III book or higher before.

Because of the way the enchantments are stored, the upper limit on how many points you can have stored is 2MAX_SHORT-1 2 MAX_LONG (the 2 is because the points are stored unsigned, so the sign bit can also be used).
The maximum
level* supported for storage/insertion/extraction however is MAX_SHORT (which is also the limit of Vanilla).

The Enchantment Library also exposes the max level extractable of each enchantment as enchanted books to automation (Hoppers, AE2, etc.).
Insertion supports ANY enchanted book (that has enchantments). If a book has multiple enchantments, they will all get stored (can be disabled in config).

Extracting books in the GUI is possible for any level from 1 to the max extractable.
Clicking with an enchanted book in hand on a different enchantment will add that enchantment to the book held (can be disabled in config).

The mod also adds config options for:

These options can all be fully disabled in case the functionality is not wanted / causes issues with other mods.