Beispiel #1
0
        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 MagiciteSkill ConvertRowToModel(int generatedId, MagiciteSkillRow row)
        {
            MagiciteSkill model = new MagiciteSkill();

            model.Id          = generatedId;
            model.Description = $"{row.Magicite} - {row.Name}";

            model.MagiciteName      = row.Magicite;
            model.MagiciteId        = 0; //fill in during merge phase
            model.SkillName         = row.Name;
            model.JapaneseName      = row.JapaneseName;
            model.ImagePath         = row.ImagePath;
            model.AbilityType       = _abilityTypeConverter.ConvertFromNameToId(row.Type);
            model.AutoTargetType    = _autoTargetTypeConverter.ConvertFromNameToId(row.AutoTarget);
            model.DamageFormulaType = _damageFormulaTypeConverter.ConvertFromNameToId(row.Formula);
            model.Multiplier        = _doubleConverter.ConvertFromStringToDouble(row.Multiplier);
            model.Element           = _elementConverter.ConvertFromNameToId(row.Element);
            model.CastTime          = _doubleConverter.ConvertFromStringToDouble(row.Time);
            model.Effects           = row.Effects;
            model.IsCounterable     = _stringToBooleanConverter.ConvertFromStringToBool(row.Counter);
            model.EnlirId           = row.ID;
            model.IsInGlobal        = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal);
            model.IsChecked         = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked);

            model.ChanceForSkillUseWith0LevelCapBreaks = _doubleConverter.ConvertFromStringToDouble(row.ChanceToUseTier0);
            model.ChanceForSkillUseWith1LevelCapBreaks = _doubleConverter.ConvertFromStringToDouble(row.ChanceToUseTier1);
            model.ChanceForSkillUseWith2LevelCapBreaks = _doubleConverter.ConvertFromStringToDouble(row.ChanceToUseTier2);
            model.ChanceForSkillUseWith3LevelCapBreaks = _doubleConverter.ConvertFromStringToDouble(row.ChanceToUseTier3);

            _logger.LogDebug("Converted MagiciteSkillRow to MagiciteSkill: {Id} - {Description}", model.Id, model.Description);

            return(model);
        }
        protected override LegendMateria ConvertRowToModel(int generatedId, LegendMateriaRow row)
        {
            LegendMateria model = new LegendMateria();

            model.Id          = generatedId;
            model.Description = row.LegendMateriaName;

            model.LegendMateriaName = row.LegendMateriaName;
            model.JapaneseName      = row.JapaneseName ?? String.Empty;
            model.Tier      = row.Tier ?? String.Empty;
            model.LmVer     = row.LmVer ?? String.Empty;
            model.ImagePath = row.ImagePath;
            model.Realm     = _realmConverter.ConvertFromNameToId(row.Realm);

            model.CharacterName = row.Character;
            model.CharacterId   = 0; //filled in during merge phase

            model.RelicName = row.Relic != null ? row.Relic : String.Empty;
            model.RelicId   = 0; //filled in during merge phase

            model.Effect       = row.Effect;
            model.MasteryBonus = row.Master;
            model.EnlirId      = row.ID;
            model.Anima        = row.Anima;
            model.IsInGlobal   = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal);
            model.IsChecked    = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked);



            _logger.LogDebug("Converted LegendMateriaRow to LegendMateria: {Id} - {Description}", model.Id, model.Description);

            return(model);
        }
        protected override RecordMateria ConvertRowToModel(int generatedId, RecordMateriaRow row)
        {
            RecordMateria model = new RecordMateria();

            model.Id          = generatedId;
            model.Description = $"{row.Character} - {row.RecordMateriaName}";

            model.RecordMateriaName = row.RecordMateriaName;
            model.JapaneseName      = row.JapaneseName ?? String.Empty;

            model.ImagePath = row.ImagePath;
            model.Realm     = _realmConverter.ConvertFromNameToId(row.Realm);

            model.CharacterName = row.Character;
            model.CharacterId   = 0; //filled in during merge phase


            model.Effect         = row.Effect;
            model.UnlockCriteria = row.UnlockCriteria;
            model.EnlirId        = row.ID;
            model.IsInGlobal     = _stringToBooleanConverter.ConvertFromStringToBool(row.IsInGlobal);
            model.IsChecked      = _stringToBooleanConverter.ConvertFromStringToBool(row.Checked);


            _logger.LogDebug("Converted RecordMateriaRow to RecordMateria: {Id} - {Description}", model.Id, model.Description);

            return(model);
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        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);
        }
Beispiel #7
0
        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);
        }
Beispiel #8
0
        private IEnumerable <EquipmentAccessInfo> GetEquipmentAccessInfos(CharacterRow row)
        {
            IList <EquipmentAccessInfo> schoolAccessInfos = new List <EquipmentAccessInfo>()
            {
                new EquipmentAccessInfo()
                {
                    EquipmentType = 1, EquipmentName = "Dagger", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.DaggerAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 2, EquipmentName = "Sword", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.SwordAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 3, EquipmentName = "Katana", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.KatanaAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 4, EquipmentName = "Axe", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.AxeAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 5, EquipmentName = "Hammer", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.HammerAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 6, EquipmentName = "Spear", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.SpearAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 7, EquipmentName = "Fist", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.FistAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 8, EquipmentName = "Rod", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.RodAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 9, EquipmentName = "Staff", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.StaffAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 10, EquipmentName = "Bow", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.BowAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 11, EquipmentName = "Instrument", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.InstrumentAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 12, EquipmentName = "Whip", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.WhipAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 13, EquipmentName = "Thrown", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.ThrownAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 14, EquipmentName = "Gun", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.GunAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 15, EquipmentName = "Book", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.BookAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 16, EquipmentName = "Blitzball", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.BlitzballAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 17, EquipmentName = "Hairpin", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.HairpinAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 18, EquipmentName = "Gun-arm", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.GunarmAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 19, EquipmentName = "Gambling Gear", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.GamblingGearAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 20, EquipmentName = "Doll", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.DollAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 21, EquipmentName = "Keyblade", IsWeapon = true, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.KeybladeAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 22, EquipmentName = "Shield", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.ShieldAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 23, EquipmentName = "Hat", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.HatAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 24, EquipmentName = "Helm", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.HelmAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 25, EquipmentName = "Light Armor", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.LightArmorAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 26, EquipmentName = "Heavy Armor", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.HeavyArmorAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 27, EquipmentName = "Robe", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.RobeAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 28, EquipmentName = "Bracer", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.BracerAccess)
                },
                new EquipmentAccessInfo()
                {
                    EquipmentType = 29, EquipmentName = "Accessory", IsWeapon = false, CanAccess = _stringToBooleanConverter.ConvertFromStringToBool(row.AccessoryAccess)
                }
            };


            return(schoolAccessInfos);
        }
Beispiel #9
0
        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);
        }
Beispiel #10
0
        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);
        }