package zmaster587.advancedRocketry.tile.multiblock.machine; import java.util.List; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.ResourceLocation; import zmaster587.advancedRocketry.api.AdvancedRocketryBlocks; import zmaster587.advancedRocketry.inventory.TextureResources; import zmaster587.libVulpes.api.material.AllowedProducts; import zmaster587.libVulpes.api.material.Material; import zmaster587.libVulpes.api.material.MaterialRegistry; import zmaster587.libVulpes.block.BlockMeta; import zmaster587.libVulpes.interfaces.IRecipe; import zmaster587.libVulpes.inventory.modules.IModularInventory; import zmaster587.libVulpes.inventory.modules.ModuleBase; import zmaster587.libVulpes.inventory.modules.ModuleProgress; import zmaster587.libVulpes.recipe.RecipesMachine; import zmaster587.libVulpes.tile.multiblock.TileMultiblockMachine; public class TileCrystallizer extends TileMultiblockMachine implements IModularInventory { public static final Object[][][] structure = { {{AdvancedRocketryBlocks.blockQuartzCrucible, AdvancedRocketryBlocks.blockQuartzCrucible, AdvancedRocketryBlocks.blockQuartzCrucible}, {AdvancedRocketryBlocks.blockQuartzCrucible, AdvancedRocketryBlocks.blockQuartzCrucible, AdvancedRocketryBlocks.blockQuartzCrucible}}, {{'O', 'c', 'I'}, {new BlockMeta(Block.getBlockFromItem(MaterialRegistry.getMaterialFromName("Copper").getProduct(AllowedProducts.getProductByName("COIL")).getItem()), MaterialRegistry.getMaterialFromName("Copper").getMeta()), 'P', new BlockMeta(Block.getBlockFromItem(MaterialRegistry.getMaterialFromName("Copper").getProduct(AllowedProducts.getProductByName("COIL")).getItem()), MaterialRegistry.getMaterialFromName("Copper").getMeta())}}, }; Material coil[]; public TileCrystallizer() { coil = new Material[2]; } @Override public Object[][][] getStructure() { return structure; } @Override protected float getTimeMultiplierForRecipe(IRecipe recipe) { return super.getTimeMultiplierForRecipe(recipe); } @Override public ResourceLocation getSound() { return TextureResources.sndCrystallizer; } @Override public AxisAlignedBB getRenderBoundingBox() { return AxisAlignedBB.getBoundingBox(xCoord -2,yCoord -2, zCoord -2, xCoord + 2, yCoord + 2, zCoord + 2); } @Override public List<ModuleBase> getModules(int ID, EntityPlayer player) { List<ModuleBase> modules = super.getModules(ID, player); modules.add(new ModuleProgress(100, 4, 0, TextureResources.crystallizerProgressBar, this)); return modules; } @Override public String getMachineName() { return "container.crystallizer"; } }