Merge pull request #2499 from git-async/mc1.18/dev

- Fixed Stockpile Switch prioritizing item inventories over fluid inventories
This commit is contained in:
simibubi 2022-01-08 13:52:59 +01:00 committed by GitHub
commit 96c5480dee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -78,6 +78,8 @@ public class StockpileSwitchTileEntity extends SmartTileEntity {
float totalSpace = 0;
observedInventory.findNewCapability();
observedTank.findNewCapability();
if (observedInventory.hasInventory() || observedTank.hasInventory()) {
if (observedInventory.hasInventory()) {
// Item inventory
IItemHandler inv = observedInventory.getInventory();
@ -92,9 +94,8 @@ public class StockpileSwitchTileEntity extends SmartTileEntity {
if (filtering.test(stackInSlot))
occupied += count * (1f / space);
}
}
} else {
observedTank.findNewCapability();
if (observedTank.hasInventory()) {
// Fluid inventory
IFluidHandler tank = observedTank.getInventory();
@ -109,7 +110,7 @@ public class StockpileSwitchTileEntity extends SmartTileEntity {
if (filtering.test(stackInSlot))
occupied += count * (1f / space);
}
}
} else {
// No compatible inventories found
if (currentLevel == -1)
@ -121,7 +122,6 @@ public class StockpileSwitchTileEntity extends SmartTileEntity {
scheduleBlockTick();
return;
}
}
float stockLevel = occupied / totalSpace;
if (currentLevel != stockLevel)