源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

88 行
2.5 KiB

  1. -- <*
  2. -- @Author: Saber
  3. -- @Description: 转职系统任务界面技能item
  4. -- *>
  5. ReinTaskSkillItem = ReinTaskSkillItem or BaseClass(BaseItem)
  6. local ReinTaskSkillItem = ReinTaskSkillItem
  7. function ReinTaskSkillItem:__init(parent_wnd,prefab_asset,layer_name)
  8. self.base_file = "reincarnation"
  9. self.layout_file = "ReinTaskSkillItem"
  10. self.parent_wnd = parent_wnd
  11. self.layer_name = layer_name
  12. self.color_list = {
  13. [1] = ColorUtil.WHITE,
  14. [2] = ColorUtil.BLUE_DARK,
  15. [3] = ColorUtil.PURPLE_DARK,
  16. [4] = ColorUtil.ORANGE_DARK,
  17. }
  18. self.trans_size = 72 -- 技能图标大小
  19. self.size = 72
  20. self.model = ReincarnationModel:getInstance()
  21. self:Load()
  22. end
  23. function ReinTaskSkillItem:Load_callback()
  24. local nodes = {
  25. "skill_icon:obj:img", "name_bg:img", "skill_name:tmp",
  26. }
  27. self:GetChildren(nodes)
  28. self.skill_icon_img.raycastTarget = true
  29. self:AddEvents()
  30. if self.need_refreshData then
  31. self:UpdateView()
  32. end
  33. end
  34. function ReinTaskSkillItem:AddEvents( )
  35. local function click_event(target, x, y)
  36. if target == self.skill_icon_obj then
  37. if self.skill_id then
  38. local data = {
  39. skill_id = self.skill_id,
  40. title_name = "技能预览",
  41. }
  42. CommonController.Instance:Fire(EventName.OPEN_COMMON_SKILL_TIPS, data)
  43. end
  44. end
  45. end
  46. AddClickEvent(self.skill_icon_obj, click_event, LuaSoundManager.SOUND_UI.NONE)
  47. end
  48. function ReinTaskSkillItem:SetData(skill_id, index)
  49. self.skill_id = skill_id
  50. self.index = index
  51. if self.is_loaded then
  52. self.need_refreshData = false
  53. self:UpdateView()
  54. else
  55. self.need_refreshData = true
  56. end
  57. end
  58. function ReinTaskSkillItem:SetTransformSize(target_size)
  59. self.size = target_size or self.size
  60. if self.is_loaded then
  61. local scale = self.size / self.trans_size
  62. SetLocalScale(self.transform, scale)
  63. end
  64. end
  65. function ReinTaskSkillItem:UpdateView( )
  66. lua_resM:setOutsideImageSprite(self, self.skill_icon_img, GameResPath.GetSkillIcon(self.skill_id), false)
  67. self:SetTransformSize(self.size)
  68. if self.index then
  69. self.name_bg_img.enabled = true
  70. local cfg = ConfigItemMgr.Instance:GetSkillItem(self.skill_id)
  71. self.skill_name_tmp.text = HtmlColorTxt(Trim(cfg.name), self.color_list[self.index])
  72. else
  73. self.name_bg_img.enabled = false
  74. self.skill_name_tmp.text = ""
  75. end
  76. end
  77. function ReinTaskSkillItem:__delete( )
  78. end