Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
WeAthFolD committed Jan 29, 2016
2 parents 7b19523 + b35b260 commit 1deac81
Show file tree
Hide file tree
Showing 380 changed files with 3,832 additions and 5,457 deletions.
696 changes: 21 additions & 675 deletions LICENSE

Large diffs are not rendered by default.

61 changes: 20 additions & 41 deletions README.md
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
Binary file added blob/docres/cgui_helloworld.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added blob/docres/hier.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion build.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
mod_name = LambdaLib
mod_ver = 1.1.0
mod_ver = 1.1.1
mod_group = cn.lambdalib
mc_ver = 1.7.10
forge_ver = 10.13.4.1517-1.7.10
Expand Down
82 changes: 0 additions & 82 deletions docs/annoreg-en.md

This file was deleted.

160 changes: 0 additions & 160 deletions docs/annoreg-regtypes-zh.md

This file was deleted.

Loading

0 comments on commit 1deac81

Please sign in to comment.