HeroInfo.cs 2.4 KB

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