package zmaster587.advancedRocketry.tile.multiblock.machine; import java.util.List; import java.util.Set; 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 net.minecraft.world.World; import zmaster587.advancedRocketry.api.AdvancedRocketryBlocks; import zmaster587.advancedRocketry.inventory.TextureResources; import zmaster587.libVulpes.LibVulpes; import zmaster587.libVulpes.api.LibVulpesBlocks; import zmaster587.libVulpes.block.BlockMeta; import zmaster587.libVulpes.interfaces.IRecipe; import zmaster587.libVulpes.inventory.modules.ModuleBase; import zmaster587.libVulpes.inventory.modules.ModuleProgress; import zmaster587.libVulpes.recipe.RecipesMachine; import zmaster587.libVulpes.tile.multiblock.TileMultiBlock; import zmaster587.libVulpes.tile.multiblock.TileMultiblockMachine; public class TileChemicalReactor extends TileMultiblockMachine { public static final Object[][][] structure = { {{null, 'c',null}, {'L', 'I','L'}}, {{'P', AdvancedRocketryBlocks.blockMotor, 'P'}, {'l', new BlockMeta(LibVulpesBlocks.blockStructureBlock), 'O'}}, }; @Override public boolean shouldHideBlock(World world, int x, int y, int z, Block tile) { TileEntity tileEntity = world.getTileEntity(x, y, z); return !TileMultiBlock.getMapping('P').contains(new BlockMeta(tile, BlockMeta.WILDCARD)) && tileEntity != null && !(tileEntity instanceof TileChemicalReactor); } @Override public Object[][][] getStructure() { return structure; } @Override public ResourceLocation getSound() { return TextureResources.sndRollingMachine; } @Override public int getSoundDuration() { return 30; } @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 "tile.chemreactor.name"; } }