using System.Collections.Generic; public class FightPowerFormula { // 基础属性公式 // (lvValue+equipValue+bookValue+realmValue+gubaoValue+hjgValue+horseValue+beautyValue)*(1+lineupHaloPer+bookPer+realmPer+gubaoPer+hjgPer+horsePer+beautyPer+lineupInitAddPer+lineupLVAddPer+lineupBreakLVAddPer+lineupStarAddPer)*(inheritPer+fetterPer+starTalentPer+breakLVPer+awakeTalentPer)+heroSelfValue // 战斗属性公式 // (lvValue+equipValue+bookValue+realmValue+gubaoValue+hjgValue+horseValue+beautyValue)+(heroSelfValue+lineupHaloValue+starTalentValue+breakLVValue+awakeTalentValue)+fetterValue // 战斗力公式 // long(Atk*AtkRatio+MaxHP*MaxHPRatio+Def*DefRatio+(StunRate*StunRateRatio+SuperHitRate*SuperHitRateRatio+ComboRate*ComboRateRatio+MissRate*MissRateRatio+ParryRate*ParryRateRatio+SuckHPPer*SuckHPPerRatio+StunRateDef*StunRateDefRatio+SuperHitRateDef*SuperHitRateDefRatio+ComboRateDef*ComboRateDefRatio+MissRateDef*MissRateDefRatio+ParryRateDef*ParryRateDefRatio+SuckHPPerDef*SuckHPPerDefRatio+FinalDamPer*FinalDamPerRatio+FinalDamPerDef*FinalDamPerDefRatio+PhyDamPer*PhyDamPerRatio+PhyDamPerDef*PhyDamPerDefRatio+MagDamPer*MagDamPerRatio+MagDamPerDef*MagDamPerDefRatio+NormalSkillPer*NormalSkillPerRatio+NormalSkillPerDef*NormalSkillPerDefRatio+AngerSkillPer*AngerSkillPerRatio+AngerSkillPerDef*AngerSkillPerDefRatio+SuperDamPer*SuperDamPerRatio+SuperDamPerDef*SuperDamPerDefRatio+CurePer*CurePerRatio+CurePerDef*CurePerDefRatio+ShieldPer*ShieldPerRatio+ShieldPerDef*ShieldPerDefRatio+DOTPer*DOTPerRatio+DOTPerDef*DOTPerDefRatio+WeiFinalDamPer*WeiFinalDamPerRatio+WeiFinalDamPerDef*WeiFinalDamPerDefRatio+ShuFinalDamPer*ShuFinalDamPerRatio+ShuFinalDamPerDef*ShuFinalDamPerDefRatio+WuFinalDamPer*WuFinalDamPerRatio+WuFinalDamPerDef*WuFinalDamPerDefRatio+QunFinalDamPer*QunFinalDamPerRatio+QunFinalDamPerDef*QunFinalDamPerDefRatio+PVPDamPer*PVPDamPerRatio+PVPDamPerDef*PVPDamPerDefRatio)/100.0-55000) // 技能战斗力公式 // SkillPower*OfficialLV public static double GetBaseAttr(Dictionary variables) { double lvValue = variables["lvValue"]; double equipValue = variables["equipValue"]; double bookValue = variables["bookValue"]; double realmValue = variables["realmValue"]; double gubaoValue = variables["gubaoValue"]; double hjgValue = variables["hjgValue"]; double horseValue = variables["horseValue"]; double beautyValue = variables["beautyValue"]; double lineupHaloPer = variables["lineupHaloPer"]; double bookPer = variables["bookPer"]; double realmPer = variables["realmPer"]; double gubaoPer = variables["gubaoPer"]; double hjgPer = variables["hjgPer"]; double horsePer = variables["horsePer"]; double beautyPer = variables["beautyPer"]; double lineupInitAddPer = variables["lineupInitAddPer"]; double lineupLVAddPer = variables["lineupLVAddPer"]; double lineupBreakLVAddPer = variables["lineupBreakLVAddPer"]; double lineupStarAddPer = variables["lineupStarAddPer"]; double inheritPer = variables["inheritPer"]; double fetterPer = variables["fetterPer"]; double starTalentPer = variables["starTalentPer"]; double breakLVPer = variables["breakLVPer"]; double awakeTalentPer = variables["awakeTalentPer"]; double heroSelfValue = variables["heroSelfValue"]; return (lvValue+equipValue+bookValue+realmValue+gubaoValue+hjgValue+horseValue+beautyValue)*(1+lineupHaloPer+bookPer+realmPer+gubaoPer+hjgPer+horsePer+beautyPer+lineupInitAddPer+lineupLVAddPer+lineupBreakLVAddPer+lineupStarAddPer)*(inheritPer+fetterPer+starTalentPer+breakLVPer+awakeTalentPer)+heroSelfValue; } public static double GetFightAttr(Dictionary variables) { double lvValue = variables["lvValue"]; double equipValue = variables["equipValue"]; double bookValue = variables["bookValue"]; double realmValue = variables["realmValue"]; double gubaoValue = variables["gubaoValue"]; double hjgValue = variables["hjgValue"]; double horseValue = variables["horseValue"]; double beautyValue = variables["beautyValue"]; double heroSelfValue = variables["heroSelfValue"]; double lineupHaloValue = variables["lineupHaloValue"]; double starTalentValue = variables["starTalentValue"]; double breakLVValue = variables["breakLVValue"]; double awakeTalentValue = variables["awakeTalentValue"]; double fetterValue = variables["fetterValue"]; return (lvValue+equipValue+bookValue+realmValue+gubaoValue+hjgValue+horseValue+beautyValue)+(heroSelfValue+lineupHaloValue+starTalentValue+breakLVValue+awakeTalentValue)+fetterValue; } public static double GetFightPower(Dictionary variables) { double Atk = variables["Atk"]; double AtkRatio = variables["AtkRatio"]; double MaxHP = variables["MaxHP"]; double MaxHPRatio = variables["MaxHPRatio"]; double Def = variables["Def"]; double DefRatio = variables["DefRatio"]; double StunRate = variables["StunRate"]; double StunRateRatio = variables["StunRateRatio"]; double SuperHitRate = variables["SuperHitRate"]; double SuperHitRateRatio = variables["SuperHitRateRatio"]; double ComboRate = variables["ComboRate"]; double ComboRateRatio = variables["ComboRateRatio"]; double MissRate = variables["MissRate"]; double MissRateRatio = variables["MissRateRatio"]; double ParryRate = variables["ParryRate"]; double ParryRateRatio = variables["ParryRateRatio"]; double SuckHPPer = variables["SuckHPPer"]; double SuckHPPerRatio = variables["SuckHPPerRatio"]; double StunRateDef = variables["StunRateDef"]; double StunRateDefRatio = variables["StunRateDefRatio"]; double SuperHitRateDef = variables["SuperHitRateDef"]; double SuperHitRateDefRatio = variables["SuperHitRateDefRatio"]; double ComboRateDef = variables["ComboRateDef"]; double ComboRateDefRatio = variables["ComboRateDefRatio"]; double MissRateDef = variables["MissRateDef"]; double MissRateDefRatio = variables["MissRateDefRatio"]; double ParryRateDef = variables["ParryRateDef"]; double ParryRateDefRatio = variables["ParryRateDefRatio"]; double SuckHPPerDef = variables["SuckHPPerDef"]; double SuckHPPerDefRatio = variables["SuckHPPerDefRatio"]; double FinalDamPer = variables["FinalDamPer"]; double FinalDamPerRatio = variables["FinalDamPerRatio"]; double FinalDamPerDef = variables["FinalDamPerDef"]; double FinalDamPerDefRatio = variables["FinalDamPerDefRatio"]; double PhyDamPer = variables["PhyDamPer"]; double PhyDamPerRatio = variables["PhyDamPerRatio"]; double PhyDamPerDef = variables["PhyDamPerDef"]; double PhyDamPerDefRatio = variables["PhyDamPerDefRatio"]; double MagDamPer = variables["MagDamPer"]; double MagDamPerRatio = variables["MagDamPerRatio"]; double MagDamPerDef = variables["MagDamPerDef"]; double MagDamPerDefRatio = variables["MagDamPerDefRatio"]; double NormalSkillPer = variables["NormalSkillPer"]; double NormalSkillPerRatio = variables["NormalSkillPerRatio"]; double NormalSkillPerDef = variables["NormalSkillPerDef"]; double NormalSkillPerDefRatio = variables["NormalSkillPerDefRatio"]; double AngerSkillPer = variables["AngerSkillPer"]; double AngerSkillPerRatio = variables["AngerSkillPerRatio"]; double AngerSkillPerDef = variables["AngerSkillPerDef"]; double AngerSkillPerDefRatio = variables["AngerSkillPerDefRatio"]; double SuperDamPer = variables["SuperDamPer"]; double SuperDamPerRatio = variables["SuperDamPerRatio"]; double SuperDamPerDef = variables["SuperDamPerDef"]; double SuperDamPerDefRatio = variables["SuperDamPerDefRatio"]; double CurePer = variables["CurePer"]; double CurePerRatio = variables["CurePerRatio"]; double CurePerDef = variables["CurePerDef"]; double CurePerDefRatio = variables["CurePerDefRatio"]; double ShieldPer = variables["ShieldPer"]; double ShieldPerRatio = variables["ShieldPerRatio"]; double ShieldPerDef = variables["ShieldPerDef"]; double ShieldPerDefRatio = variables["ShieldPerDefRatio"]; double DOTPer = variables["DOTPer"]; double DOTPerRatio = variables["DOTPerRatio"]; double DOTPerDef = variables["DOTPerDef"]; double DOTPerDefRatio = variables["DOTPerDefRatio"]; double WeiFinalDamPer = variables["WeiFinalDamPer"]; double WeiFinalDamPerRatio = variables["WeiFinalDamPerRatio"]; double WeiFinalDamPerDef = variables["WeiFinalDamPerDef"]; double WeiFinalDamPerDefRatio = variables["WeiFinalDamPerDefRatio"]; double ShuFinalDamPer = variables["ShuFinalDamPer"]; double ShuFinalDamPerRatio = variables["ShuFinalDamPerRatio"]; double ShuFinalDamPerDef = variables["ShuFinalDamPerDef"]; double ShuFinalDamPerDefRatio = variables["ShuFinalDamPerDefRatio"]; double WuFinalDamPer = variables["WuFinalDamPer"]; double WuFinalDamPerRatio = variables["WuFinalDamPerRatio"]; double WuFinalDamPerDef = variables["WuFinalDamPerDef"]; double WuFinalDamPerDefRatio = variables["WuFinalDamPerDefRatio"]; double QunFinalDamPer = variables["QunFinalDamPer"]; double QunFinalDamPerRatio = variables["QunFinalDamPerRatio"]; double QunFinalDamPerDef = variables["QunFinalDamPerDef"]; double QunFinalDamPerDefRatio = variables["QunFinalDamPerDefRatio"]; double PVPDamPer = variables["PVPDamPer"]; double PVPDamPerRatio = variables["PVPDamPerRatio"]; double PVPDamPerDef = variables["PVPDamPerDef"]; double PVPDamPerDefRatio = variables["PVPDamPerDefRatio"]; return (long)(Atk*AtkRatio+MaxHP*MaxHPRatio+Def*DefRatio+(StunRate*StunRateRatio+SuperHitRate*SuperHitRateRatio+ComboRate*ComboRateRatio+MissRate*MissRateRatio+ParryRate*ParryRateRatio+SuckHPPer*SuckHPPerRatio+StunRateDef*StunRateDefRatio+SuperHitRateDef*SuperHitRateDefRatio+ComboRateDef*ComboRateDefRatio+MissRateDef*MissRateDefRatio+ParryRateDef*ParryRateDefRatio+SuckHPPerDef*SuckHPPerDefRatio+FinalDamPer*FinalDamPerRatio+FinalDamPerDef*FinalDamPerDefRatio+PhyDamPer*PhyDamPerRatio+PhyDamPerDef*PhyDamPerDefRatio+MagDamPer*MagDamPerRatio+MagDamPerDef*MagDamPerDefRatio+NormalSkillPer*NormalSkillPerRatio+NormalSkillPerDef*NormalSkillPerDefRatio+AngerSkillPer*AngerSkillPerRatio+AngerSkillPerDef*AngerSkillPerDefRatio+SuperDamPer*SuperDamPerRatio+SuperDamPerDef*SuperDamPerDefRatio+CurePer*CurePerRatio+CurePerDef*CurePerDefRatio+ShieldPer*ShieldPerRatio+ShieldPerDef*ShieldPerDefRatio+DOTPer*DOTPerRatio+DOTPerDef*DOTPerDefRatio+WeiFinalDamPer*WeiFinalDamPerRatio+WeiFinalDamPerDef*WeiFinalDamPerDefRatio+ShuFinalDamPer*ShuFinalDamPerRatio+ShuFinalDamPerDef*ShuFinalDamPerDefRatio+WuFinalDamPer*WuFinalDamPerRatio+WuFinalDamPerDef*WuFinalDamPerDefRatio+QunFinalDamPer*QunFinalDamPerRatio+QunFinalDamPerDef*QunFinalDamPerDefRatio+PVPDamPer*PVPDamPerRatio+PVPDamPerDef*PVPDamPerDefRatio)/100.0-55000); } public static double GetSkillsFightPower(Dictionary variables) { double SkillPower = variables["SkillPower"]; double OfficialLV = variables["OfficialLV"]; return SkillPower*OfficialLV; } }