public BodyScanPlanet(XScanClass scan, SystemBody sysbody, int sysbodyid, int id = 0) : base(scan, sysbody, sysbodyid, id)
        {
            XScanPlanet pscan = scan.Planet;

            PlanetClassId    = pscan.PlanetClassId;
            MassEM           = pscan.MassEM;
            SurfaceGravity   = pscan.SurfaceGravity;
            VolcanismId      = pscan.VolcanismId == 0 ? (byte?)null : pscan.VolcanismId;
            VolcanismMinor   = pscan.VolcanismMinor;
            VolcanismMajor   = pscan.VolcanismMajor;
            IsLandable       = pscan.HasLandable ? pscan.IsLandable : (bool?)null;
            HasComposition   = pscan.HasComposition;
            CompositionMetal = pscan.CompositionMetal;
            CompositionRock  = pscan.CompositionRock;
            CompositionIce   = pscan.CompositionIce;

            if (pscan.HasAtmosphere)
            {
                Atmosphere = new BodyScanAtmosphere(scan.Atmosphere, id);
            }

            if (pscan.HasMaterials)
            {
                Materials = new BodyScanMaterials(scan.Materials, id);
            }
        }
 public bool Equals(BodyScanMaterials scan)
 {
     return(this.MaterialCarbon == scan.MaterialCarbon &&
            this.MaterialIron == scan.MaterialIron &&
            this.MaterialNickel == scan.MaterialNickel &&
            this.MaterialPhosphorus == scan.MaterialPhosphorus &&
            this.MaterialSulphur == scan.MaterialSulphur &&
            this.Material1Id == scan.Material1Id &&
            this.Material1Amt == scan.Material1Amt &&
            this.Material2Id == scan.Material2Id &&
            this.Material2Amt == scan.Material2Amt &&
            this.Material3Id == scan.Material3Id &&
            this.Material3Amt == scan.Material3Amt &&
            this.Material4Id == scan.Material4Id &&
            this.Material4Amt == scan.Material4Amt &&
            this.Material5Id == scan.Material5Id &&
            this.Material5Amt == scan.Material5Amt &&
            this.Material6Id == scan.Material6Id &&
            this.Material6Amt == scan.Material6Amt);
 }