Examples of canProvideEnergy()


Examples of ic2.api.item.IElectricItem.canProvideEnergy()

      }
      else if(MekanismUtils.useIC2() && storer.inventory[slotID].getItem() instanceof IElectricItem)
      {
        IElectricItem item = (IElectricItem)storer.inventory[slotID].getItem();

        if(item.canProvideEnergy(storer.inventory[slotID]))
        {
          double gain = ElectricItem.manager.discharge(storer.inventory[slotID], (int)((storer.getMaxEnergy() - storer.getEnergy())*Mekanism.TO_IC2), 4, true, true, false)*Mekanism.FROM_IC2;
          storer.setEnergy(storer.getEnergy() + gain);
        }
      }
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

    // Decide if the item is a valid IC2 electrical item
    if (stack != null && stack.getItem() instanceof IElectricItem)
    {
      IElectricItem item = (IElectricItem)(stack.getItem());
      // Is the item appropriate for this slot?
      if (slot == Info.CB_SLOT_POWER_SOURCE && item.canProvideEnergy(stack) && item.getTier(stack) <= powerTier) return true;
      if (slot >= Info.CB_SLOT_CHARGING && slot < Info.CB_SLOT_CHARGING + 12 && item.getTier(stack) <= baseTier) return true;
      if (slot >= Info.CB_SLOT_UPGRADE && slot < Info.CB_SLOT_UPGRADE + 4 && (stack.isItemEqual(Info.ic2overclockerUpg) || stack.isItemEqual(Info.ic2transformerUpg) || stack.isItemEqual(Info.ic2storageUpg))) return true;
      if (slot == Info.CB_SLOT_INPUT && item.getTier(stack) <= baseTier) return true;
      if (slot == Info.CB_SLOT_OUTPUT) return true; // GUI won't allow placement of items here, but if the bench or an external machine does, it should at least let it sit there as long as it's an electrical item.
    }
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

      int emptyItemID = powerSource.getEmptyItemId(stack);
      int chargedItemID = powerSource.getChargedItemId(stack);

      if (stack.itemID == chargedItemID)
      {
        if (powerSource.getTier(stack) <= powerTier && powerSource.canProvideEnergy(stack))
        {
          int itemTransferLimit = powerSource.getTransferLimit(stack);
          int energyNeeded = adjustedStorage - currentEnergy;

          // Test if the amount of energy we have room for is greater than what the item can transfer per tick.
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

    if (stack != null && stack.getItem() instanceof IElectricItem)
    {
      IElectricItem item = (IElectricItem)(stack.getItem());
      // Is the item appropriate for this slot?
      if (slot == Info.BS_SLOT_OUTPUT) return true; // GUI won't allow placement of items here, but if the bench or an external machine does, it should at least let it sit there as long as it's an electrical item.
      if (item.canProvideEnergy(stack) && item.getTier(stack) <= powerTier)
      {
        if ((slot >= Info.BS_SLOT_POWER_START && slot < Info.BS_SLOT_POWER_START + 12) || slot == Info.BS_SLOT_INPUT) return true;
      }
    }
    return false;
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

      ItemStack stack = contents[i];
      if (stack != null && stack.getItem() instanceof IElectricItem && stack.stackSize == 1)
      {
        IElectricItem item = (IElectricItem)(stack.getItem());
        if (item.getTier(stack) <= powerTier && item.canProvideEnergy(stack))
        {
          int emptyItemID = item.getEmptyItemId(stack);
          int chargedItemID = item.getChargedItemId(stack);

          if (stack.itemID == chargedItemID)
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

    //System.out.println("aII: opMode " + opMode);
    ItemStack stack = contents[Info.BS_SLOT_INPUT];
    if (stack == null || !(stack.getItem() instanceof IElectricItem) || (opMode == 1 && hasEnoughItems)) return;

    IElectricItem item = (IElectricItem)stack.getItem();
    if (item.canProvideEnergy(stack))
    {
      // Input slot contains a power source. If possible, move one of it into the discharging area.
      for (int slot = Info.BS_SLOT_POWER_START; slot < Info.BS_SLOT_POWER_START + 12; ++slot)
      {
        if (contents[slot] == null)
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

      final ItemStack stack = contents[i];
      if (stack != null && stack.getItem() instanceof IElectricItem && stack.stackSize == 1)
      {
        final IElectricItem item = (IElectricItem)(stack.getItem());
        if (item.getTier(stack) <= powerTier && item.canProvideEnergy(stack) && stack.itemID == item.getChargedItemId(stack))
        {
          final int chargeReturned = ElectricItem.discharge(stack, Integer.MAX_VALUE, powerTier, true, true);
          if (chargeReturned > 0)
          {
            // Add the energy we received to our current energy level
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

  {
    // Decide if the item is a valid IC2 power source
    if (stack != null && stack.getItem() instanceof IElectricItem)
    {
      IElectricItem item = (IElectricItem)(stack.getItem());
      if (item.canProvideEnergy(stack) && item.getTier(stack) <= tier) return true;
    }
    return false;
  }
}
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

        if (value instanceof ItemStack) {
            final ItemStack stack = (ItemStack) value;
            final Item item = stack.getItem();
            if (item instanceof IElectricItem) {
                final IElectricItem electricItem = (IElectricItem) item;
                output.put("canProvideEnergy", electricItem.canProvideEnergy(stack));
                output.put("charge", ElectricItem.manager.getCharge(stack));
                output.put("maxCharge", electricItem.getMaxCharge(stack));
                output.put("tier", electricItem.getTier(stack));
                output.put("transferLimit", electricItem.getTransferLimit(stack));
            }
View Full Code Here

Examples of ic2.api.item.IElectricItem.canProvideEnergy()

    {
        if (itemStack.getItem() instanceof IElectricItem)
        {
            IElectricItem item = (IElectricItem) itemStack.getItem();

            if (item.canProvideEnergy(itemStack))
            {
                return (long) (ElectricItem.manager.discharge(itemStack, (int) Math.ceil(joules * CompatibilityType.INDUSTRIALCRAFT.ratio), 4, true, !doDischarge) * CompatibilityType.INDUSTRIALCRAFT.reciprocal_ratio);
            }
        }
        return 0;
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.