|
|
- -- <*
- -- @Author: Saber
- -- @Description: 圣物装备分解建议tip节点
- -- *>
- PsionicArmorResolveTipItem = PsionicArmorResolveTipItem or BaseClass(BaseItem)
- local PsionicArmorResolveTipItem = PsionicArmorResolveTipItem
-
- function PsionicArmorResolveTipItem:__init(parent_wnd,prefab_asset,layer_name)
- self.base_file = "psionic"
- self.layout_file = "PsionicArmorResolveTipItem"
- self.parent_wnd = parent_wnd
- self.layer_name = layer_name
- self.height = 0
- self.cur_star_list = {}
- self.model = PsionicModel:getInstance()
- self.goods_model = GoodsModel:getInstance()
- self:Load()
- end
-
- function PsionicArmorResolveTipItem:Load_callback()
- local nodes = {
- -- 装备信息
- "equip_node:obj",
- "equip_node/equip_name:tmp",
- "equip_node/star_con",
- -- 突破信息
- "break_cond_lb:tmp", "line:obj",
- -- 其他tips
- "resolve_tip:tmp",
- }
- self:GetChildren(nodes)
-
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- end
-
- function PsionicArmorResolveTipItem:AddEvents( )
-
- end
-
- function PsionicArmorResolveTipItem:SetData( data )
- self.data = data
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- return self.height
- end
-
- function PsionicArmorResolveTipItem:InitItemNodes( )
- if self.equip_node_obj.activeSelf then
- self.equip_node_obj:SetActive(false)
- end
- -- 调整节点位置 --
- SetAnchoredPositionX(self.equip_node, -5)
- SetAnchoredPositionX(self.break_cond_lb, 48)
- SetAnchoredPositionX(self.resolve_tip, 20)
-
- self.break_cond_lb_tmp.text = ""
- self.resolve_tip_tmp.text = ""
- self.height = 0
- end
-
- function PsionicArmorResolveTipItem:UpdateView( )
- self:InitItemNodes()
- if self.data.equip_data then -- 装备名称和星数节点
- self.equip_node_obj:SetActive(true)
- local cur_star = 0
- if self.data.equip_data.goods_vo then
- self.equip_name_tmp.text = self.goods_model:getGoodsName(self.data.equip_data.goods_vo.type_id, true)
- cur_star = self.data.equip_data.goods_vo.star
- else
- self.equip_name_tmp.text = string.format("未穿戴%s", PsionicConst.EquipSlotName[self.data.equip_data.slot])
- end
- -- 创建星星
- for k, v in ipairs(self.cur_star_list) do
- v.gameObject:SetActive(false)
- end
- for i = 1, cur_star do
- self.cur_star_list[i] = self.cur_star_list[i] or UiFactory.createChild(self.star_con, UIType.Image2, "star" .. i)
- SetAnchoredPosition(self.cur_star_list[i].transform, (i-1) * 25 - 20, 0)
- self.cur_star_list[i].gameObject:SetActive(true)
- lua_resM:setImageSprite(self, self.cur_star_list[i]:GetComponent("Image"), "psionic_asset", "ps_star_1", true)
- end
-
- self.height = 35
- elseif self.data.break_cond then -- 装备突破需求节点
- local pos_name = PsionicConst.EquipSlotName[self.data.break_cond.slot]
-
- local cost_equip_cfg = self.data.break_cond.break_cfg
- if cost_equip_cfg then
- local cost_str = "突破需求 "
- for k, v in ipairs(cost_equip_cfg) do
- cost_str = cost_str .. string.format("%sx%s\n ",
- GoodsModel:getInstance():getGoodsName(v[2], true, true), v[3])
- end
- self.break_cond_lb_tmp.text = cost_str
- -- self.break_cond_lb_tmp.text = string.format("突破需求 <color=%s>%s%s灵装x%s</color>",
- -- WordManager.GetGoodsColor(cost_equip_cfg[1]), ColorUtil:getColorName(cost_equip_cfg[1]),
- -- pos_name, cost_equip_cfg[2])
- else
- self.break_cond_lb_tmp.text = string.format("请先穿戴一件%s装备", pos_name)
- end
- self.line_obj:SetActive(self.data.break_cond.show_line)
- self.height = self.break_cond_lb_tmp.preferredHeight < 35 and 35 or self.break_cond_lb_tmp.preferredHeight
- elseif self.data.tip_str then -- 其他提示
- self.resolve_tip_tmp.text = self.data.tip_str
-
- self.height = self.resolve_tip_tmp.preferredHeight + 17
- end
- end
-
- function PsionicArmorResolveTipItem:__delete( )
-
- end
|