Exemple #1
0
        public static void PrintBladeCsv(SDataBlade blade, BdatCollection tables, StringBuilder sb)
        {
            sb.Append($"{blade.GetName(tables)},");
            sb.Append($"{tables.CHR_Dr.GetItemOrNull(blade.Creator)?._Name.name},");
            sb.Append($"{blade.Attribute},");
            sb.Append($"{tables.ITM_PcWpnType.GetItemOrNull(blade.WeaponType)?._Name.name},");
            var mod = blade.GetStatMod();

            sb.Append($"{mod.type},");
            sb.Append($"{mod.percent},");
            sb.Append($"{tables.MNU_MsgTrustRank.GetItemOrNull(blade.TrustRank)?._name.name},");
            sb.Append($"{blade.TrustPoints},");
            sb.Append(",");
            sb.Append($"{blade.FieldSkills[0].MaxLevel},");
            sb.Append($"{blade.GetFieldSkillLevel("Forestry", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Botany", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Agronomy", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Entomology", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Ichthyology", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Mineralogy", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Salvaging Mastery", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Info Collector", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Expeditionist", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Transport Mastery", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Industry Mastery", tables)},");
            sb.Append($"{blade.GetFieldSkillLevel("Production Mastery", tables)},");
            sb.Append($"{blade.GetBattleSkillLevel("Gold Rush", tables)},");
            sb.Append($"{blade.GetBattleSkillLevel("Treasure Sensor", tables)},");
            sb.Append($"{blade.GetBattleSkillLevel("Orb Master", tables)},");
            sb.Append($"{blade.GetBattleSkillLevel("Slamdown", tables)},");
            sb.Append($"{blade.GetBattleSkillLevel("Ultimate Combo", tables)},");
        }
Exemple #2
0
 public static (string type, int percent) GetStatMod(this SDataBlade blade)
 {
     if (blade.HpMaxRev != 0)
     {
         return("Max HP", blade.HpMaxRev);
     }
     if (blade.StrengthRev != 0)
     {
         return("Strength", blade.StrengthRev);
     }
     if (blade.PowEtherRev != 0)
     {
         return("Ether", blade.PowEtherRev);
     }
     if (blade.DexRev != 0)
     {
         return("Dexterity", blade.DexRev);
     }
     if (blade.AgilityRev != 0)
     {
         return("Agility", blade.AgilityRev);
     }
     if (blade.LuckRev != 0)
     {
         return("Luck", blade.LuckRev);
     }
     return("None", 0);
 }
Exemple #3
0
        public static string GetName(this SDataBlade blade, BdatCollection tables)
        {
            if (blade.RareNameId != 0)
            {
                return(tables.chr_bl_ms.GetItemOrNull(blade.RareNameId)?.name ?? blade.Name);
            }

            return(tables.bld_bladename.GetItemOrNull(blade.CommonNameId)?.name ?? blade.Name);
        }
Exemple #4
0
        public static string GetBattleSkillLevel(this SDataBlade blade, string name, BdatCollection tables)
        {
            BTL_Skill_Bl a = tables.BTL_Skill_Bl.First(x => x?._Name?.name == name);

            foreach (var skill in blade.BattleSkills)
            {
                if (skill.Id == a.Id)
                {
                    return(skill.MaxLevel.ToString());
                }
            }

            return("");
        }
Exemple #5
0
        public static string GetFieldSkillLevel(this SDataBlade blade, string name, BdatCollection tables)
        {
            FLD_FieldSkillList a = tables.FLD_FieldSkillList.First(x => x?._Name?.name == name);

            foreach (var skill in blade.FieldSkills)
            {
                if (skill.Id == a.Id)
                {
                    return(skill.MaxLevel.ToString());
                }
            }

            return("");
        }
