|
|
- SkillUIAttrOne = SkillUIAttrOne or BaseClass(BaseItem)
-
- function SkillUIAttrOne:__init(parent_wnd, prefab_asset, layer_name)
- self.base_file = "skillUI"
- self.layout_file = "SkillUIAttrOne"
- self.layer_name = "Top"
- self.lv_str = ""
- self.text_str = ""
- self.b_cur = false
- self.b_toggle = false
- self.pos = false
- self.showing_effect = false
- self.will_show_effect = false
- self.is_select = false
- self:Load()
- end
-
- function SkillUIAttrOne:Load_callback()
- local nodes = {
- "toggle:obj",
- "cur:obj",
- "text:tmp",
- "lv_text:tmp" ,
- "effect_con",
- "bg:obj",
- "toggle_bg:obj",
- "select:obj",
- }
- self:GetChildren(nodes)
- if self.need_refreshData then
- self:SetData(self.lv_str, self.text_str, self.b_cur, self.b_toggle, self.pos)
- self:WillShowEffect(self.will_show_effect)
- self:SetSelect(self.is_select)
- end
- end
-
- function SkillUIAttrOne:SetData(lv_str, text_str, b_cur, b_toggle, pos)
- self.lv_str = lv_str
- self.text_str = text_str
- self.b_cur = b_cur
- self.b_toggle = b_toggle
- self.pos = pos
- if self.is_loaded then
- self.lv_text_tmp.text = lv_str
- self.text_tmp.text = text_str
- --self.cur_obj:SetActive(self.b_cur)
- self.cur_obj:SetActive(false)
- self.toggle_obj:SetActive(self.b_toggle)
- self.toggle_bg_obj:SetActive(not self.b_toggle)
- self.bg_obj:SetActive(self.pos % 2 == 1)
-
- -- local w = self.lv_text_tmp.preferredWidth
- -- if w <= 40 then
- -- SetAnchoredPositionX(self.text, 97)
- -- SetSizeDeltaX(self.text, 240)
- -- else
- -- SetAnchoredPositionX(self.text, 97 + w - 40)
- -- SetSizeDeltaX(self.text, 280 - w)
- -- end
- SetSizeDeltaY(self.transform, self.text_tmp.preferredHeight+28)
- SetSizeDeltaY(self.bg, self.text_tmp.preferredHeight+28)
- SetSizeDeltaY(self.select, self.text_tmp.preferredHeight+34)
-
- if self.text_tmp.preferredHeight > 30 then
- SetLocalScale(self.effect_con, 1, 1.6, 1.6)
- else
- SetLocalScale(self.effect_con, 1, 1.2, 1.2)
- end
- else
- self.need_refreshData = true
- end
- end
-
- function SkillUIAttrOne:__delete()
- self:ClearAllUIEffect()
- end
-
- function SkillUIAttrOne:WillShowEffect(show)
- self.will_show_effect = show
- if self.is_loaded then
- if self.will_show_effect then
- self.will_show_effect = false
- self:AddEffect()
- end
- else
- self.need_refreshData = true
- end
- end
-
- function SkillUIAttrOne:ClearAllUIEffect()
- if self.is_loaded then
- self:ClearUIEffect(self.effect_con)
- end
- end
-
- function SkillUIAttrOne:WillShowEffect(show)
- self.will_show_effect = show
- if self.is_loaded then
- if self.will_show_effect then
- self.will_show_effect = false
- self:AddEffect()
- end
- else
- self.need_refreshData = true
- end
- end
-
- function SkillUIAttrOne:SetSelect(is_select)
- self.is_select = is_select
- if self.is_loaded then
- self.select_obj:SetActive(self.is_select)
- else
- self.need_refreshData = true
- end
- end
-
- function SkillUIAttrOne:AddEffect()
- if not self.showing_effect then
- local function call_back( )
- self.showing_effect = false
- end
- self:ClearUIEffect(self.effect_con)
- self:AddUIEffect("ui_jinjieshuxing", self.effect_con, self.layer_name, Vector3(-170,0,0), 1, false, 0.75, false, call_back)
- self.showing_effect = true
- end
- end
-
|