44 lines
1.2 KiB
Java
44 lines
1.2 KiB
Java
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();
|
|
}
|
|
}
|