fix bug where splitters reduce belt throughput, even if one side is blocked
This commit is contained in:
@@ -756,13 +756,13 @@ void BeltSystem::routeSplitterItems()
|
||||
else if (preferA && !st.frontB)
|
||||
{
|
||||
// Preferred (A) is full — fall back to B; nextOutputIsA stays.
|
||||
st.frontB = BeltItemSlot{item, 0.0};
|
||||
st.frontB = BeltItemSlot{item, 0.75};
|
||||
routed = true;
|
||||
}
|
||||
else if (!preferA && !st.frontA)
|
||||
{
|
||||
// Preferred (B) is full — fall back to A; nextOutputIsA stays.
|
||||
st.frontA = BeltItemSlot{item, 0.0};
|
||||
st.frontA = BeltItemSlot{item, 0.75};
|
||||
routed = true;
|
||||
}
|
||||
// else both fronts occupied — back stays.
|
||||
@@ -963,3 +963,4 @@ void BeltSystem::forEachVisualItem(QRect viewportTiles,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user