blob: 76525a36a6914b7523542da514627e4777722bc4 [file] [log] [blame] [raw]
package li.cil.oc.server.component
import li.cil.oc.api.Network
import li.cil.oc.api.driver.Container
import li.cil.oc.api.network.Visibility
import li.cil.oc.common.component.ManagedComponent
import net.minecraft.nbt.NBTTagCompound
import net.minecraftforge.fluids.{FluidStack, FluidTank, IFluidTank}
class UpgradeTank(val owner: Container, val capacity: Int) extends ManagedComponent with IFluidTank {
val node = Network.newNode(this, Visibility.None).create()
val tank = new FluidTank(capacity)
override def load(nbt: NBTTagCompound) {
super.load(nbt)
tank.readFromNBT(nbt)
}
override def save(nbt: NBTTagCompound) {
super.save(nbt)
tank.writeToNBT(nbt)
}
// ----------------------------------------------------------------------- //
override def getFluid = tank.getFluid
override def getFluidAmount = tank.getFluidAmount
override def getCapacity = tank.getCapacity
override def getInfo = tank.getInfo
override def fill(stack: FluidStack, doFill: Boolean) = tank.fill(stack, doFill)
override def drain(maxDrain: Int, doDrain: Boolean) = tank.drain(maxDrain, doDrain)
}