Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package requious.data;
- import com.google.gson.annotations.Expose;
- import com.google.gson.annotations.SerializedName;
- import crafttweaker.annotations.ZenRegister;
- import requious.Registry;
- import requious.compat.crafttweaker.ComponentFaceCT;
- import requious.data.component.ComponentEnergy;
- import requious.data.component.ComponentItem;
- import requious.recipe.AssemblyRecipe;
- import requious.data.component.ComponentBase;
- import stanhebben.zenscript.annotations.ZenClass;
- import stanhebben.zenscript.annotations.ZenMethod;
- import java.util.ArrayList;
- import java.util.List;
- @ZenRegister
- @ZenClass("mods.requious.Assembly")
- public class AssemblyData extends BaseData {
- @Expose(serialize = false, deserialize = false)
- public ComponentBase[][] slots = new ComponentBase[9][5];
- @Expose(serialize = false, deserialize = false)
- public List<AssemblyRecipe> recipes = new ArrayList<>();
- public AssemblyProcessor constructProcessor() {
- AssemblyProcessor processor = new AssemblyProcessor(this);
- processor.setComponent(slots);
- processor.setup();
- return processor;
- }
- @ZenMethod
- public static AssemblyData get(String identifier) {
- return Registry.getAssemblyData(identifier);
- }
- @ZenMethod
- public ComponentItem setItemSlot(int x, int y, ComponentFaceCT face, int capacity) {
- ComponentItem component = new ComponentItem(face.get(),capacity);
- slots[x][y] = component;
- return component;
- }
- @ZenMethod
- public ComponentEnergy setEnergySlot(int x, int y, ComponentFaceCT face, int capacity) {
- ComponentEnergy component = new ComponentEnergy(face.get(),capacity);
- slots[x][y] = component;
- return component;
- }
- @ZenMethod
- public void addRecipe(AssemblyRecipe recipe) {
- recipes.add(recipe);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement