public void CopyFrom(VesselResourceInfo resource)
 {
     PartFlightId = resource.PartFlightId;
     ResourceName = resource.ResourceName;
     Amount       = resource.Amount;
     FlowState    = resource.FlowState;
 }
        internal override void InternalDeserialize(NetIncomingMessage lidgrenMsg)
        {
            base.InternalDeserialize(lidgrenMsg);

            ResourcesCount = lidgrenMsg.ReadInt32();
            if (Resources.Length < ResourcesCount)
            {
                Resources = new VesselResourceInfo[ResourcesCount];
            }

            for (var i = 0; i < ResourcesCount; i++)
            {
                if (Resources[i] == null)
                {
                    Resources[i] = new VesselResourceInfo();
                }

                Resources[i].Deserialize(lidgrenMsg);
            }
        }
 public VesselResourceInfo(VesselResourceInfo resource) => CopyFrom(resource);