-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
380 changed files
with
3,832 additions
and
5,457 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,52 +1,31 @@ | ||
# LambdaLib | ||
Common library and utils behind Lambda Innovation mods. | ||
|
||
Introduction | ||
--- | ||
A modding library that aims at making modding fluent and enjoyable. | ||
|
||
LambdaLib is the code base for many Lambda Innovation mods. It provides many utilities for Minecraft modding and can boost modder's developement speed dramatically. | ||
LambdaLib contains many functionalities that is really helpful to Minecraft modding but isn't provided by Minecraft | ||
or Forge. The utilities shipped with LambdaLib include: | ||
|
||
LambdaLib is licensed under [GPLv3](http://www.gnu.org/licenses/gpl.html), and currently works on Minecraft 1.7.10. We probably won't update to newer MC versions recently (until mojang make their codes better, which is unlikely to happen). | ||
* CGUI - Hierarchy based GUI framework, with an **in-game editor** | ||
* AnnoReg - Use annotation to assist registry, achieving great decoupleness | ||
* NetworkS11n - Send objects and messages with no effort through network | ||
* ...... | ||
|
||
LambdaLib is merged from two previous projects: | ||
LambdaLib is currently not yet stable and is only for internal usage only, | ||
but will reach a stable state perhaps soon. | ||
|
||
* [LIUtils](https://github.com/LambdaInnovation/LIUtils) provides various functionalities and utilities for common modding. | ||
* [AnnotationRegistry](https://github.com/LambdaInnovation/AnnotationRegistry) focuses on a series of Registration-friendly methods based on Annotations. | ||
Developement Setup | ||
===== | ||
|
||
Their functionalities are pretty distinct, so the package names of the project will stay the same: ```cn.liutils``` and ```cn.annoreg```. | ||
A java8 developement environment with scala compatibility is required. Note that when you include source code, you must | ||
put [jars\LambdaLib-PluginLoader.jar](jars\LambdaLib-PluginLoader.jar) into the `eclipse\mods` folder. | ||
|
||
The project is under heavy developement and is currently not stable. There will be a formal release after we finished cleaning up the code. | ||
Project structure: | ||
|
||
Workspace setup | ||
--- | ||
* `src\main\`: Core features shipped with release | ||
* `src\editor\`: Features used only in dev environment | ||
* `src\test\`: Test codes | ||
|
||
1. Link the ```src/main/java``` and ```src/main/resources``` into your workspace. | ||
2. Put the [coremod loading hook](jars/LambdaLib.jar) into your ``eclipse/mods`` folder. | ||
3. Make sure you have installed JDK8 and uses 1.8 compilation level in your IDE. ForgeGradle default uses 1.6. | ||
Misc | ||
===== | ||
|
||
Compilation | ||
--- | ||
|
||
The project uses Java8 in developement and we officially uses [RetroLambda](https://github.com/evant/gradle-retrolambda) to compile. Therefore, any use of stream API is forbiddened. | ||
|
||
You can use the following command to build locally: | ||
``` | ||
gradle clean install | ||
``` | ||
|
||
Contents | ||
--- | ||
|
||
* CGUI - GUI Library with Event Factory, Component Pattern, Visualized Edit | ||
* Vis - Animation and model utilities | ||
* RecipeRegistry - Write recipes in a script and stay away from the trouble of ```GameRegistry.addRecipe``` | ||
* AnnotationRegistry - Use annotation to decouple modules and game elements | ||
* NetworkCall - Send packets by directly calling methods | ||
* Raytrace - Better wrapup for ray-tracing, allows Entity and Block Type filtering. | ||
|
||
More to discover... | ||
|
||
Contribution | ||
--- | ||
|
||
If you are a talented coder and want to contribute to the project, feel free to submit a pull request! We would love the help. | ||
License: MIT |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.