Ejemplo n.º 1
0
        /// <summary>
        /// Constructor at character's initialization time
        /// </summary>
        /// <param name="character"></param>
        /// <param name="src"></param>
        /// <param name="certClass"></param>
        internal Certificate(Character character, StaticCertificate src, CertificateClass certClass)
        {
            m_staticData = src;
            m_class      = certClass;
            m_character  = character;
            m_status     = CertificateStatus.Untrained;

            m_prereqSkills       = new List <SkillLevel>(src.PrerequisiteSkills.ToCharacter(character));
            m_prereqCertificates = new List <Certificate>();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Recursive method to generate treenodes for tvCertList.
        /// </summary>
        /// <param name="certificate">An EntityRecommendedCertificate object</param>
        /// <returns></returns>
        private TreeNode GetCertNode(StaticCertificate certificate)
        {
            var         character = (Character)m_plan.Character;
            Certificate cert      = character.Certificates[certificate.ID];

            TreeNode node = new TreeNode(cert.ToString());

            node.Tag = cert;

            // Generate child certificate nodes if required
            foreach (StaticCertificate childCert in cert.StaticData.PrerequisiteCertificates)
            {
                node.Nodes.Add(GetCertNode(childCert));
            }

            // Generate prerequisites skill nodes if required
            foreach (StaticSkillLevel prereq in cert.StaticData.PrerequisiteSkills)
            {
                node.Nodes.Add(GetSkillNode(prereq));
            }

            return(node);
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Adds the provided certificate's prerequisites to the plan
 /// </summary>
 /// <param name="certificate"></param>
 /// <param name="confirmationCallback">A callback to request the user a confirmation</param>
 public IPlanOperation TryPlanTo(StaticCertificate certificate)
 {
     return(TryAddSet(certificate.AllTopPrerequisiteSkills, certificate.ToString()));
 }