Plug-in to introduce pipes into the micra.
Normal pipe
Golden Pipe
Extraction Pipe
Colored pipes
Pipes can be used to put things in the kamado.
craft pipe
Official commentary is here.
What is a Direct setting?
nishio: Wow, so whether or not the items flowing through the pipe separate when they come to a branch of the pipe is determined by the attributes of the sucking pipe when it is sucked out of the chest? Really?
nishio: No, I think it's "send all pipes to the 0th one except the direction they came from" depending on the option, and that 0th one is determined by the order of the enum representing the direction. I think that the behavior changes depending on the direction of the pipe.
nishio: yes correct, in the left arrangement the item goes straight into the chest by the torch, in the right arrangement the item turns right and enters the chest with the torch. This is because the east-west pipe has priority over the north-south pipe.
nishio: Given this, automatic sorting chests can be realized with just this. Since the front-back direction of the screen is east-west, priority is given to the chests on the left, and they behave in the order of "if it fits in that chest, put it in, if not, go to the pipe on the right".
In addition, the top and bottom have the lowest priority, so if they are stacked vertically, they can be oriented freely on all four sides.
Explanation for those who understand Java
if (pipeItem.getExtractMode() == ExtractMode.DIRECT) {
splitMap.put(weightsDirectionList.get(0), item.getAmount());
}
else {
protected Map<TPDirection, Integer> calculateItemDistribution(PipeItem pipeItem, TPDirection movingDir, List<TPDirection> dirs, TransportPipes transportPipes) {
Map<TPDirection, Integer> absWeights = new HashMap<>();
dirs.stream().filter(dir -> !dir.equals(movingDir.getOpposite())).forEach(dir -> absWeights.put(dir, 1));
return itemDistributor.splitPipeItem(pipeItem, absWeights, this);
}
public enum TPDirection {
EAST(1, 0, 0, BlockFace.EAST, LangConf.Key.DIRECTIONS_EAST.get()),
WEST(-1, 0, 0, BlockFace.WEST, LangConf.Key.DIRECTIONS_WEST.get()),
SOUTH(0, 0, 1, BlockFace.SOUTH, LangConf.Key.DIRECTIONS_SOUTH.get()),
NORTH(0, 0, -1, BlockFace.NORTH, LangConf.Key.DIRECTIONS_NORTH.get()),
UP(0, 1, 0, BlockFace.UP, LangConf.Key.DIRECTIONS_UP.get()),
DOWN(0, -1, 0, BlockFace.DOWN, LangConf.Key.DIRECTIONS_DOWN.get());
This page is auto-translated from /nishio/Transport-Pipes using DeepL. If you looks something interesting but the auto-translated English is not good enough to understand it, feel free to let me know at @nishio_en. I'm very happy to spread my thought to non-Japanese readers.