1: Move energyUsage check out of updateSlaves

This commit is contained in:
Raoul Van den Berge
2016-07-02 19:23:29 +02:00
parent 1b0287af03
commit 505c500ccd

View File

@@ -170,8 +170,8 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
if (getType() == EnumControllerType.NORMAL) { if (getType() == EnumControllerType.NORMAL) {
if (!RefinedStorage.INSTANCE.controllerUsesRf) { if (!RefinedStorage.INSTANCE.controllerUsesRf) {
energy.setEnergyStored(energy.getMaxEnergyStored()); energy.setEnergyStored(energy.getMaxEnergyStored());
} else if (energy.getEnergyStored() - energyUsage >= 0) { } else if (energy.getEnergyStored() - getEnergyUsage() >= 0) {
energy.extractEnergy(energyUsage, false); energy.extractEnergy(getEnergyUsage(), false);
} else { } else {
energy.setEnergyStored(0); energy.setEnergyStored(0);
} }
@@ -345,7 +345,6 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
} }
private void updateSlaves() { private void updateSlaves() {
this.energyUsage = 0;
this.storages.clear(); this.storages.clear();
this.patterns.clear(); this.patterns.clear();
@@ -375,8 +374,6 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
} }
} }
} }
this.energyUsage += slave.getEnergyUsage();
} }
wirelessGridHandler.setRange(range); wirelessGridHandler.setRange(range);
@@ -616,6 +613,18 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
} }
public int getEnergyUsage() { public int getEnergyUsage() {
if (!worldObj.isRemote) {
int usage = 0;
for (INetworkSlave slave : slaves) {
if (slave.canUpdate()) {
usage += slave.getEnergyUsage();
}
}
return usage;
}
return energyUsage; return energyUsage;
} }
@@ -653,7 +662,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
@Override @Override
public void writeContainerData(ByteBuf buf) { public void writeContainerData(ByteBuf buf) {
buf.writeInt(energy.getEnergyStored()); buf.writeInt(energy.getEnergyStored());
buf.writeInt(energyUsage); buf.writeInt(getEnergyUsage());
buf.writeInt(redstoneMode.id); buf.writeInt(redstoneMode.id);