cfg_equip_angelTalentLv_post.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. ---@class cfg_equip_angelTalentLv_post
  2. cfg_equip_angelTalentLv_post = class()
  3. local this = cfg_equip_angelTalentLv_post
  4. ---@type table<number,table<number,cfg_equip_angelTalentLv_column>>
  5. local skillId2TalentLvTbl = {}
  6. local function Init()
  7. ---@type cfg_equip_angelTalentLv_column[]
  8. local cfgTbls = SL:GetConfigTable('cfg_equip_angelTalentLv')
  9. local skillId = 0
  10. local skillLv = 0
  11. for i, v in pairs(cfgTbls) do
  12. ---@type cfg_equip_angelTalent_column
  13. local talentTbl = SL:GetConfig("cfg_equip_angelTalent", v.talentId)
  14. if talentTbl.talentType == 2 then
  15. if v.parameter[1] then
  16. skillId = v.parameter[1][1]
  17. skillLv = v.parameter[1][2]
  18. else
  19. logError("cfg_equip_angelTalentLv parameter==nil , id = " .. v.id)
  20. skillId = 0
  21. skillLv = 0
  22. end
  23. if skillId > 0 and skillLv > 0 then
  24. if not skillId2TalentLvTbl[skillId] then
  25. skillId2TalentLvTbl[skillId] = {}
  26. end
  27. skillId2TalentLvTbl[skillId][skillLv] = v
  28. end
  29. end
  30. end
  31. end
  32. Init()
  33. ---@return cfg_equip_angelTalentLv_column
  34. this.GetAngleTalentLvTbl = function(skillId, skillLv)
  35. return skillId2TalentLvTbl[skillId] and skillId2TalentLvTbl[skillId][skillLv]
  36. end
  37. this.IsAngelTalentSkill = function(skillId)
  38. ---@type cfg_skill_column
  39. local skillTbl = SL:GetConfig('cfg_skill', skillId)
  40. return skillTbl.group == 5
  41. end