Exemple #6
0
        public static void PrintBlade(SDataBlade blade, BdatCollection tables, StringBuilder sb)
        {
            sb.AppendLine($"Blade ID: {blade.BladeId}");
            sb.AppendLine($"Name: {blade.GetName(tables)}");
            sb.AppendLine($"Born Time: {blade.BornTime.Hour}:{blade.BornTime.Minute}:{blade.BornTime.Second} ");
            sb.AppendLine($"Driver: {tables.CHR_Dr.GetItemOrNull(blade.Creator)?._Name.name}");
            sb.AppendLine($"Element: {blade.Attribute}");
            sb.AppendLine($"Weapon Type: {tables.ITM_PcWpnType.GetItemOrNull(blade.WeaponType)?._Name.name}");
            sb.AppendLine($"Trust Points: {blade.TrustPoints}");
            sb.AppendLine($"Trust Rank: {tables.MNU_MsgTrustRank[(int)blade.TrustRank]._name.name}");
            sb.AppendLine($"AUX Core Slots: {blade.AuxCoreCount}");
            sb.AppendLine();

            sb.AppendLine($"Physical Defense: {blade.PArmor}%");
            sb.AppendLine($"Ether Defense: {blade.EArmor}%");
            if (blade.HpMaxRev != 0)
            {
                sb.AppendLine($"Max HP Mod: {blade.HpMaxRev}%");
            }
            if (blade.StrengthRev != 0)
            {
                sb.AppendLine($"Strength Mod: {blade.StrengthRev}%");
            }
            if (blade.PowEtherRev != 0)
            {
                sb.AppendLine($"Ether Mod: {blade.PowEtherRev}%");
            }
            if (blade.DexRev != 0)
            {
                sb.AppendLine($"Dexterity Mod: {blade.DexRev}%");
            }
            if (blade.AgilityRev != 0)
            {
                sb.AppendLine($"Agility Mod: {blade.AgilityRev}%");
            }
            if (blade.LuckRev != 0)
            {
                sb.AppendLine($"Luck Mod: {blade.LuckRev}%");
            }
            sb.AppendLine();

            for (int i = 0; i < 3; i++)
            {
                var sk = blade.BArts[i];
                if (sk.Id == 0)
                {
                    continue;
                }
                sb.AppendLine($"Special {i + 1}: {tables.BTL_Arts_Bl.GetItemOrNull(sk.Id)?._Name.name} {sk.Level}/{sk.MaxLevel}");
            }
            sb.AppendLine($"Special 4: {tables.BTL_Arts_BlSp.GetItemOrNull(blade.BArtsEx[0].Id)?._Name.name}");
            sb.AppendLine($"Special 4 Mod: {blade.BArtsEx[0].DamageRev}%");


            sb.AppendLine();

            for (int i = 0; i < 3; i++)
            {
                var sk = blade.NArts[i];
                if (sk.Id == 0)
                {
                    continue;
                }
                sb.AppendLine($"Blade Art {i + 1}: {tables.BTL_Buff.GetItemOrNull(sk.Id)?._Name.name}");
            }
            sb.AppendLine();

            for (int i = 0; i < 3; i++)
            {
                var sk = blade.BattleSkills[i];
                if (sk.Id == 0)
                {
                    continue;
                }
                sb.AppendLine($"Battle Skill {i + 1}: {tables.BTL_Skill_Bl.GetItemOrNull(sk.Id)?._Name?.name} {sk.Level}/{sk.MaxLevel}");
            }
            sb.AppendLine();

            for (int i = 0; i < 3; i++)
            {
                var sk = blade.FieldSkills[i];
                if (sk.Id == 0)
                {
                    continue;
                }
                sb.AppendLine($"Field Skill {i + 1}: {tables.FLD_FieldSkillList.GetItemOrNull(sk.Id)?._Name?.name} {sk.Level}/{sk.MaxLevel}");
            }
            sb.AppendLine();

            sb.Append($"Favorite Category 1: {tables.menu_favorite_category.GetItemOrNull(blade.FavoriteCategory0 - 11)?.name}");
            if (blade.FavoriteCategory0 > 11 && !blade.FavoriteCategory0Revealed)
            {
                sb.Append(" (Hidden)");
            }
            sb.AppendLine();

            sb.Append($"Favorite Category 2: {tables.menu_favorite_category.GetItemOrNull(blade.FavoriteCategory1 - 11)?.name}");
            if (blade.FavoriteCategory1 > 11 && !blade.FavoriteCategory1Revealed)
            {
                sb.Append(" (Hidden)");
            }
            sb.AppendLine();

            sb.Append($"Favorite Item 1: {tables.ITM_FavoriteList.GetItemOrNull(blade.FavoriteItem0)?._Name?.name}");
            if (blade.FavoriteItem0 > 0 && !blade.FavoriteItem0Revealed)
            {
                sb.Append(" (Hidden)");
            }
            sb.AppendLine();

            sb.Append($"Favorite Item 2: {tables.ITM_FavoriteList.GetItemOrNull(blade.FavoriteItem1)?._Name.name}");
            if (blade.FavoriteItem1 > 0 && !blade.FavoriteItem1Revealed)
            {
                sb.Append(" (Hidden)");
            }
            sb.AppendLine();
        }