package eiteam.esteemedinnovation.transport.fluid.pipes;
import net.minecraft.block.properties.PropertyBool;
import net.minecraft.block.properties.PropertyEnum;
import net.minecraft.util.IStringSerializable;
public class FluidPipeBlockCapabilities {
public static final PropertyEnum<Mode> MODE = PropertyEnum.create("mode", Mode.class);
public static final PropertyBool NORTH = PropertyBool.create("north");
public static final PropertyBool EAST = PropertyBool.create("east");
public static final PropertyBool SOUTH = PropertyBool.create("south");
public static final PropertyBool WEST = PropertyBool.create("west");
public static final PropertyBool UP = PropertyBool.create("up");
public static final PropertyBool DOWN = PropertyBool.create("down");
public enum Mode implements IStringSerializable {
// Transfer mode can input and output only to and from pipes
TRANSFER,
// Input mode can can put fluids into anything, but only accept fluids from pipes
INPUT,
// Output mode can accept fluids from anything, but only put fluids into pipes
OUTPUT;
public static Mode[] META_LOOKUP = new Mode[] { TRANSFER, INPUT, OUTPUT };
@Override
public String getName() {
return toString().toLowerCase();
}
public Mode next() {
return META_LOOKUP[(ordinal() + 1) % META_LOOKUP.length];
}
}
}