@Override
  public void onReceivePacket(int packetID, ByteArrayDataInput dataStream) throws IOException {
    super.onReceivePacket(packetID, dataStream);

    if (this.worldObj.isRemote) {
      if (packetID == TilePacketType.DESCRIPTION.ordinal()
          || packetID == TilePacketType.INVENTORY.ordinal()) {
        this.readFromNBT(PacketManager.readNBTTagCompound(dataStream));
      }
    }
  }
  @Override
  public void onReceivePacket(int packetID, ByteArrayDataInput dataStream) throws IOException {
    super.onReceivePacket(packetID, dataStream);

    if (packetID == TilePacketType.DESCRIPTION.ordinal()) {
      this.isInversed = dataStream.readBoolean();
      this.wattsReceived = dataStream.readDouble();
      // this.processTime = dataStream.readInt();
    } else if (packetID == TilePacketType.TOGGLE_MODE.ordinal()) {
      this.isInversed = !this.isInversed;
    }
  }