package resonantinduction.core.tilenetwork; import net.minecraftforge.common.ForgeDirection; /** * Used on tiles that want control over what can connect to there device. It is suggest that other * interfaces for connection be routed threw this to reduce the need to change things * * @author DarkGuardsman */ public interface ITileConnector { /** Can this tile connect on the given side */ public boolean canTileConnect(Connection type, ForgeDirection dir); /** Types of connections */ public static enum Connection { /** Energy from BC, UE, IC2 */ Eletricity(), /** Fluids from anything including BC pipes, DM pipes, Mek pipes */ FLUIDS(), /** Force mainly from rotating rods */ FORCE(), /** Hydraulic pressure from DM pipe */ FLUID_PRESSURE(), AIR_PRESSURE(), /** Item pipe */ ITEMS(), /** Data line input */ DATA(), /** Another tile entity */ TILE(), /** Network of tile entities */ NETWORK(), /** Thermal connection */ HEAT(), /** Wire containing several wires of unknown color */ MULTI_WIRE(), /** Bundle of pipes containing several colored pipes */ MULTI_PIPE(), /** Device that contains several networks that can be of any type */ MULTI_NETWORK(); } }