HeroInfo.cs 2.3 KB

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