HeroInfo.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using System.Collections.Generic;
  2. using Excel2Json;
  3. using Fort23.UTool;
  4. namespace GameLogic.Hero
  5. {
  6. public class HeroInfo : CombatHeroInfo
  7. {
  8. private string _iconZhiYe;
  9. /// <summary>
  10. /// 是否为主力英雄
  11. /// </summary>
  12. public bool isLead;
  13. /// <summary>
  14. /// 技能数据
  15. /// </summary>
  16. // public SkillData SkillData;
  17. public string iconZhiYe
  18. {
  19. get{
  20. if (string.IsNullOrEmpty(_iconZhiYe))
  21. {
  22. switch (modelConfig.profession)
  23. {
  24. case 1 :
  25. _iconZhiYe = "icon_zy_Shield";
  26. break;
  27. case 2 :
  28. _iconZhiYe = "icon_zy_Hat";
  29. break;
  30. case 3 :
  31. _iconZhiYe = "icon_zy_Potion";
  32. break;
  33. case 4 :
  34. _iconZhiYe = "icon_zy_Bow";
  35. break;
  36. }
  37. }
  38. return _iconZhiYe;
  39. }
  40. }
  41. public void InitHero(AccountFileInfo.HeroData heroData)
  42. {
  43. modelID = heroData.heroModelId;
  44. isLead = heroData.isLead;
  45. SetDataConfig(heroData.heroModelId,
  46. heroData.heroPowerId,
  47. heroData.heroPromoteId);
  48. CalFactor();
  49. CalAttribute();
  50. SkillData = new SkillData(this);
  51. SkillData.InitSkills();
  52. }
  53. public HeroInfo Upgrade()
  54. {
  55. level.Value++;
  56. powerUpConfig = ConfigComponent.Instance.Get<HeroPowerUpConfig>(level.Value);
  57. CalFactor();
  58. CalBasicAttribute();
  59. PlayerManager.Instance.SaveHeroData(this);
  60. return this;
  61. }
  62. public HeroInfo Promote()
  63. {
  64. star.Value++;
  65. promoteConfig = ConfigComponent.Instance.Get<HeroPromoteConfig>(star.Value);
  66. CalFactor();
  67. CalBasicAttribute();
  68. PlayerManager.Instance.SaveHeroData(this);
  69. return this;
  70. }
  71. public AccountFileInfo.HeroData ToHeroData()
  72. {
  73. AccountFileInfo.HeroData heroData = new AccountFileInfo.HeroData
  74. {
  75. heroModelId = modelConfig.ID,
  76. heroPowerId = powerUpConfig.ID,
  77. heroPromoteId = promoteConfig.ID,
  78. isLead = isLead,
  79. };
  80. return heroData;
  81. }
  82. }
  83. }