/** Copyright (c) 2011-2015, SpaceToad and the BuildCraft Team http://www.mod-buildcraft.com * * The BuildCraft API is distributed under the terms of the MIT License. Please check the contents of the license, which * should be located as "LICENSE.API" in the BuildCraft source code distribution. */ package buildcraft.api.blueprints; import java.io.File; import net.minecraft.util.BlockPos; import net.minecraft.util.EnumFacing; import net.minecraft.world.World; /** This class is provided as a utility class for third-party mods that would like to easily deploy structures that are * written in blueprints. It does not offer control on material that needs to get in, or how the structure is deployed, * but allows to create contents of a blueprint in one cycle. Note that these functionalities will only work if * BuildCraft is installed. */ public abstract class BlueprintDeployer { /** The deployed instantiated by BuildCraft. This is set by the BuildCraft builder mod. Mods that want to work with * BuildCraft not installed should check for this value to be not null. */ public static BlueprintDeployer instance; /** Deploy the contents of the blueprints as if the builder was located at {pos} facing the direction dir. */ public abstract void deployBlueprint(World world, BlockPos pos, EnumFacing facing, File file); /** Deploy the contents of the byte array as if the builder was located at {pos} facing the direction dir. */ public abstract void deployBlueprintFromFileStream(World world, BlockPos pos, EnumFacing dir, byte[] data); }