@Override
  public void readFromNBT(NBTTagCompound nbtTags) {
    super.readFromNBT(nbtTags);

    if (nbtTags.hasKey("fluidTank")) {
      fluidTank.readFromNBT(nbtTags.getCompoundTag("fluidTank"));
    }

    if (nbtTags.hasKey("recurringNodes")) {
      NBTTagList tagList = nbtTags.getTagList("recurringNodes");

      for (int i = 0; i < tagList.tagCount(); i++) {
        recurringNodes.add(Object3D.read((NBTTagCompound) tagList.tagAt(i)));
      }
    }

    if (nbtTags.hasKey("cleaningNodes")) {
      NBTTagList tagList = nbtTags.getTagList("cleaningNodes");

      for (int i = 0; i < tagList.tagCount(); i++) {
        cleaningNodes.add(Object3D.read((NBTTagCompound) tagList.tagAt(i)));
      }
    }
  }