/** * 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.world.World; import net.minecraftforge.common.util.ForgeDirection; /** * 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 * {x, y, z} facing the direction dir. */ public abstract void deployBlueprint(World world, int x, int y, int z, ForgeDirection dir, File file); /** *Deploy the contents of the byte array as if the builder was located at *{x, y, z} facing the direction dir. */ public abstract void deployBlueprintFromFileStream(World world, int x, int y, int z, ForgeDirection dir, byte [] data); }