fix bug where splitters reduce belt throughput, even if one side is blocked

This commit is contained in:
2026-06-14 14:03:50 +02:00
parent 1ea1cc59fb
commit 282ace4c11
2 changed files with 63 additions and 2 deletions

View File

@@ -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,
}
}