Package net.minecraftforge.fluids

Examples of net.minecraftforge.fluids.FluidStack


      experience = 0;
      experienceLevel = 0;
      experienceTotal = 0;
      addExperience(newXp);     
    }       
    return new FluidStack(EnderIO.fluidXpJuice, canDrain);
  }
View Full Code Here


    return fluid != null && fluid.getID() == EnderIO.fluidXpJuice.getID();
  }
 
  public FluidTankInfo[] getTankInfo(ForgeDirection from) {   
    return new FluidTankInfo[] {
      new FluidTankInfo(new FluidStack(EnderIO.fluidXpJuice, getFluidAmount()), getMaxFluidAmount()) 
    };
  }
View Full Code Here

      FluidTankInfo[] infos = target.getTankInfo(dir.getOpposite());
      if(infos != null) {
        for (FluidTankInfo info : infos) {
          if(info.fluid != null && info.fluid.amount > 0) {
            if(canFill(dir, info.fluid.getFluid())) {
              FluidStack canPull = info.fluid.copy();
              canPull.amount = Math.min(IO_MB_TICK, canPull.amount);
              FluidStack drained = target.drain(dir.getOpposite(), canPull, false);
              if(drained != null && drained.amount > 0) {
                int filled = fill(dir, drained, false);
                if(filled > 0) {
                  drained = target.drain(dir.getOpposite(), filled, true);
                  fill(dir, drained, true);
View Full Code Here

    if(ticksRemaingFuel <= 0) {
      curFuel = FluidFuelRegister.instance.getFuel(getFuelTank().getFluid());
      if(curFuel == null) {
        return false;
      }
      FluidStack drained = getFuelTank().drain(100, true);
      if(drained == null) {
        return false;
      }
      ticksRemaingFuel = getNumTicksPerMbFuel(curFuel) * drained.amount;
     
      res = true;
      tanksDirty = true;
    } else if(curFuel == null) {
      curFuel = FluidFuelRegister.instance.getFuel(getFuelTank().getFluid());
      if(curFuel == null) {
        return false;
      }
    }

    ticksRemaingCoolant--;
    if(ticksRemaingCoolant <= 0) {
      updateCoolantFromTank();
      if(curCoolant == null) {
        return false;
      }
      FluidStack drained = getCoolantTank().drain(100, true);
      if(drained == null) {
        return false;
      }
      ticksRemaingCoolant = getNumTicksPerMbCoolant(curCoolant, curFuel) * drained.amount;
      res = true;
View Full Code Here

  @Override
  protected void renderConduit(IIcon tex, IConduit conduit, CollidableComponent component, float brightness) {
    if(isNSEWUD(component.dir)) {
      LiquidConduit lc = (LiquidConduit) conduit;
      FluidStack fluid = lc.getFluidType();
      if(fluid != null) {
        renderFluidOutline(component, fluid);
      }
      BoundingBox[] cubes = toCubes(component.bound);
      for (BoundingBox cube : cubes) {
View Full Code Here

    if(doDrain) {
      addAmount(-used);
    }

    FluidStack drained = new FluidStack(fluid.fluidID, used);

    if(fluid.amount < 0) {
      fluid.amount = 0;
    }
    return drained;
View Full Code Here

    return nbt;
  }

  public IFluidTank readFromNBT(NBTTagCompound nbt) {
    if(!nbt.hasKey("emptyTank")) {
      FluidStack liquid = FluidStack.loadFluidStackFromNBT(nbt);
      if(liquid != null) {
        setLiquid(liquid);
      }
    }
    return this;
View Full Code Here

    super.renderConduit(tex, conduit, component, brightness);

    if(isNSEWUD(component.dir)) {
      AdvancedLiquidConduit lc = (AdvancedLiquidConduit) conduit;

      FluidStack fluid = lc.getFluidType();
      IIcon texture = null;
      if(fluid != null) {
        texture = fluid.getFluid().getStillIcon();
        if(texture == null) {
          texture = fluid.getFluid().getIcon();
        }
      }

      if(texture == null) {
        texture = lc.getNotSetEdgeTexture();
View Full Code Here

            if(!(n instanceof AbstractTankConduit)) {
              return false;
            }
            AbstractTankConduit neighbour = (AbstractTankConduit) n;
            if(neighbour.getFluidType() == null || getFluidType() == null) {
              FluidStack type = getFluidType();
              type = type != null ? type : neighbour.getFluidType();
              neighbour.setFluidTypeOnNetwork(neighbour, type);
              setFluidTypeOnNetwork(this, type);
            }
            return ConduitUtil.joinConduits(this, faceHit);
          } else if(containsExternalConnection(connDir)) {
            // Toggle extraction mode
            setConnectionMode(connDir, getNextConnectionMode(connDir));
          } else if(containsConduitConnection(connDir)) {
            FluidStack curFluidType = null;
            if(getTankNetwork() != null) {
              curFluidType = getTankNetwork().getFluidType();
            }
            ConduitUtil.disconectConduits(this, connDir);
            setFluidType(curFluidType);

          }
        }
      }
      return true;

    } else if(player.getCurrentEquippedItem().getItem() == Items.bucket) {

      if(!getBundle().getEntity().getWorldObj().isRemote) {
        long curTick = getBundle().getEntity().getWorldObj().getTotalWorldTime();
        if(curTick - lastEmptyTick < 20) {
          numEmptyEvents++;
        } else {
          numEmptyEvents = 1;
        }
        lastEmptyTick = curTick;

        if(numEmptyEvents < 2) {
          if(network.fluidTypeLocked) {
            network.setFluidTypeLocked(false);
            numEmptyEvents = 0;
            player.addChatComponentMessage(new ChatComponentText(Lang.localize("itemLiquidConduit.unlockedType")));
          }
        } else if(network != null) {
          network.setFluidType(null);
          numEmptyEvents = 0;
        }
      }

      return true;
    } else {

      FluidStack fluid = FluidContainerRegistry.getFluidForFilledItem(player.getCurrentEquippedItem());
      if(fluid != null) {
        if(!getBundle().getEntity().getWorldObj().isRemote) {
          if(network != null
              && (network.getFluidType() == null || network.getTotalVolume() < 500 || LiquidConduitNetwork.areFluidsCompatable(getFluidType(), fluid))) {
            network.setFluidType(fluid);
View Full Code Here

  public ConduitTank getTank() {
    return tank;
  }

  public FluidStack getFluidType() {
    FluidStack result = null;
    if(getTankNetwork() != null) {
      result = getTankNetwork().getFluidType();
    }
    if(result == null) {
      result = tank.getFluid();
View Full Code Here

TOP

Related Classes of net.minecraftforge.fluids.FluidStack

Copyright © 2018 www.massapicom. 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.