using System.Collections.Generic; using System.Text; public partial class EquipGSParamConfig : IConfigPostProcess { private static Dictionary s_tagGSModelDict = new Dictionary();//用于记录装备评分数据 private static Dictionary _tagGsProValueDict = new Dictionary(); public void OnConfigParseCompleted() { string key = StringUtility.Contact(EquipClass, EquipColor, IsSuit); s_tagGSModelDict.Add(key, this); } public static EquipGSParamConfig GetGSModel(int lv, int color, int isSuit) { string key = StringUtility.Contact(lv, color, isSuit); EquipGSParamConfig gsModel = null; s_tagGSModelDict.TryGetValue(key, out gsModel); return gsModel; } public static Dictionary GetTagGsProValueDict(int lv, int color, int isSuit) { _tagGsProValueDict.Clear(); EquipGSParamConfig gsModel = GetGSModel(lv, color, isSuit); if (gsModel == null) return null; _tagGsProValueDict.Add(PropertyType.CritHurtPrecent, gsModel.SuperHitPerC); _tagGsProValueDict.Add(PropertyType.HeartHit, gsModel.LuckyHitRateC); _tagGsProValueDict.Add(PropertyType.EveryLvAddAtk, gsModel.PerLVAtkC); _tagGsProValueDict.Add(PropertyType.EveryLvAddHp, gsModel.PerLVMaxHPC); _tagGsProValueDict.Add(PropertyType.AddCoinsPrecent, gsModel.DropMoneyPerC); _tagGsProValueDict.Add(PropertyType.CritResis, gsModel.SuperHitReduceC); _tagGsProValueDict.Add(PropertyType.HIT, gsModel.HitC); _tagGsProValueDict.Add(PropertyType.MISS, gsModel.MissC); _tagGsProValueDict.Add(PropertyType.LuckPer, gsModel.LuckPerC); _tagGsProValueDict.Add(PropertyType.WeaponAtkPer, gsModel.BaseEquipAtkAddPerC); _tagGsProValueDict.Add(PropertyType.ArmorMaxHPPer, gsModel.BaseEquipMaxHPAddPerC); _tagGsProValueDict.Add(PropertyType.HeartResis, gsModel.LuckyHitRateReduceC); _tagGsProValueDict.Add(PropertyType.CritHurt, gsModel.SuperHitC); return _tagGsProValueDict; } }