SkillInfo.cs 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. using System;
  2. using Core.Utility;
  3. using Excel2Json;
  4. using Fort23.UTool;
  5. namespace GameLogic.Hero
  6. {
  7. public class SkillInfo
  8. {
  9. public long qiangDu;
  10. public SkillConfig skillConfig;
  11. public SkillPowerupConfig SkillPowerupConfig;
  12. public int index;
  13. public float[] effectValue;
  14. public SkillInfo(int skill ,int skillPowerup)
  15. {
  16. skillConfig = ConfigComponent.Instance.Get<SkillConfig>(skill);
  17. SkillPowerupConfig = ConfigComponent.Instance.Get<SkillPowerupConfig>(skillPowerup);
  18. effectValue = new float[skillConfig.effectValue.Length];
  19. Array.Copy(skillConfig.effectValue, effectValue, skillConfig.effectValue.Length);
  20. if (skillConfig.intensifierIndex != null)
  21. {
  22. for (int i = 0; i < skillConfig.intensifierIndex.Length; i++)
  23. {
  24. int index = skillConfig.intensifierIndex[i] - 1;
  25. if (index >= 0 && index < effectValue.Length)
  26. {
  27. effectValue[index] = effectValue[index] * SkillPowerupConfig.SkillPower1 * 0.01f;
  28. }
  29. }
  30. }
  31. qiangDu = (long)(SkillPowerupConfig.MainPower * skillConfig.power);
  32. index = 0;
  33. }
  34. public SkillInfo(AccountFileInfo.SkillData skillId)
  35. {
  36. skillConfig = ConfigComponent.Instance.Get<SkillConfig>(skillId.id * 10 + skillId.star - 1);
  37. SkillPowerupConfig = ConfigComponent.Instance.Get<SkillPowerupConfig>(skillId.level);
  38. effectValue = new float[skillConfig.effectValue.Length];
  39. Array.Copy(skillConfig.effectValue, effectValue, skillConfig.effectValue.Length);
  40. if (skillConfig.intensifierIndex != null)
  41. {
  42. for (int i = 0; i < skillConfig.intensifierIndex.Length; i++)
  43. {
  44. int index = skillConfig.intensifierIndex[i] - 1;
  45. if (index >= 0 && index < effectValue.Length)
  46. {
  47. effectValue[index] = effectValue[index] * SkillPowerupConfig.SkillPower1 * 0.01f;
  48. }
  49. }
  50. }
  51. qiangDu = (long)(SkillPowerupConfig.MainPower * skillConfig.power);
  52. index = 0;
  53. }
  54. }
  55. }