Fixed Infinite Power Bug with Energy Acceptor.

This commit is contained in:
AlgorithmX2
2014-03-11 20:54:04 -05:00
parent 08df0f8b06
commit ca46b3e2d9
2 changed files with 35 additions and 13 deletions
+13 -10
View File
@@ -270,19 +270,22 @@ public class EnergyGridCache implements IEnergyGrid
if ( machine instanceof IAEPowerStorage )
{
IAEPowerStorage ps = (IAEPowerStorage) machine;
if ( ps.getPowerFlow() != AccessRestriction.WRITE )
globalAvailablePower -= ps.getAECurrentPower();
if ( ps.isAEPublicPowerStorage() )
{
if ( ps.getPowerFlow() != AccessRestriction.WRITE )
globalAvailablePower -= ps.getAECurrentPower();
if ( lastProvider == machine )
lastProvider = null;
if ( lastProvider == machine )
lastProvider = null;
if ( lastRequestor == machine )
lastRequestor = null;
if ( lastRequestor == machine )
lastRequestor = null;
globalMaxPower -= ps.getAEMaxPower();
globalMaxPower -= ps.getAEMaxPower();
providers.remove( machine );
requesters.remove( machine );
providers.remove( machine );
requesters.remove( machine );
}
}
if ( machine instanceof IStackWatcherHost )
@@ -383,7 +386,7 @@ public class EnergyGridCache implements IEnergyGrid
if ( availableTicksSinceUpdate > 90 )
refreshPower();
return globalAvailablePower;
return Math.max( 0.0, globalAvailablePower );
}
@Override