private void PopulateData()
        {
            // Generate our lists that will be used for our comboboxes.
            FeatNames = FeatModel.GetNames();
            Levels.Clear();
            for (int i = 1; i <= Constant.MaxLevels; i++)
            {
                if (i > Constant.NumHeroicLevels && MainScreen != ScreenType.Character)
                {
                    break;
                }
                Levels.Add(i.ToString());
            }

            //Get our model data and record count
            switch (MainScreen)
            {
            case ScreenType.Character:
            {
                CharacterFeatModel = CharacterBonusFeatModel.GetAll();
                RecordCount        = CharacterFeatModel.Count;
                break;
            }

            case ScreenType.Class:
            {
                ClassFeatModel = ClassBonusFeatModel.GetAll(MainRecordId);
                RecordCount    = ClassFeatModel.Count;
                break;
            }

            case ScreenType.Race:
            {
                RaceFeatModel = RaceBonusFeatModel.GetAll(MainRecordId);
                RecordCount   = RaceFeatModel.Count;
                break;
            }
            }

            //Set our tracking variables to false.
            HasDataChanged.Clear();
            RecordDeleted.Clear();
            for (int i = 0; i < RecordCount; i++)
            {
                HasDataChanged.Add(false);
                RecordDeleted.Add(false);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Load the data for this class
        /// </summary>
        private void LoadData()
        {
            List <ClassBonusFeatModel> bonusClassFeats;
            ClassModel model;

            model = new ClassModel();
            model.Initialize(Name);
            _classId                 = model.Id;
            _description             = model.Description;
            _hitDie                  = model.HitDie;
            _iconName                = model.ImageFilename;
            _startingDestinySphereId = model.StartingDestinySphereId;
            _skillPoints             = model.SkillPoints;
            _reincarnationPriorty    = model.ReincarnationPriority;
            _abbreviation            = model.Abbreviation;
            _sequence                = model.Sequence;
            //TODO: Are these need, if so then we need to add them to the ClassModel.
            //_pastLifeFeatId = Model.PastLifeFeatId;
            //_bonusSpellPointAbilityId = Model.BonusSpellPointAbilityId;
            //_bonusSpellDCAbilityId = -Model.BonusSpellDCAbilityId;
            //_bonusSpellsAtLevelOneAbilityId = Model.BonusSpellsAtLevelOneAbilityId;
            _maxSpellLevel = model.MaxSpellLevel;

            //Allowed Alignments
            _allowedAlignments = new List <Guid>();
            for (int i = 0; i < model.AllowedAlignments.Count; i++)
            {
                _allowedAlignments.Add(model.AllowedAlignments[i].Id);
            }

            //Class Level Details
            LevelData = Array.ConvertAll(model.LevelDetails, item => new ClassLevelDataClass(item));

            //Autogranted feats
            _autoGrantedFeats = new List <AutoGrantedFeatDataClass>();
            bonusClassFeats   = ClassBonusFeatModel.GetAll(model.Id);
            foreach (ClassBonusFeatModel cfModel in bonusClassFeats)
            {
                _autoGrantedFeats.Add(new AutoGrantedFeatDataClass(cfModel.FeatId, cfModel.Level, cfModel.HasPreRequirements));
            }

            IsLoaded = true;
        }