Exemplo n.º 1
0
        /// <summary>
        /// Constructor from XML
        /// </summary>
        /// <param name="certClass"></param>
        /// <param name="element"></param>
        internal StaticCertificate(StaticCertificateClass certClass, SerializableCertificate src)
        {
            m_class = certClass;

            m_id          = src.ID;
            m_grade       = src.Grade;
            m_description = src.Description;

            // Recommendations
            if (src.Recommendations != null)
            {
                foreach (var recommendation in src.Recommendations)
                {
                    var ship = StaticItems.Ships.AllItems.FirstOrDefault(x => x.Name == recommendation.Ship) as Ship;
                    if (ship != null)
                    {
                        ship.Recommendations.Add(this);
                        m_recommendations.Add(ship);
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Constructor from XML.
        /// </summary>
        /// <param name="certClass"></param>
        /// <param name="src"></param>
        internal StaticCertificate(StaticCertificateClass certClass, SerializableCertificate src)
        {
            ID          = src.ID;
            Description = src.Description;
            Class       = certClass;
            Grades      = new Dictionary <CertificateGrade, List <StaticSkillLevel> >();

            // Recommendations
            Recommendations = new StaticRecommendations <Item>();
            if (src.Recommendations == null || StaticItems.ShipsMarketGroup == null)
            {
                return;
            }

            foreach (Ship ship in src.Recommendations
                     .Select(recommendation => StaticItems.ShipsMarketGroup.AllItems.OfType <Ship>()
                             .FirstOrDefault(item => item.Name == recommendation.ShipName))
                     .Where(ship => ship != null))
            {
                ship.Recommendations.Add(this);
                Recommendations.Add(ship);
            }
        }