Examples of IAEPowerStorage


Examples of appeng.api.networking.energy.IAEPowerStorage

    double required = buffer() - extra;

    Iterator<IAEPowerStorage> it = requesters.iterator();
    while (required < maxRequired && it.hasNext())
    {
      IAEPowerStorage node = it.next();
      if ( node.getPowerFlow() != AccessRestriction.READ )
        required += Math.max( 0.0, node.getAEMaxPower() - node.getAECurrentPower() );
    }

    Iterator<IEnergyGridProvider> ix = energyGridProviders.iterator();
    while (required < maxRequired && ix.hasNext())
    {
      IEnergyGridProvider node = ix.next();
      required += node.getEnergyDemand( maxRequired - required, seen );
    }

    return required;
  }
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

    if ( mode == Actionable.SIMULATE )
    {
      Iterator<IAEPowerStorage> it = requesters.iterator();
      while (amt > 0 && it.hasNext())
      {
        IAEPowerStorage node = it.next();
        amt = node.injectAEPower( amt, Actionable.SIMULATE );
      }

      Iterator<IEnergyGridProvider> i = energyGridProviders.iterator();
      while (amt > 0 && i.hasNext())
        amt = i.next().injectAEPower( amt, mode, seen );
    }
    else
    {
      tickInjectionPerTick += amt - ignore;
      // totalInjectionPastTicks[0] += i;

      while (amt > 0 && !requesters.isEmpty())
      {
        IAEPowerStorage node = getFirstRequester();

        amt = node.injectAEPower( amt, Actionable.MODULATE );
        if ( amt > 0 )
        {
          requesters.remove( node );
          lastRequester = null;
        }
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

    drainPerTick += gridNode.previousDraw;

    // power storage
    if ( machine instanceof IAEPowerStorage )
    {
      IAEPowerStorage ps = (IAEPowerStorage) machine;
      if ( ps.isAEPublicPowerStorage() )
      {
        double max = ps.getAEMaxPower();
        double current = ps.getAECurrentPower();

        if ( ps.getPowerFlow() != AccessRestriction.WRITE )
        {
          globalMaxPower += ps.getAEMaxPower();
        }

        if ( current > 0 && ps.getPowerFlow() != AccessRestriction.WRITE )
        {
          globalAvailablePower += current;
          providers.add( ps );
        }

        if ( current < max && ps.getPowerFlow() != AccessRestriction.READ )
          requesters.add( ps );
      }
    }

    if ( machine instanceof IEnergyWatcherHost )
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

    drainPerTick -= gridNode.previousDraw;

    // power storage.
    if ( machine instanceof IAEPowerStorage )
    {
      IAEPowerStorage ps = (IAEPowerStorage) machine;
      if ( ps.isAEPublicPowerStorage() )
      {
        if ( ps.getPowerFlow() != AccessRestriction.WRITE )
        {
          globalMaxPower -= ps.getAEMaxPower();
          globalAvailablePower -= ps.getAECurrentPower();
        }

        if ( lastProvider == machine )
          lastProvider = null;
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

  private double doExtract(double extractedPower, double amt)
  {
    while (extractedPower < amt && !providers.isEmpty())
    {
      IAEPowerStorage node = getFirstProvider();

      double req = amt - extractedPower;
      double newPower = node.extractAEPower( req, Actionable.MODULATE, PowerMultiplier.ONE );
      extractedPower += newPower;

      if ( newPower < req )
      {
        providers.remove( node );
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

  {
    Iterator<IAEPowerStorage> it = providers.iterator();

    while (extractedPower < amt && it.hasNext())
    {
      IAEPowerStorage node = it.next();

      double req = amt - extractedPower;
      double newPower = node.extractAEPower( req, Actionable.SIMULATE, PowerMultiplier.ONE );
      extractedPower += newPower;
    }

    return extractedPower;
  }
View Full Code Here

Examples of appeng.api.networking.energy.IAEPowerStorage

        }
      }

      if ( te instanceof IAEPowerStorage )
      {
        IAEPowerStorage ps = (IAEPowerStorage) te;
        outputMsg( player, "Energy: " + ps.getAECurrentPower() + " / " + ps.getAEMaxPower() );

        if ( te instanceof IGridHost )
        {
          IGridNode node = ((IGridHost) te).getGridNode( ForgeDirection.getOrientation( side ) );
          if ( node != null && node.getGrid() != null )
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.