maruohon / malilib

Library mod for masa's client-side Minecraft mods
GNU Lesser General Public License v3.0
297 stars 132 forks source link

documentation #37

Open MrGeorgen opened 3 years ago

MrGeorgen commented 3 years ago

could you document how to use this library? I guess that it is mainly intended for your own mods, but not for external usage. However I think malilib could be useful for many other mods, but without documentation it is not esay to use.

maruohon commented 3 years ago

There will probably be some documentation once I finish all the refactors I'm currently working on in the main development branch in 1.12.2. These refactors also vastly increase the usefulness and flexibility of malilib in general for other mods. The old/current code base is quite limiting and hard coded in many places, requiring dependent mods to override lots of classes/methods to achieve some customizations.

As it is now, the best way to get started is to look at for example Litematica's code. The main mod class and the InitHandler.java class contain pretty much all of the entry points and registrations into malilib's systems. The rest is then just a bunch of util methods and base GUI code for making config GUIs and other GUIs. Pretty much all of these will change drastically in the refactored version, if you for example compare the liteloader_1.12.2 branch (the main development branch) with any of the 1.13+ branches that use the older code.