Search in sources :

Example 11 with Pipe

use of buildcraft.transport.pipe.Pipe in project BuildCraft by BuildCraft.

the class TilePipeHolder method onPlacedBy.

// Misc
@Override
public void onPlacedBy(EntityLivingBase placer, ItemStack stack) {
    super.onPlacedBy(placer, stack);
    Item item = stack.getItem();
    if (item instanceof IItemPipe) {
        PipeDefinition definition = ((IItemPipe) item).getDefinition();
        this.pipe = new Pipe(this, definition);
        eventBus.registerHandler(pipe.behaviour);
        eventBus.registerHandler(pipe.flow);
        if (pipe.flow instanceof IFlowItems) {
            eventBus.registerHandler(FilterEventHandler.class);
        }
        int meta = stack.getMetadata();
        if (meta > 0 && meta <= 16) {
            pipe.setColour(EnumDyeColor.byMetadata(meta - 1));
        }
    }
    scheduleRenderUpdate();
}
Also used : Item(net.minecraft.item.Item) IItemPipe(buildcraft.api.transport.pipe.IItemPipe) PipeDefinition(buildcraft.api.transport.pipe.PipeDefinition) IItemPipe(buildcraft.api.transport.pipe.IItemPipe) IPipe(buildcraft.api.transport.pipe.IPipe) Pipe(buildcraft.transport.pipe.Pipe) IFlowItems(buildcraft.api.transport.pipe.IFlowItems)

Aggregations

Pipe (buildcraft.transport.pipe.Pipe)11 TilePipeHolder (buildcraft.transport.tile.TilePipeHolder)8 EnumFacing (net.minecraft.util.EnumFacing)8 PipePluggable (buildcraft.api.transport.pluggable.PipePluggable)6 EnumWirePart (buildcraft.api.transport.EnumWirePart)5 EnumWireBetween (buildcraft.transport.wire.EnumWireBetween)4 IFlowItems (buildcraft.api.transport.pipe.IFlowItems)3 IItemPipe (buildcraft.api.transport.pipe.IItemPipe)3 IPipe (buildcraft.api.transport.pipe.IPipe)3 Item (net.minecraft.item.Item)3 ItemStack (net.minecraft.item.ItemStack)3 AxisAlignedBB (net.minecraft.util.math.AxisAlignedBB)3 RayTraceResult (net.minecraft.util.math.RayTraceResult)3 Vec3d (net.minecraft.util.math.Vec3d)3 PipeDefinition (buildcraft.api.transport.pipe.PipeDefinition)2 EnumPipePart (buildcraft.api.core.EnumPipePart)1 InvalidInputDataException (buildcraft.api.core.InvalidInputDataException)1 IItemPluggable (buildcraft.api.transport.IItemPluggable)1 WireNode (buildcraft.api.transport.WireNode)1 ItemWire (buildcraft.transport.item.ItemWire)1