| | |
| | | public long sid; |
| | | |
| | | // 武将配置表ID |
| | | public int heroId; |
| | | public int heroId |
| | | { |
| | | get |
| | | { |
| | | return itemHero.config.ID; |
| | | } |
| | | } |
| | | |
| | | // 武将等级 |
| | | public int heroLevel; |
| | |
| | | |
| | | // 武将突破等级 |
| | | public int breakLevel; |
| | | |
| | | // 武将觉醒等级 |
| | | public int awakeLevel; |
| | | |
| | | |
| | | public HeroCountry heroCountry |
| | |
| | | } |
| | | } |
| | | |
| | | public readonly ItemModel itemHero; |
| | | |
| | | #region 配置 |
| | | public readonly CB122_tagSCHeroInfo.tagSCHero scHeroInfo; |
| | | |
| | | // 武将配置 |
| | | public HeroConfig heroConfig; |
| | | |
| | | // 觉醒配置 |
| | | public HeroAwakeConfig awakeConfig; |
| | | |
| | | // 突破配置 |
| | | public HeroBreakConfig breakConfig; |
| | | |
| | | // 羁绊配置 |
| | | public HeroFetterConfig fetterConfig; |
| | | |
| | | // 品质觉醒配置 |
| | | public HeroQualityAwakeConfig qualityAwakeConfig; |
| | | |
| | | // 品质配置 |
| | | public HeroQualityConfig qualityConfig; |
| | | |
| | | // 品质突破配置 |
| | | public HeroQualityBreakConfig qualityBreakConfig; |
| | | |
| | | // 天赋配置 |
| | | public HeroTalentConfig talentConfig; |
| | | #endregion 配置 |
| | | public List<HeroFetterInfo> fetterInfoList = new List<HeroFetterInfo>(); |
| | | public List<HeroTalentInfo> talentList = new List<HeroTalentInfo>(); |
| | | |
| | | |
| | | public HeroSkillMgr heroSkillMgr; |
| | | |
| | | public HeroInfo(CB122_tagSCHeroInfo.tagSCHero scHeroInfo, ItemModel itemHero) |
| | | public HeroInfo(CB122_tagSCHeroInfo.tagSCHero _scHeroInfo, ItemModel _itemHero) |
| | | { |
| | | heroSkillMgr = new HeroSkillMgr(this); |
| | | scHeroInfo = _scHeroInfo; |
| | | itemHero = _itemHero; |
| | | |
| | | InitConfigs(); |
| | | // HeroConfigUtility |
| | | // 71 # 英雄天赋ID列表 |
| | | // 73 # 英雄天赋ID等级列表,对应71天赋ID的等级 |
| | | // 75 # 英雄天赋洗炼锁定索引列表,对应71天赋ID索引 |
| | | |
| | | // 70 # 英雄等级 |
| | | heroLevel = itemHero.GetUseData(70)[0]; |
| | | // 72 # 英雄星级 |
| | | heroStar = itemHero.GetUseData(72)[0]; |
| | | // 74 # 英雄突破等级 |
| | | breakLevel = itemHero.GetUseData(74)[0]; |
| | | // 76 # 英雄觉醒等级 |
| | | awakeLevel = itemHero.GetUseData(76)[0]; |
| | | // 78 # 英雄使用的皮肤索引 |
| | | SkinIndex = itemHero.GetUseData(78)[0]; |
| | | |
| | | // 71 # 英雄天赋ID列表 |
| | | List<int> talentSkillList = itemHero.GetUseData(71); |
| | | // 73 # 英雄天赋ID等级列表,对应71天赋ID的等级 |
| | | List<int> talentLvList = itemHero.GetUseData(73); |
| | | // 75 # 英雄天赋洗炼锁定索引列表,对应71天赋ID索引 |
| | | List<int> talentLockList = itemHero.GetUseData(75); |
| | | |
| | | if (talentLockList.Count != talentLvList.Count || talentLvList.Count != talentSkillList.Count) |
| | | { |
| | | Debug.LogError("天赋ID列表及后续的数据数量没对上"); |
| | | } |
| | | |
| | | // 天赋 |
| | | talentList.Clear(); |
| | | for (int i = 0; i < talentSkillList.Count; i++) |
| | | { |
| | | talentList.Add(new HeroTalentInfo(this, talentSkillList[i], talentLvList[i], talentLockList[i])); |
| | | } |
| | | |
| | | // 羁绊 |
| | | fetterInfoList.Clear(); |
| | | for (int i = 0; i < heroConfig.FetterIDList.Length; i++) |
| | | { |
| | | fetterInfoList.Add(new HeroFetterInfo(this, heroConfig.FetterIDList[i])); |
| | | } |
| | | |
| | | // 77 # 英雄天赋洗炼随机ID列表 |
| | | // 79 # 英雄觉醒时随机天赋选项ID列表 |
| | | // 70 # 英雄等级 |
| | | // 72 # 英雄星级 |
| | | // 74 # 英雄突破等级 |
| | | // 76 # 英雄觉醒等级 |
| | | // 78 # 英雄使用的皮肤索引 |
| | | // 80 # 主阵型上阵位置 |
| | | |
| | | #region 皮肤 |
| | | // skinConfig |
| | | #endregion 皮肤 |
| | | |
| | | |
| | | #region 天赋 |
| | | |
| | | #endregion 天赋 |
| | | |
| | | } |
| | | |
| | | protected void InitConfigs() |
| | | { |
| | | // 武将配置 |
| | | heroConfig = HeroConfig.Get(heroId); |
| | | |
| | | // 觉醒配置 (满级为空) |
| | | awakeConfig = HeroAwakeConfig.GetHeroAwakeConfig(heroId, awakeLevel); |
| | | |
| | | // 突破配置 |
| | | breakConfig = HeroBreakConfig.GetHeroBreakConfig(heroId, breakLevel); |
| | | |
| | | // 羁绊配置 可能需要fetterid 去检索效率太低 |
| | | // fetterConfig; |
| | | |
| | | // 品质觉醒配置 |
| | | qualityAwakeConfig = HeroQualityAwakeConfig.GetQualityAwakeConfig(Quality, awakeLevel); |
| | | |
| | | // 品质配置 |
| | | qualityConfig = HeroQualityConfig.Get(Quality); |
| | | |
| | | // 品质突破配置 |
| | | qualityBreakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(Quality, awakeLevel); |
| | | |
| | | } |
| | | |
| | | public int GetInheritRate(HeroAttrType attrType) |
| | | { |
| | | return heroConfig.GetInheritPercent(attrType); |
| | | } |
| | | } |