protected override Other ConvertRowToModel(int generatedId, OtherRow row) { Other model = new Other(); model.Id = generatedId; model.Description = row.OtherName; model.CharacterName = row.Character; model.SourceName = row.Source; model.SourceType = null; //fill in during merge phase model.SourceId = 0; //fill in during merge phase model.ImagePath = row.ImagePath; model.Name = row.OtherName; model.AbilityType = _abilityTypeConverter.ConvertFromNameToId(row.Type); model.TargetType = _targetTypeConverter.ConvertFromNameToId(row.Target); model.DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula); model.Multiplier = _doubleConverter.ConvertFromStringToDouble(row.Multiplier); model.Elements = _elementConverter.ConvertFromCommaSeparatedListToIds(row.Element); model.CastTime = _doubleConverter.ConvertFromStringToDouble(row.Time); model.Effects = row.Effects; model.IsCounterable = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter); model.AutoTargetType = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget); model.SoulBreakPointsGained = _intConverter.ConvertFromStringToInt(row.SB); model.School = _schoolConverter.ConvertFromNameToId(row.School); model.EnlirId = row.ID; model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.IsChecked = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked); _logger.LogDebug("Converted OtherRow to Other: {Id} - {Description}", model.Id, model.Description); return(model); }
protected override SynchroCommand ConvertRowToModel(int generatedId, SynchroCommandRow row) { SynchroCommand model = new SynchroCommand(); model.Id = generatedId; model.Description = $"{row.Source} - {row.CommandName}"; model.CommandName = row.CommandName; model.JapaneseName = row.JapaneseName; model.CharacterName = row.Character; model.CharacterId = 0; //fill in during merge phase model.SourceSoulBreakName = row.Source; model.SourceSoulBreakId = 0; //fill in during merge phase model.SbVer = row.SbVer; model.ImagePath = row.ImagePath; model.SynchroAbilitySlot = _intConverter.ConvertFromStringToInt(row.SynchroAbilitySlot); model.SynchroCondition = row.SynchroCondition; model.SynchroConditionId = _intConverter.ConvertFromStringToInt(row.SynchroConditionId); model.AbilityType = _abilityTypeConverter.ConvertFromNameToId(row.Type); model.TargetType = _targetTypeConverter.ConvertFromNameToId(row.Target); model.AutoTargetType = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget); model.DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula); model.Multiplier = _doubleConverter.ConvertFromStringToDouble(row.Multiplier); model.Elements = _elementConverter.ConvertFromCommaSeparatedListToIds(row.Element); model.CastTime = _doubleConverter.ConvertFromStringToDouble(row.Time); model.Effects = row.Effects; model.IsCounterable = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter); model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.IsChecked = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked); model.SoulBreakPointsGained = _intConverter.ConvertFromStringToInt(row.SB); model.School = _schoolConverter.ConvertFromNameToId(row.School); model.EnlirId = row.ID; _logger.LogDebug("Converted SynchroCommandRow to SynchroCommand: {Id} - {Description}", model.Id, model.Description); return(model); }
protected override Status ConvertRowToModel(int generatedId, StatusRow row) { Status model = new Status(); model.Id = generatedId; model.Description = row.CommonName; model.StatusId = _intConverter.ConvertFromStringToInt(row.ID); model.CommonName = row.CommonName; model.Effects = row.Effects; model.DefaultDuration = _intConverter.ConvertFromStringToInt(row.DefaultDuration); model.MindModifier = _percentConverter.ConvertFromStringToDouble(row.MindModifier.TrimStart(PlusMinusCharArray)); model.ExclusiveStatuses = ConvertCommaSeparatedStringToList(row.ExclusiveStatus); model.CodedName = row.CodedName; model.Notes = row.Notes.Replace(DashCharacter, String.Empty); _logger.LogDebug("Converted StatusRow to Status: {Id} - {Description}", model.Id, model.Description); return(model); }
protected override Dungeon ConvertRowToModel(int generatedId, DungeonRow row) { Dungeon model = new Dungeon(); //IModelDescriptor model.Id = generatedId; model.Description = row.DungeonName; model.Realm = _realmConverter.ConvertFromNameToId(row.Realm); model.DungeonName = row.DungeonName; model.IntroducingEvent = row.Update; model.IntroducingEventId = 0; //fill in during merge stage //classic model.StaminaClassic = _intConverter.ConvertFromStringToInt(row.StaminaClassic); model.DifficultyClassic = _intConverter.ConvertFromStringToInt(row.DifficultyClassic); model.CompletionGilClassic = _intConverter.ConvertFromStringToInt(row.CompletionClassic.TrimEnd(GilCharArray)); model.FirstTimeRewardsClassic = ExtractItemWithCountAndStarLevel(row.FirstTimeClassic); model.MasteryRewardsClassic = ExtractItemWithCountAndStarLevel(row.MasteryClassic); //elite model.StaminaElite = _intConverter.ConvertFromStringToInt(row.StaminaElite); model.DifficultyElite = _intConverter.ConvertFromStringToInt(row.DifficultyElite); model.CompletionGilElite = _intConverter.ConvertFromStringToInt(row.CompletionElite.TrimEnd(GilCharArray)); model.FirstTimeRewardsElite = ExtractItemWithCountAndStarLevel(row.FirstTimeElite); model.MasteryRewardsElite = ExtractItemWithCountAndStarLevel(row.MasteryElite); _logger.LogDebug("Converted DungeonRow to Dungeon: {Id} - {Description}", model.Id, model.Description); return(model); }
protected override SoulBreak ConvertRowToModel(int generatedId, SoulBreakRow row) { SoulBreak model = new SoulBreak(); model.Id = generatedId; model.Description = row.SoulBreakName; model.SoulBreakName = row.SoulBreakName; model.JapaneseName = row.JapaneseName; model.ImagePath = row.ImagePath; model.CharacterName = row.Character.Replace(DashCharacter, String.Empty);; model.CharacterId = 0; //fill in during merge phase model.RelicName = row.Relic; model.RelicId = 0; //fill in during merge phase model.Realm = _realmConverter.ConvertFromNameToId(row.Realm); model.Commands = null; //fill in during merge phase model.Statuses = null; //fill in during merge phase model.OtherEffects = null; //fill in during merge phase model.SbVer = row.SbVer; model.AbilityType = _abilityTypeConverter.ConvertFromNameToId(row.Type); model.TargetType = _targetTypeConverter.ConvertFromNameToId(row.Target); model.AutoTargetType = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget); model.DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula); model.Multiplier = _doubleConverter.ConvertFromStringToDouble(row.Multiplier); model.Elements = _elementConverter.ConvertFromCommaSeparatedListToIds(row.Element); model.CastTime = _doubleConverter.ConvertFromStringToDouble(row.Time); model.Effects = row.Effects; model.IsCounterable = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter); model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.IsChecked = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked); model.SoulBreakPointsRequired = _intConverter.ConvertFromStringToInt(row.Points); model.SoulBreakTier = _soulBreakTierConverter.ConvertFromNameToId(row.Tier); model.MasteryBonus = row.Master; model.Anima = row.Anima; model.EnlirId = row.ID; _logger.LogDebug("Converted SoulBreakRow to SoulBreak: {Id} - {Description}", model.Id, model.Description); return(model); }
private IEnumerable <StatsByLevelInfo> GetStatsByLevelInfos(CharacterRow row) { IList <StatsByLevelInfo> statsByLevelInfos = new List <StatsByLevelInfo>(); //level 50 StatsByLevelInfo sli50 = new StatsByLevelInfo() { Level = 50, IntroducingEvent = row.IntroducingEventLevel50, IntroducingEventId = 0, //filled in during merge phase HitPoints = _intConverter.ConvertFromStringToInt(row.HPLevel50), Attack = _intConverter.ConvertFromStringToInt(row.ATKLevel50), Defense = _intConverter.ConvertFromStringToInt(row.DEFLevel50), Magic = _intConverter.ConvertFromStringToInt(row.MAGLevel50), Resistance = _intConverter.ConvertFromStringToInt(row.RESLevel50), Mind = _intConverter.ConvertFromStringToInt(row.MNDLevel50), Accuracy = _intConverter.ConvertFromStringToInt(row.ACCLevel50), Evasion = _intConverter.ConvertFromStringToInt(row.EVALevel50), Speed = _intConverter.ConvertFromStringToInt(row.SPDLevel50) }; statsByLevelInfos.Add(sli50); //level 65 StatsByLevelInfo sli65 = new StatsByLevelInfo() { Level = 65, IntroducingEvent = row.IntroducingEventLevel65, IntroducingEventId = 0, //filled in during merge phase HitPoints = _intConverter.ConvertFromStringToInt(row.HPLevel65), Attack = _intConverter.ConvertFromStringToInt(row.ATKLevel65), Defense = _intConverter.ConvertFromStringToInt(row.DEFLevel65), Magic = _intConverter.ConvertFromStringToInt(row.MAGLevel65), Resistance = _intConverter.ConvertFromStringToInt(row.RESLevel65), Mind = _intConverter.ConvertFromStringToInt(row.MNDLevel65), Accuracy = _intConverter.ConvertFromStringToInt(row.ACCLevel65), Evasion = _intConverter.ConvertFromStringToInt(row.EVALevel65), Speed = _intConverter.ConvertFromStringToInt(row.SPDLevel65) }; statsByLevelInfos.Add(sli65); //level 80 StatsByLevelInfo sli80 = new StatsByLevelInfo() { Level = 80, IntroducingEvent = row.IntroducingEventLevel80, IntroducingEventId = 0, //filled in during merge phase HitPoints = _intConverter.ConvertFromStringToInt(row.HPLevel80), Attack = _intConverter.ConvertFromStringToInt(row.ATKLevel80), Defense = _intConverter.ConvertFromStringToInt(row.DEFLevel80), Magic = _intConverter.ConvertFromStringToInt(row.MAGLevel80), Resistance = _intConverter.ConvertFromStringToInt(row.RESLevel80), Mind = _intConverter.ConvertFromStringToInt(row.MNDLevel80), Accuracy = _intConverter.ConvertFromStringToInt(row.ACCLevel80), Evasion = _intConverter.ConvertFromStringToInt(row.EVALevel80), Speed = _intConverter.ConvertFromStringToInt(row.SPDLevel80) }; statsByLevelInfos.Add(sli80); //level 99 StatsByLevelInfo sli99 = new StatsByLevelInfo() { Level = 99, IntroducingEvent = row.IntroducingEventLevel99, IntroducingEventId = 0, //filled in during merge phase HitPoints = _intConverter.ConvertFromStringToInt(row.HPLevel99), Attack = _intConverter.ConvertFromStringToInt(row.ATKLevel99), Defense = _intConverter.ConvertFromStringToInt(row.DEFLevel99), Magic = _intConverter.ConvertFromStringToInt(row.MAGLevel99), Resistance = _intConverter.ConvertFromStringToInt(row.RESLevel99), Mind = _intConverter.ConvertFromStringToInt(row.MNDLevel99), Accuracy = _intConverter.ConvertFromStringToInt(row.ACCLevel99), Evasion = _intConverter.ConvertFromStringToInt(row.EVALevel99), Speed = _intConverter.ConvertFromStringToInt(row.SPDLevel99) }; statsByLevelInfos.Add(sli99); return(statsByLevelInfos); }
protected override Relic ConvertRowToModel(int generatedId, RelicRow row) { Relic model = new Relic(); model.Id = generatedId; model.Description = $"{row.RelicName} - {row.Realm}"; model.RelicName = row.RelicName; model.Realm = _realmConverter.ConvertFromNameToId(row.Realm); model.RelicType = _relicTypeConverter.ConvertFromNameToId(row.Type); model.EnlirId = row.ID; model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.CharacterName = row.Character.Replace(DashCharacter, String.Empty); model.CharacterId = 0; //fill during merge phase model.SoulBreakName = row.SoulBreak; model.SoulBreakId = 0; //fill during merge phase model.SoulBreak = null; //fill during merge phase model.LegendMateriaName = row.LegendMateria; model.LegendMateriaId = 0; //fill during merge phase model.HasSynergy = _stringToBooleanConverter.ConvertFromStringToBool(row.Synergy); model.CombineLevel = row.Combine; model.Rarity = _intConverter.ConvertFromStringToInt(row.Rarity); model.Level = _intConverter.ConvertFromStringToInt(row.Level); model.Attack = _intConverter.ConvertFromStringToInt(row.ATK); model.Defense = _intConverter.ConvertFromStringToInt(row.DEF); model.Magic = _intConverter.ConvertFromStringToInt(row.MAG); model.Resistance = _intConverter.ConvertFromStringToInt(row.RES); model.Mind = _intConverter.ConvertFromStringToInt(row.MND); model.Accuracy = _intConverter.ConvertFromStringToInt(row.ACC); model.Evasion = _intConverter.ConvertFromStringToInt(row.EVA); model.Effect = row.Effect; model.BaseRarity = _intConverter.ConvertFromStringToInt(row.BRAR); model.BaseLevel = _intConverter.ConvertFromStringToInt(row.BLV); model.BaseAttack = _intConverter.ConvertFromStringToInt(row.BATK); model.BaseDefense = _intConverter.ConvertFromStringToInt(row.BDEF); model.BaseMagic = _intConverter.ConvertFromStringToInt(row.BMAG); model.BaseResistance = _intConverter.ConvertFromStringToInt(row.BRES); model.BaseMind = _intConverter.ConvertFromStringToInt(row.BMND); model.BaseAccuracy = _intConverter.ConvertFromStringToInt(row.BACC); model.BaseEvasion = _intConverter.ConvertFromStringToInt(row.BEVA); model.MaxRarity = _intConverter.ConvertFromStringToInt(row.MRAR); model.MaxLevel = _intConverter.ConvertFromStringToInt(row.MLV); model.MaxAttack = _intConverter.ConvertFromStringToInt(row.MATK); model.MaxDefense = _intConverter.ConvertFromStringToInt(row.MDEF); model.MaxMagic = _intConverter.ConvertFromStringToInt(row.MMAG); model.MaxResistance = _intConverter.ConvertFromStringToInt(row.MRES); model.MaxMind = _intConverter.ConvertFromStringToInt(row.MMND); model.MaxAccuracy = _intConverter.ConvertFromStringToInt(row.MACC); model.MaxEvasion = _intConverter.ConvertFromStringToInt(row.MEVA); _logger.LogDebug("Converted RelicRow to Relic: {Id} - {Description}", model.Id, model.Description); return(model); }
//This row modifies the model that was input by reference, adding another object to each of its collection properties public void PivotInputRow(ExperienceRow row, Experience model) { int currentLevel = _intConverter.ConvertFromStringToInt(row.Level); ExperienceByLevelInfo genericCharacterLevel = new ExperienceByLevelInfo() { Level = currentLevel }; genericCharacterLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Character); genericCharacterLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelCharacter); ((IList <ExperienceByLevelInfo>)model.GenericCharacterLevelInfo).Add(genericCharacterLevel); ExperienceByLevelInfo tyroCharacterLevel = new ExperienceByLevelInfo() { Level = currentLevel }; tyroCharacterLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Tyro); tyroCharacterLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelTyro); ((IList <ExperienceByLevelInfo>)model.TyroCharacterLevelInfo).Add(tyroCharacterLevel); ExperienceByLevelInfo magicite1StarLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite1StarLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Magicite1); magicite1StarLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelMagicite1); ((IList <ExperienceByLevelInfo>)model.Magicite1StarLevelInfo).Add(magicite1StarLevel); ExperienceByLevelInfo magicite2StarLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite2StarLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Magicite2); magicite2StarLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelMagicite2); ((IList <ExperienceByLevelInfo>)model.Magicite2StarLevelInfo).Add(magicite2StarLevel); ExperienceByLevelInfo magicite3StarLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite3StarLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Magicite3); magicite3StarLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelMagicite3); ((IList <ExperienceByLevelInfo>)model.Magicite3StarLevelInfo).Add(magicite3StarLevel); ExperienceByLevelInfo magicite4StarLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite4StarLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Magicite4); magicite4StarLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelMagicite4); ((IList <ExperienceByLevelInfo>)model.Magicite4StarLevelInfo).Add(magicite4StarLevel); ExperienceByLevelInfo magicite5StarLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite5StarLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Magicite5); magicite5StarLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelMagicite5); ((IList <ExperienceByLevelInfo>)model.Magicite5StarLevelInfo).Add(magicite5StarLevel); ExperienceByLevelInfo magicite3StarInheritanceLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite3StarInheritanceLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Inheritance3); magicite3StarInheritanceLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelInheritance3); ((IList <ExperienceByLevelInfo>)model.Magicite3StarInheritanceLevelInfo).Add(magicite3StarInheritanceLevel); ExperienceByLevelInfo magicite4StarInheritanceLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite4StarInheritanceLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Inheritance4); magicite4StarInheritanceLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelInheritance4); ((IList <ExperienceByLevelInfo>)model.Magicite4StarInheritanceLevelInfo).Add(magicite4StarInheritanceLevel); ExperienceByLevelInfo magicite5StarInheritanceLevel = new ExperienceByLevelInfo() { Level = currentLevel }; magicite5StarInheritanceLevel.ExperienceNeededToReachLevel = _intConverter.ConvertFromStringToInt(row.Inheritance5); magicite5StarInheritanceLevel.ExperienceNeededToReachNextLevel = _intConverter.ConvertFromStringToInt(row.NextLevelInheritance5); ((IList <ExperienceByLevelInfo>)model.Magicite5StarInheritanceLevelInfo).Add(magicite5StarInheritanceLevel); }
protected override Magicite ConvertRowToModel(int generatedId, MagiciteRow row) { Magicite model = new Magicite(); //IModelDescriptor model.Id = generatedId; model.Description = row.Name; //core attributes model.MagiciteName = row.Name; model.Element = _elementConverter.ConvertFromNameToId(row.Element); model.Rarity = _intConverter.ConvertFromStringToInt(row.Rarity); model.Realm = _realmConverter.ConvertFromNameToId(row.Realm); model.ImagePath = row.ImagePath; model.IntroducingEventName = row.IntroducingEvent; model.IntroducingEventId = 0; //fill in during merge phase model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.IsChecked = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked); //stats model.HitPoints = _intConverter.ConvertFromStringToInt(row.HP); model.Attack = _intConverter.ConvertFromStringToInt(row.ATK); model.Defense = _intConverter.ConvertFromStringToInt(row.DEF); model.Magic = _intConverter.ConvertFromStringToInt(row.MAG); model.Resistance = _intConverter.ConvertFromStringToInt(row.RES); model.Mind = _intConverter.ConvertFromStringToInt(row.MND); model.Speed = _intConverter.ConvertFromStringToInt(row.SPD); //passives model.PassiveEffects = GetPassiveEffectsForMagicite(row); //ultra skill if (row.UltraSkill.Length > 1) { UltraSkill ultraSkill = new UltraSkill() { Name = row.UltraSkill, JapaneseName = row.JapaneseName, AbilityType = _abilityTypeConverter.ConvertFromNameToId(row.Type), AutoTargetType = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget), DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula), Multiplier = _doubleConverter.ConvertFromStringToDouble(row.Multiplier), Element = _elementConverter.ConvertFromNameToId(row.Element), CastTime = _doubleConverter.ConvertFromStringToDouble(row.Time), Effects = row.Effects, IsCounterable = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter), Cooldown = _doubleConverter.ConvertFromStringToDouble(row.Cooldown), Duration = _doubleConverter.ConvertFromStringToDouble(row.Duration), EnlirId = row.ID }; model.UltraSkill = ultraSkill; } //magicite skills model.MagiciteSkills = new List <MagiciteSkill>(); //fill in during merge phase _logger.LogDebug("Converted MagiciteRow to Magicite: {Id} - {Description}", model.Id, model.Description); return(model); }
protected override Ability ConvertRowToModel(int generatedId, AbilityRow row) { Ability model = new Ability(); model.Id = generatedId; model.Description = row.AbilityName; model.AbilityName = row.AbilityName; model.ImagePath = row.ImagePath; model.School = _schoolConverter.ConvertFromNameToId(row.School ?? "Unknown"); model.Rarity = _intConverter.ConvertFromStringToInt(row.Rarity); model.MinUses = _intConverter.ConvertFromStringToInt(row.Uses); model.MaxUses = _intConverter.ConvertFromStringToInt(row.Max); model.AbilityType = _abilityTypeConverter.ConvertFromNameToId(row.Type); model.TargetType = _targetTypeConverter.ConvertFromNameToId(row.Target); model.AutoTargetType = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget); model.DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula); model.Multiplier = _doubleConverter.ConvertFromStringToDouble(row.Multiplier); model.Elements = _elementConverter.ConvertFromCommaSeparatedListToIds(row.Element); model.CastTime = _doubleConverter.ConvertFromStringToDouble(row.Time); model.Effects = row.Effects; model.IsCounterable = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter); model.IsInGlobal = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal); model.IsChecked = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked); model.SoulBreakPointsGained = _intConverter.ConvertFromStringToInt(row.SB); model.IntroducingEventName = row.IntroducingEvent; model.IntroducingEventId = 0; //filled in during merge phase model.JapaneseName = row.JapaneseName; model.EnlirId = row.ID; model.OrbRequirements = GetOrbRequirements(row); _logger.LogDebug("Converted AbilityRow to Ability: {Id} - {Description}", model.Id, model.Description); return(model); }
private IEnumerable <RecordSphereLevel> GetRecordSphereLevels(RecordSphereRow row) { IList <RecordSphereLevel> recordSphereLevels = new List <RecordSphereLevel>(); //can be up to 5 levels //level 1 if (!String.IsNullOrWhiteSpace(row.BenefitLevel1?.Replace(DashCharacter, String.Empty))) { RecordSphereLevel rsl = new RecordSphereLevel() { Level = 1, Benefit = row.BenefitLevel1, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountLevel1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rsl.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountLevel1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rsl.RequiredMotes.Add(iwcasl); } } //mote 3 if (!String.IsNullOrWhiteSpace(row.Mote3Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote3Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote3AmountLevel1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rsl.RequiredMotes.Add(iwcasl); } } //mote 4 if (!String.IsNullOrWhiteSpace(row.Mote4Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote4Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote4AmountLevel1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rsl.RequiredMotes.Add(iwcasl); } } recordSphereLevels.Add(rsl); } //level 2 if (!String.IsNullOrWhiteSpace(row.BenefitLevel2?.Replace(DashCharacter, String.Empty))) { RecordSphereLevel rs2 = new RecordSphereLevel() { Level = 2, Benefit = row.BenefitLevel2, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountLevel2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs2.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountLevel2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs2.RequiredMotes.Add(iwcasl); } } //mote 3 if (!String.IsNullOrWhiteSpace(row.Mote3Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote3Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote3AmountLevel2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs2.RequiredMotes.Add(iwcasl); } } //mote 4 if (!String.IsNullOrWhiteSpace(row.Mote4Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote4Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote4AmountLevel2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs2.RequiredMotes.Add(iwcasl); } } recordSphereLevels.Add(rs2); } //level 3 if (!String.IsNullOrWhiteSpace(row.BenefitLevel3?.Replace(DashCharacter, String.Empty))) { RecordSphereLevel rs3 = new RecordSphereLevel() { Level = 3, Benefit = row.BenefitLevel3, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountLevel3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs3.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountLevel3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs3.RequiredMotes.Add(iwcasl); } } //mote 3 if (!String.IsNullOrWhiteSpace(row.Mote3Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote3Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote3AmountLevel3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs3.RequiredMotes.Add(iwcasl); } } //mote 4 if (!String.IsNullOrWhiteSpace(row.Mote4Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote4Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote4AmountLevel3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs3.RequiredMotes.Add(iwcasl); } } recordSphereLevels.Add(rs3); } //level 4 if (!String.IsNullOrWhiteSpace(row.BenefitLevel4?.Replace(DashCharacter, String.Empty))) { RecordSphereLevel rs4 = new RecordSphereLevel() { Level = 4, Benefit = row.BenefitLevel4, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountLevel4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs4.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountLevel4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs4.RequiredMotes.Add(iwcasl); } } //mote 3 if (!String.IsNullOrWhiteSpace(row.Mote3Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote3Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote3AmountLevel4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs4.RequiredMotes.Add(iwcasl); } } //mote 4 if (!String.IsNullOrWhiteSpace(row.Mote4Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote4Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote4AmountLevel4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs4.RequiredMotes.Add(iwcasl); } } recordSphereLevels.Add(rs4); } //level 5 if (!String.IsNullOrWhiteSpace(row.BenefitLevel5?.Replace(DashCharacter, String.Empty))) { RecordSphereLevel rs5 = new RecordSphereLevel() { Level = 5, Benefit = row.BenefitLevel5, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountLevel5), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs5.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountLevel5), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs5.RequiredMotes.Add(iwcasl); } } //mote 3 if (!String.IsNullOrWhiteSpace(row.Mote3Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote3Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote3AmountLevel5), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs5.RequiredMotes.Add(iwcasl); } } //mote 4 if (!String.IsNullOrWhiteSpace(row.Mote4Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote4Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote4AmountLevel5), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { rs5.RequiredMotes.Add(iwcasl); } } recordSphereLevels.Add(rs5); } return(recordSphereLevels); }
private IEnumerable <LegendSphereInfo> GetLegendSphereInfo(LegendSphereRow row) { IList <LegendSphereInfo> legendSphereInfos = new List <LegendSphereInfo>(); //can be up to 4 indexes (spots from left to right) //index 1 if (!String.IsNullOrWhiteSpace(row.BenefitColumn1?.Replace(DashCharacter, String.Empty))) { LegendSphereInfo lsi1 = new LegendSphereInfo() { Index = 1, Benefit = row.BenefitColumn1, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountColumn1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi1.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountColumn1), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi1.RequiredMotes.Add(iwcasl); } } legendSphereInfos.Add(lsi1); } //index 2 if (!String.IsNullOrWhiteSpace(row.BenefitColumn2?.Replace(DashCharacter, String.Empty))) { LegendSphereInfo lsi2 = new LegendSphereInfo() { Index = 2, Benefit = row.BenefitColumn2, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountColumn2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi2.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountColumn2), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi2.RequiredMotes.Add(iwcasl); } } legendSphereInfos.Add(lsi2); } //index 3 if (!String.IsNullOrWhiteSpace(row.BenefitColumn3?.Replace(DashCharacter, String.Empty))) { LegendSphereInfo lsi3 = new LegendSphereInfo() { Index = 3, Benefit = row.BenefitColumn3, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountColumn3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi3.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountColumn3), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi3.RequiredMotes.Add(iwcasl); } } legendSphereInfos.Add(lsi3); } //index 4 if (!String.IsNullOrWhiteSpace(row.BenefitColumn4?.Replace(DashCharacter, String.Empty))) { LegendSphereInfo lsi4 = new LegendSphereInfo() { Index = 4, Benefit = row.BenefitColumn4, RequiredMotes = new List <ItemWithCountAndStarLevel>() }; //mote 1 if (!String.IsNullOrWhiteSpace(row.Mote1Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote1Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote1AmountColumn4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi4.RequiredMotes.Add(iwcasl); } } //mote 2 if (!String.IsNullOrWhiteSpace(row.Mote2Type)) //we use this type of mote { ItemWithStarLevel iwsl = ExtractItemWithStarLevel(row.Mote2Type); ItemWithCountAndStarLevel iwcasl = new ItemWithCountAndStarLevel() { ItemCount = _intConverter.ConvertFromStringToInt(row.Mote2AmountColumn4), ItemName = iwsl.ItemName, ItemStarLevel = iwsl.ItemStarLevel }; if (iwcasl.ItemCount > 0) { lsi4.RequiredMotes.Add(iwcasl); } } legendSphereInfos.Add(lsi4); } return(legendSphereInfos); }