Make DualInterface behaviour correspond to sideless setting

This commit is contained in:
Matej Dipčár committed 2022-12-03 23:28:20 +01:00
1 parent 05485ddaa6
commit d712c01657
2 files changed
+12 -1

No files matched your search

@@ -84,6 +84,9 @@ public class GuiFluidInterface extends AEBaseGui {
mc.getTextureManager().bindTexture(TextureMap.locationBlocksTexture);
for (int i = 0; i < 6; i++) {
if (!isPart()) {
fontRendererObj.drawString(dirName(i), TANK_X + i * TANK_X_OFF + 5, 22, 0x404040);
}
renderFluidIntoGui(TANK_X + i * TANK_X_OFF, TANK_Y, TANK_WIDTH, TANK_HEIGHT,
fluidInv.getFluidInSlot(i), fluidInv.getTankInfo(ForgeDirection.UNKNOWN)[i].capacity);
}
@@ -10,6 +10,7 @@ import appeng.api.networking.events.MENetworkPowerStatusChange;
import appeng.api.networking.ticking.TickRateModulation;
import appeng.api.networking.ticking.TickingRequest;
import appeng.api.storage.data.IAEFluidStack;
import appeng.api.util.IConfigManager;
import appeng.tile.TileEvent;
import appeng.tile.events.TileEventType;
import appeng.tile.inventory.AppEngInternalAEInventory;
@@ -43,9 +44,16 @@ public class TileFluidInterface extends TileInterface implements IFluidHandler,
}
private final DualityFluidInterface fluidDuality = new DualityFluidInterface(this.getProxy(), this) {
private final IConfigManager dualityConfigManager = getInterfaceDuality().getConfigManager();
@Override
public FluidStack drain(ForgeDirection from, int maxDrain, boolean doDrain) {
return this.getTanks().drain(from, maxDrain, doDrain);
SidelessMode mode = (SidelessMode) dualityConfigManager.getSetting(Settings.SIDELESS_MODE);
if (mode == SidelessMode.SIDELESS) {
return this.getTanks().drain(from, maxDrain, doDrain);
}
return this.getTanks().drain(from.ordinal(), maxDrain, doDrain);
}
};
private final AppEngInternalAEInventory config = new AppEngInternalAEInventory(this, 6);