/** * Copyright (c) Lambda Innovation, 2013-2016 * This file is part of the AcademyCraft mod. * https://github.com/LambdaInnovation/AcademyCraft * Licensed under GPLv3, see project root for more information. */ package cn.academy.energy; import cn.academy.core.item.ACItem; import cn.academy.core.registry.ACRecipeNamesRegistration.RegACRecipeNames; import cn.academy.crafting.ModuleCrafting; import cn.academy.energy.block.*; import cn.academy.energy.block.BlockNode.NodeType; import cn.academy.energy.block.wind.BlockWindGenBase; import cn.academy.energy.block.wind.BlockWindGenMain; import cn.academy.energy.block.wind.BlockWindGenPillar; import cn.academy.energy.item.ItemMatrixCore; import cn.academy.energy.template.ItemEnergyBase; import cn.academy.support.EnergyItemHelper; import cn.lambdalib.annoreg.core.Registrant; import cn.lambdalib.annoreg.mc.RegBlock; import cn.lambdalib.annoreg.mc.RegInitCallback; import cn.lambdalib.annoreg.mc.RegItem; import cn.lambdalib.crafting.CustomMappingHelper.RecipeName; import cn.lambdalib.multiblock.ItemBlockMulti; import net.minecraft.item.Item; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidStack; /** * @author WeAthFolD */ @Registrant @RegACRecipeNames public class ModuleEnergy { // BLOCKS @RegBlock @RecipeName("node0") public static BlockNode nodeBasic = new BlockNode(NodeType.BASIC); @RegBlock @RecipeName("node1") public static BlockNode nodeStandard = new BlockNode(NodeType.STANDARD); @RegBlock @RecipeName("node2") public static BlockNode nodeAdvanced = new BlockNode(NodeType.ADVANCED); @RegBlock(item = ItemBlockMulti.class) @RecipeName("mat") public static BlockMatrix matrix = new BlockMatrix(); @RegBlock public static BlockCatEngine infiniteGen; @RegBlock @RecipeName("solar_gen") public static BlockSolarGen solarGen; @RegBlock @RecipeName("phase_gen") public static BlockPhaseGen phaseGen; @RegBlock(item = ItemBlockMulti.class) @RecipeName("windgen_base") public static BlockWindGenBase windgenBase; @RegBlock @RecipeName("windgen_pillar") public static BlockWindGenPillar windgenPillar; @RegBlock(item = ItemBlockMulti.class) @RecipeName("windgen_main") public static BlockWindGenMain windgenMain; // ITEMS @RegItem @RecipeName("ene_unit") public static Item energyUnit = new ItemEnergyBase("energy_unit", 10000, 20); @RegItem @RecipeName("mat_core") public static ItemMatrixCore matrixCore; @RegItem @RecipeName("windgen_fan") public static Item windgenFan = new ACItem("windgen_fan").setMaxDamage(100).setMaxStackSize(1); @RegInitCallback private static void init() { FluidContainerRegistry.registerFluidContainer(new FluidStack(ModuleCrafting.fluidImagProj, 1000), EnergyItemHelper.createFullItem(energyUnit), EnergyItemHelper.createEmptyItem(energyUnit)); } }