takeTopStack in the transporters
Lilylicious opened this issue ยท 2 comments
I've been working on an ore processing system using logistical transporters and sorters to move items around.
The issue I'm encountering is this: If an inventory contains a matching filtered item, it takes the last one available due to takeTopStack(I think). This isn't what I'd like it to do, because it ignores matching items that are before a different matching item.
Example: Inventory contains Iron(64), gold(64), iron(64). The destination contains gold. Even if there's space in the destination, it will not take more gold from the inventory until the destination can accept iron. Then it does 64 iron, then 64 gold, then 64 iron.
What I'd like it to do: If the inventory can't accept the matched item (iron in the example), check the next one. If it can, send it (gold). That way, it processes all the gold, then all the iron.
Another option that would be nice is to invert it, take the first item and move forward like that. This way you process things in the order they come in, instead of reverse.
(This is in 8.1.5.246)
To summarize, something like (pseudocode) IF(destination.canAccept){send}ELSE(filter.keepLooking) is what I'd like to see.
Fixed in development as of d5f5565