HeroInfo.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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. public SkillComponent skillComponent;
  14. public string iconZhiYe
  15. {
  16. get{
  17. if (string.IsNullOrEmpty(_iconZhiYe))
  18. {
  19. switch (modelConfig.profession)
  20. {
  21. case 1 :
  22. _iconZhiYe = "icon_zy_Shield";
  23. break;
  24. case 2 :
  25. _iconZhiYe = "icon_zy_Hat";
  26. break;
  27. case 3 :
  28. _iconZhiYe = "icon_zy_Potion";
  29. break;
  30. case 4 :
  31. _iconZhiYe = "icon_zy_Bow";
  32. break;
  33. }
  34. }
  35. return _iconZhiYe;
  36. }
  37. }
  38. public void InitHero(AccountFileInfo.HeroData heroData)
  39. {
  40. modelID = heroData.heroModelId;
  41. isLead = heroData.isLead;
  42. SetDataConfig(heroData.heroModelId,
  43. heroData.heroPowerId,
  44. heroData.heroPromoteId);
  45. CalFactor();
  46. CalAttribute();
  47. skillComponent = new SkillComponent(this);
  48. }
  49. public HeroInfo Upgrade()
  50. {
  51. level.Value++;
  52. powerUpConfig = ConfigComponent.Instance.Get<HeroPowerUpConfig>(level.Value);
  53. CalFactor();
  54. CalBasicAttribute();
  55. PlayerManager.Instance.SaveHeroData(this);
  56. return this;
  57. }
  58. public HeroInfo Promote()
  59. {
  60. star.Value++;
  61. promoteConfig = ConfigComponent.Instance.Get<HeroPromoteConfig>(star.Value);
  62. CalFactor();
  63. CalBasicAttribute();
  64. PlayerManager.Instance.SaveHeroData(this);
  65. return this;
  66. }
  67. public AccountFileInfo.HeroData ToHeroData()
  68. {
  69. AccountFileInfo.HeroData heroData = new AccountFileInfo.HeroData
  70. {
  71. heroModelId = modelConfig.ID,
  72. heroPowerId = powerUpConfig.ID,
  73. heroPromoteId = promoteConfig.ID,
  74. isLead = isLead,
  75. };
  76. return heroData;
  77. }
  78. }
  79. }