using System.Collections.Generic; using Excel2Json; using Fort23.UTool; namespace GameLogic.Hero { public class HeroInfo : CombatHeroInfo { private string _iconZhiYe; /// /// 是否为主力英雄 /// public bool isLead; /// /// 技能数据 /// public SkillData SkillData; public string iconZhiYe { get{ if (string.IsNullOrEmpty(_iconZhiYe)) { switch (modelConfig.profession) { case 1 : _iconZhiYe = "icon_zy_Shield"; break; case 2 : _iconZhiYe = "icon_zy_Hat"; break; case 3 : _iconZhiYe = "icon_zy_Potion"; break; case 4 : _iconZhiYe = "icon_zy_Bow"; break; } } return _iconZhiYe; } } public void InitHero(AccountFileInfo.HeroData heroData) { modelID = heroData.heroModelId; isLead = heroData.isLead; SetDataConfig(heroData.heroModelId, heroData.heroPowerId, heroData.heroPromoteId); CalFactor(); CalAttribute(); SkillData = new SkillData(this); SkillData.InitSkills(); } public HeroInfo Upgrade() { level.Value++; powerUpConfig = ConfigComponent.Instance.Get(level.Value); CalFactor(); CalBasicAttribute(); PlayerManager.Instance.SaveHeroData(this); return this; } public HeroInfo Promote() { star.Value++; promoteConfig = ConfigComponent.Instance.Get(star.Value); CalFactor(); CalBasicAttribute(); PlayerManager.Instance.SaveHeroData(this); return this; } public AccountFileInfo.HeroData ToHeroData() { AccountFileInfo.HeroData heroData = new AccountFileInfo.HeroData { heroModelId = modelConfig.ID, heroPowerId = powerUpConfig.ID, heroPromoteId = promoteConfig.ID, isLead = isLead, }; return heroData; } } }