/// <summary> /// 计算单张图鉴卡片得分 /// </summary> /// <param name="mannualBreakTemplate"></param> /// <param name="heroGrade"></param> /// <param name="heroLevel"></param> /// <returns></returns> public int HandleHandbookCardScore(Hotfix_LT.Data.MannualBreakTemplate mannualBreakTemplate, int heroGrade, int upgradeLevel) { Hotfix_LT.Data.MannualRoleGradeTemplate _CurrentRoleGradeInfo = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetMannualRoleGradeTempleteByRoleGrade(heroGrade); int baseScore = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetCharacterScoreByLevel(upgradeLevel); int originScore = (int)Math.Round(baseScore * _CurrentRoleGradeInfo.score_addition); int Score = originScore + (int)((float)originScore * mannualBreakTemplate.score_promotion); return(Score); }
public int GetTotleScore() { List <LTPartnerData> generalPL = LTPartnerDataManager.Instance.GetOwnPartnerList(); int totle = 0; for (int i = 0; i < generalPL.Count; ++i) { totle += Hotfix_LT.Data.CharacterTemplateManager.Instance.GetCharacterUpgradeScore(generalPL[i].UpGradeId); Hotfix_LT.Data.MannualRoleGradeTemplate roleGrade = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetMannualRoleGradeTempleteByRoleGrade(generalPL[i].HeroInfo.role_grade); if (roleGrade != null) { totle += roleGrade.ScoreList[generalPL[i].Star - 1]; } } return(totle); }
/// <summary> /// 获取指定图鉴位置的加成属性 /// </summary> /// <param name="attr">属性类型</param> /// <returns></returns> public float GetHandbookAddtionFromCard(LTPartnerData partner, IHandBookAddAttrType attr) { if (partner == null) { EB.Debug.LogError("Get Partner is null"); return(0); } //int race = partner.HeroInfo.race; //int charType = (int)partner.HeroInfo.char_type; float addNum = 0; if (TheHandbookList == null) { EB.Debug.LogError("LTPartnerHandbookManager.GetHandbookAddtionFromCard TheHandbookList is null"); return(0); } List <HandbookData> handbookDatas = TheHandbookList.Handbooks; if (handbookDatas == null) { EB.Debug.LogError("LTPartnerHandbookManager.GetHandbookAddtionFromCard handbookDatas is null"); return(0); } for (var i = 0; i < handbookDatas.Count; i++) { HandbookData bookData = handbookDatas[i]; if (bookData.HandbookId == partner.HeroInfo.char_type) { for (int j = 0; j < (LTPartnerConfig.MAX_HANDBOOKPAGE + 1); j++)//兼容多页签 { LTPartnerData cardPartner = bookData.CardsInfo[(int)attr + j * 5].SetHandBookCard(); if (cardPartner != null) { Hotfix_LT.Data.MannualRoleGradeTemplate roleGrade = Hotfix_LT.Data.CharacterTemplateManager.Instance.GetMannualRoleGradeTempleteByRoleGrade(cardPartner.HeroInfo.role_grade); if (roleGrade != null) { addNum += cardPartner.Star * roleGrade.star_addition * 100; } } } } } return(addNum); }