public TotalSkillStat GetTotalSkillStat() { TotalSkillStat totalSkillStat = new TotalSkillStat(); for (int i = 0; i < skill.Count; i++) { CalculationSkillStat(totalSkillStat, skill[i].rowSkill.valueType, i); } return(totalSkillStat); }
private void CalculationSkillStat(TotalSkillStat totalSkillStat, string type, int index) { switch (type) { case "Deffence": totalSkillStat.defMultiple += DEFAULT_SKILL_MULTIPLE + (skill[index].rowSkill.value * skill[index].skillLevel); break; case "Attack": totalSkillStat.atkMultiple += DEFAULT_SKILL_MULTIPLE + (skill[index].rowSkill.value * skill[index].skillLevel); break; case "Hp": totalSkillStat.hpMultiple += DEFAULT_SKILL_MULTIPLE + (skill[index].rowSkill.value * skill[index].skillLevel); break; case "Dmg": totalSkillStat.skillValueMultiple = DEFAULT_SKILL_MULTIPLE + (skill[index].rowSkill.value * skill[index].skillLevel); break; } }
public TotalStat GetTotalStats() { TotalStat totalStat = new TotalStat(); TotalWeaponStat totalWeaponStat = GetTotlaWEaponStat(); TotalSkillStat totalSkillStat = GetTotalSkillStat(); TotalCollectionWeaponStat totalCollectionWeaponStat = GetTotalCollectionWeapon(); totalStat.atk = (int)((characterRow.atk + totalWeaponStat.atk + EnchantLevel) * totalSkillStat.atkMultiple + totalCollectionWeaponStat.atk); totalStat.def = (int)((characterRow.def + totalWeaponStat.def + EnchantLevel) * totalSkillStat.defMultiple + totalCollectionWeaponStat.def); totalStat.hp = (int)((characterRow.hp + totalWeaponStat.hp + EnchantLevel) * totalSkillStat.hpMultiple + totalCollectionWeaponStat.hp); totalStat.accuracyRate = 90 + totalCollectionWeaponStat.accuracyRate; totalStat.avoidanceRate = 10 + totalCollectionWeaponStat.avoidanceRate; totalStat.skillValue = totalSkillStat.skillValueMultiple; return(totalStat); }