diff --git a/buildcraft_client/net/minecraft/src/mod_BuildCraftTransport.java b/buildcraft_client/net/minecraft/src/mod_BuildCraftTransport.java index 4e45798c..692c9578 100644 --- a/buildcraft_client/net/minecraft/src/mod_BuildCraftTransport.java +++ b/buildcraft_client/net/minecraft/src/mod_BuildCraftTransport.java @@ -54,6 +54,8 @@ public class mod_BuildCraftTransport extends NetworkMod implements IItemRenderer MinecraftForgeClient.registerItemRenderer(BuildCraftTransport.pipePowerGold.shiftedIndex, this); MinecraftForgeClient.registerItemRenderer(BuildCraftTransport.pipeStructureCobblestone.shiftedIndex, this); MinecraftForgeClient.registerItemRenderer(BuildCraftTransport.pipeItemsStipes.shiftedIndex, this); + MinecraftForgeClient.registerItemRenderer(BuildCraftTransport.pipeItemsVoid.shiftedIndex, this); + MinecraftForgeClient.registerItemRenderer(BuildCraftTransport.pipeLiquidsVoid.shiftedIndex, this); } public static void registerTilePipe(Class clas, String name) { diff --git a/buildcraft_resources/gfx/buildcraft/blocks/blocks.png b/buildcraft_resources/gfx/buildcraft/blocks/blocks.png index bd4c6560..26c5b8f8 100644 Binary files a/buildcraft_resources/gfx/buildcraft/blocks/blocks.png and b/buildcraft_resources/gfx/buildcraft/blocks/blocks.png differ diff --git a/buildcraft_resources/lang/buildcraft/en_US.properties b/buildcraft_resources/lang/buildcraft/en_US.properties index f13d5fde..2592e6e6 100644 --- a/buildcraft_resources/lang/buildcraft/en_US.properties +++ b/buildcraft_resources/lang/buildcraft/en_US.properties @@ -63,6 +63,8 @@ item.PipePowerStone=Stone Conductive Pipe item.PipePowerGold=Golden Conductive Pipe item.PipeItemsStripes=Stripes Transport Pipe item.PipeStructureCobblestone=Cobblestone Structure Pipe +item.PipeItemsVoid=Void Transport Pipe +item.PipeLiquidsVoid=Void Waterproof Pipe tile.miningWellBlock=Mining Well tile.plainPipeBlock=Mining Pipe tile.autoWorkbenchBlock=Autocrafting Table diff --git a/common/net/minecraft/src/BuildCraftTransport.java b/common/net/minecraft/src/BuildCraftTransport.java index 65da1841..4e7d3916 100644 --- a/common/net/minecraft/src/BuildCraftTransport.java +++ b/common/net/minecraft/src/BuildCraftTransport.java @@ -44,11 +44,13 @@ import net.minecraft.src.buildcraft.transport.pipes.PipeItemsIron; import net.minecraft.src.buildcraft.transport.pipes.PipeItemsObsidian; import net.minecraft.src.buildcraft.transport.pipes.PipeItemsStone; import net.minecraft.src.buildcraft.transport.pipes.PipeItemsStripes; +import net.minecraft.src.buildcraft.transport.pipes.PipeItemsVoid; import net.minecraft.src.buildcraft.transport.pipes.PipeItemsWood; import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsCobblestone; import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsGold; import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsIron; import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsStone; +import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsVoid; import net.minecraft.src.buildcraft.transport.pipes.PipeLiquidsWood; import net.minecraft.src.buildcraft.transport.pipes.PipePowerGold; import net.minecraft.src.buildcraft.transport.pipes.PipePowerStone; @@ -84,12 +86,14 @@ public class BuildCraftTransport { public static Item pipeItemsGold; public static Item pipeItemsDiamond; public static Item pipeItemsObsidian; + public static Item pipeItemsVoid; public static Item pipeLiquidsWood; public static Item pipeLiquidsCobblestone; public static Item pipeLiquidsStone; public static Item pipeLiquidsIron; public static Item pipeLiquidsGold; + public static Item pipeLiquidsVoid; public static Item pipePowerWood; public static Item pipePowerStone; @@ -239,6 +243,13 @@ public class BuildCraftTransport { // Fix the recipe pipeItemsStipes = createPipe(DefaultProps.PIPE_ITEMS_STRIPES_ID, PipeItemsStripes.class, "Stripes Transport Pipe", new ItemStack(Item.dyePowder, 1, 0), Block.glass, new ItemStack(Item.dyePowder, 1, 11)); + + pipeItemsVoid = createPipe(DefaultProps.PIPE_ITEMS_VOID_ID, PipeItemsVoid.class, "Void Transport Pipe", + new ItemStack(Item.dyePowder, 1, 0), Block.glass, Item.redstone); + + pipeLiquidsVoid = createPipe(DefaultProps.PIPE_LIQUIDS_VOID_ID, PipeLiquidsVoid.class, "Void Waterproof Pipe", + pipeWaterproof, pipeItemsVoid, null); + // dockingStationBlock = new // BlockDockingStation(Integer.parseInt(dockingStationId.value)); diff --git a/common/net/minecraft/src/buildcraft/core/DefaultProps.java b/common/net/minecraft/src/buildcraft/core/DefaultProps.java index 55dc4f42..ae65a5a3 100644 --- a/common/net/minecraft/src/buildcraft/core/DefaultProps.java +++ b/common/net/minecraft/src/buildcraft/core/DefaultProps.java @@ -75,6 +75,8 @@ public class DefaultProps { public static int PIPE_ITEMS_STRIPES_ID = 4071; public static int PIPE_STRUCTURE_COBBLESTONE_ID = 4072; + public static int PIPE_ITEMS_VOID_ID = 19150; + public static int PIPE_LIQUIDS_VOID_ID = 19151; public static int WOODEN_PIPE_ID = 145; // LEGACY public static int STONE_PIPE_ID = 146; // LEGACY diff --git a/common/net/minecraft/src/buildcraft/transport/PipeLogicVoid.java b/common/net/minecraft/src/buildcraft/transport/PipeLogicVoid.java new file mode 100644 index 00000000..62c5a915 --- /dev/null +++ b/common/net/minecraft/src/buildcraft/transport/PipeLogicVoid.java @@ -0,0 +1,14 @@ +/** + * Copyright (c) SpaceToad, 2011 + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ + +package net.minecraft.src.buildcraft.transport; + +public class PipeLogicVoid extends PipeLogic { + +} diff --git a/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsVoid.java b/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsVoid.java new file mode 100644 index 00000000..a9b5408d --- /dev/null +++ b/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsVoid.java @@ -0,0 +1,46 @@ +/** + * Copyright (c) SpaceToad, 2011 + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ + +package net.minecraft.src.buildcraft.transport.pipes; + +import net.minecraft.src.TileEntity; +import net.minecraft.src.buildcraft.transport.EntityData; +import net.minecraft.src.buildcraft.transport.IItemTravelingHook; +import net.minecraft.src.buildcraft.transport.Pipe; +import net.minecraft.src.buildcraft.transport.PipeLogicVoid; +import net.minecraft.src.buildcraft.transport.PipeTransportItems; + +public class PipeItemsVoid extends Pipe implements IItemTravelingHook{ + + public PipeItemsVoid(int itemID) { + super(new PipeTransportItems(), new PipeLogicVoid(), itemID); + ((PipeTransportItems) transport).travelHook = this; + } + + @Override + public int getMainBlockTexture() { + return 8 * 16 + 14; + } + + //This is called if the void pipe is only connected to one pipe + @Override + public void drop(PipeTransportItems pipe, EntityData data) { + data.item.item.stackSize = 0; + } + + //This is called when the void pipe is connected to multiple pipes + @Override + public void centerReached(PipeTransportItems pipe, EntityData data) { + ((PipeTransportItems) transport).scheduleRemoval(data.item); + } + + @Override + public void endReached(PipeTransportItems pipe, EntityData data, TileEntity tile) {} + +} diff --git a/common/net/minecraft/src/buildcraft/transport/pipes/PipeLiquidsVoid.java b/common/net/minecraft/src/buildcraft/transport/pipes/PipeLiquidsVoid.java new file mode 100644 index 00000000..c01eb546 --- /dev/null +++ b/common/net/minecraft/src/buildcraft/transport/pipes/PipeLiquidsVoid.java @@ -0,0 +1,33 @@ +/** + * Copyright (c) SpaceToad, 2011 + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ + +package net.minecraft.src.buildcraft.transport.pipes; + +import net.minecraft.src.buildcraft.api.Orientations; +import net.minecraft.src.buildcraft.transport.IPipeTransportLiquidsHook; +import net.minecraft.src.buildcraft.transport.Pipe; +import net.minecraft.src.buildcraft.transport.PipeLogicVoid; +import net.minecraft.src.buildcraft.transport.PipeTransportLiquids; + +public class PipeLiquidsVoid extends Pipe implements IPipeTransportLiquidsHook{ + + public PipeLiquidsVoid(int itemID) { + super(new PipeTransportLiquids(), new PipeLogicVoid(), itemID); + } + + @Override + public int getMainBlockTexture() { + return 9 * 16 + 14; + } + + @Override + public int fill(Orientations from, int quantity, int id, boolean doFill) { + return quantity; + } +}