-- <* -- @Author: Saber -- @Description: 转职系统任务界面技能item -- *> ReinTaskSkillItem = ReinTaskSkillItem or BaseClass(BaseItem) local ReinTaskSkillItem = ReinTaskSkillItem function ReinTaskSkillItem:__init(parent_wnd,prefab_asset,layer_name) self.base_file = "reincarnation" self.layout_file = "ReinTaskSkillItem" self.parent_wnd = parent_wnd self.layer_name = layer_name self.color_list = { [1] = ColorUtil.WHITE, [2] = ColorUtil.BLUE_DARK, [3] = ColorUtil.PURPLE_DARK, [4] = ColorUtil.ORANGE_DARK, } self.trans_size = 72 -- 技能图标大小 self.size = 72 self.model = ReincarnationModel:getInstance() self:Load() end function ReinTaskSkillItem:Load_callback() local nodes = { "skill_icon:obj:img", "name_bg:img", "skill_name:tmp", } self:GetChildren(nodes) self.skill_icon_img.raycastTarget = true self:AddEvents() if self.need_refreshData then self:UpdateView() end end function ReinTaskSkillItem:AddEvents( ) local function click_event(target, x, y) if target == self.skill_icon_obj then if self.skill_id then local data = { skill_id = self.skill_id, title_name = "技能预览", } CommonController.Instance:Fire(EventName.OPEN_COMMON_SKILL_TIPS, data) end end end AddClickEvent(self.skill_icon_obj, click_event, LuaSoundManager.SOUND_UI.NONE) end function ReinTaskSkillItem:SetData(skill_id, index) self.skill_id = skill_id self.index = index if self.is_loaded then self.need_refreshData = false self:UpdateView() else self.need_refreshData = true end end function ReinTaskSkillItem:SetTransformSize(target_size) self.size = target_size or self.size if self.is_loaded then local scale = self.size / self.trans_size SetLocalScale(self.transform, scale) end end function ReinTaskSkillItem:UpdateView( ) lua_resM:setOutsideImageSprite(self, self.skill_icon_img, GameResPath.GetSkillIcon(self.skill_id), false) self:SetTransformSize(self.size) if self.index then self.name_bg_img.enabled = true local cfg = ConfigItemMgr.Instance:GetSkillItem(self.skill_id) self.skill_name_tmp.text = HtmlColorTxt(Trim(cfg.name), self.color_list[self.index]) else self.name_bg_img.enabled = false self.skill_name_tmp.text = "" end end function ReinTaskSkillItem:__delete( ) end