From 77abb32d472d80c48dac8b48643f99fd69d15ba7 Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sat, 13 Jan 2018 19:25:00 -0800 Subject: Make pipes aware of translocators & tinker construct faucets so they can connect --- .../implementations/GT_MetaPipeEntity_Fluid.java | 10 ++++++++-- .../metatileentity/implementations/GT_MetaPipeEntity_Item.java | 3 +++ 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/api/metatileentity/implementations') diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java index eb403aa5f0..e2bf7342fb 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java @@ -369,7 +369,11 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { if (((IGregTechTileEntity) tTileEntity).getMetaTileEntity() instanceof GT_MetaPipeEntity_Fluid) { tFluidPipe = (GT_MetaPipeEntity_Fluid) ((IGregTechTileEntity) tTileEntity).getMetaTileEntity(); } + } else if(GregTech_API.mTranslocator == true && tTileEntity instanceof tconstruct.smeltery.logic.FaucetLogic) { + // Tinker Construct Faucets return a null tank info, so check the class + rConnect = 1; } + FluidTankInfo[] tInfo = tTileEntity.getTankInfo(ForgeDirection.getOrientation(aSide).getOpposite()); if (tInfo != null) { if (tInfo.length > 0) { @@ -390,7 +394,10 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_IV.get(1, new Object[]{},true)))) { rConnect = 1; } - } + } else if(GregTech_API.mTranslocator == true && tTileEntity instanceof codechicken.translocator.TileLiquidTranslocator) { + // Translocators return a TankInfo, but it's of 0 length - so check the class if we see this pattern + rConnect = 1; + } } } } @@ -418,7 +425,6 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { if (aIndex == 9) { GT_Utility.doSoundAtClient(GregTech_API.sSoundList.get(4), 5, 1.0F, aX, aY, aZ); for (byte i = 0; i < 6; i++) - for (int l = 0; l < 2; ++l) getBaseMetaTileEntity().getWorld().spawnParticle("largesmoke", aX - 0.5 + XSTR_INSTANCE.nextFloat(), aY - 0.5 + XSTR_INSTANCE.nextFloat(), aZ - 0.5 + XSTR_INSTANCE.nextFloat(), ForgeDirection.getOrientation(i).offsetX / 5.0, ForgeDirection.getOrientation(i).offsetY / 5.0, ForgeDirection.getOrientation(i).offsetZ / 5.0); } } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java index 7d266c1067..5864abc6d3 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java @@ -1,6 +1,7 @@ package gregtech.api.metatileentity.implementations; import gregtech.GT_Mod; +import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -231,6 +232,8 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE if (((IGregTechTileEntity) tTileEntity).getMetaTileEntity().connectsToItemPipe(tSide)) { rConnect = 1; } + } else if(GregTech_API.mTranslocator == true && tTileEntity instanceof codechicken.translocator.TileItemTranslocator) { + rConnect = 1; } if (rConnect == 0) { if (tTileEntity instanceof IInventory) { -- cgit