|
|
|
|
|
|
|
|
|
|
|
--seal尚未开始 请重做
|
|
|
|
SealToolTips = SealToolTips or BaseClass(BaseView)
|
|
|
|
function SealToolTips:__init()
|
|
self.base_file = "common"
|
|
self.layout_file = "EquipToolTips"
|
|
self.layer_name = "Top"
|
|
|
|
self.use_background = true
|
|
self.click_bg_toClose = true
|
|
self.close_mode = CloseMode.CloseDestroy
|
|
self.destroy_imm = true
|
|
self.goods_vo = nil
|
|
|
|
self.pos_x = 0
|
|
self.pos_y = 0
|
|
self.is_show_btn = false
|
|
self.show_compare_tips = false --是否需要显示对比tips
|
|
self.have_equip_data = nil --对比tips中,已穿戴的装备数据
|
|
|
|
self.model = GoodsModel:getInstance()
|
|
--self:AddPreLoadList("common",{"SealCompareTips", "SealToolDecomItem"})
|
|
|
|
self.seal_item_list = {}
|
|
|
|
self.load_callback = function ()
|
|
self:LoadSuccess()
|
|
end
|
|
self.open_callback = function ()
|
|
self.gameObject:SetActive(false)
|
|
if self.need_refresh then
|
|
self:InitView()
|
|
end
|
|
end
|
|
self.close_callback = function ()
|
|
|
|
end
|
|
self.destroy_callback = function ()
|
|
if self.icon_item then
|
|
self.icon_item:DeleteMe()
|
|
self.icon_item = nil
|
|
end
|
|
|
|
if self.compareTips then
|
|
self.compareTips:DeleteMe()
|
|
self.compareTips = nil
|
|
end
|
|
|
|
|
|
for i,v in ipairs(self.seal_item_list) do
|
|
v:DeleteMe()
|
|
v = nil
|
|
end
|
|
self.seal_item_list = {}
|
|
|
|
self:DeleteArrowTip()
|
|
if self.addNumComponent then
|
|
if self.change_count_id then
|
|
self.addNumComponent:UnBind(self.change_count_id)
|
|
self.change_count_id = nil
|
|
end
|
|
self.addNumComponent:DeleteMe()
|
|
self.addNumComponent = nil
|
|
end
|
|
end
|
|
end
|
|
|
|
function SealToolTips:InitEvent()
|
|
local function onClickBtnHandler(target)
|
|
if self.goods_vo and self.is_show_btn then
|
|
if target == self.strengthBtn then
|
|
SealModel:getInstance():Fire(SealModel.OPEN_SEAL_STREN_VIEW, self.goods_vo.subtype)
|
|
elseif target == self.wearBtn then
|
|
SealModel:getInstance():Fire(SealModel.REQUSET_PROTOCALS, 15501, self.goods_vo.goods_id)
|
|
elseif target == self.washBtn then
|
|
--[[if self.dynamic then
|
|
if #self.dynamic.equip_extra_attr > 0 then
|
|
EquipModel:getInstance():Fire(EquipModel.OPEN_EQUIP_WASH_VIEW, self.dynamic)
|
|
else
|
|
local function ok_callback()
|
|
GlobalEventSystem:Fire(EventName.OPEN_SEll_VIEW, self.goods_vo)
|
|
end
|
|
local str = Trim(self.goods_vo.goods_name) .. "装备已经没有附加属性,\n您可以出售它来换取金币"
|
|
Alert.show(str, Alert.Type.Two, ok_callback, nil,"出售", "取消")
|
|
end
|
|
end--]]
|
|
elseif target == self.insertBtn then
|
|
--GlobalEventSystem:Fire(EventName.OPEN_EQUIP_VIEW, self.goods_vo.cell)
|
|
elseif target == self.offBtn then
|
|
SealModel:getInstance():Fire(SealModel.REQUSET_PROTOCALS, 15502, self.goods_vo.goods_id)
|
|
elseif target == self.decomposeBtn then
|
|
local list = {}
|
|
list[self.goods_vo.goods_id] = self.goods_vo.goods_num
|
|
GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT, 15019, list)
|
|
--BagModel:getInstance():Fire(BagModel.OPEN_EQUIP_DECOMPOSE_VIEW, self.goods_vo)
|
|
elseif target == self.sellBtn then
|
|
if ItemUseModel:getInstance():IsEquipSpecialType(self.goods_vo.type_id) then
|
|
local function ok_callback()
|
|
GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT,15021,1,self.goods_vo.goods_id,1,self.goods_vo.type_id)
|
|
end
|
|
local basic = GoodsModel:getInstance():GetGoodsBasicByTypeId(self.goods_vo.type_id)
|
|
local str = "您正在出售<color='%s'>%s</color>\n可获得%s%s"
|
|
local price = GoodsModel:getInstance():GetSellPriceByTypeId(self.goods_vo.type_id)
|
|
str = string.format(str, ColorUtil:GetColor(basic.color), basic.goods_name,
|
|
WordManager:GetCommonMoneyStr(basic.sell_price_type), price)
|
|
Alert.show(str, Alert.Type.Two, ok_callback, nil,"确定", "取消")
|
|
else
|
|
GlobalEventSystem:Fire(EventName.OPEN_SEll_VIEW, self.goods_vo)
|
|
end
|
|
elseif target == self.storeBtn then
|
|
--GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT,15003,self.goods_vo.goods_id,GoodsModel.GOODS_POS_TYPE.bag,GoodsModel.GOODS_POS_TYPE.warehouse)
|
|
elseif target == self.takeBtn then
|
|
--[[if self.goods_vo.pos == GoodsModel.GOODS_POS_TYPE.hunt_store then
|
|
TreasureHuntModel:getInstance():Fire(TreasureHuntModel.REQUEST_PROTO, 41605, self.goods_vo.goods_id)
|
|
else
|
|
GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT,15003,self.goods_vo.goods_id,GoodsModel.GOODS_POS_TYPE.warehouse,GoodsModel.GOODS_POS_TYPE.bag)
|
|
end--]]
|
|
elseif target == self.exchangeBtn then
|
|
--GuildModel:getInstance():Fire(GuildModel.REQUEST_CCMD_EVENT,40103,self.goods_vo.goods_id,self.goods_vo.type_id,1)
|
|
elseif target == self.destoryBtn then
|
|
--[[UserMsgAdapter.WriteBegin(40104)
|
|
UserMsgAdapter.WriteFMT("h", 1)
|
|
UserMsgAdapter.WriteFMT("l", self.goods_vo.goods_id)
|
|
UserMsgAdapter.SendToGame()--]]
|
|
-- GuildModel:getInstance():Fire(GuildModel.REQUEST_CCMD_EVENT,40104,self.goods_vo.goods_id)
|
|
elseif target == self.donateBtn then
|
|
--GuildModel:getInstance():Fire(GuildModel.REQUEST_CCMD_EVENT,40102,self.goods_vo.goods_id,1)
|
|
elseif target == self.renewBtn then
|
|
GlobalEventSystem:Fire(EventName.OPEN_EXPIRED_VIEW, true, self.goods_vo.goods_id)
|
|
elseif target == self.shelvesUpBtn then
|
|
elseif target == self.shelvesDownBtn then
|
|
--MarketModel:getInstance():Fire(MarketModel.REQUEST_CCMD_EVENT, 15108, self.goods_vo.sell_type, self.goods_vo.id, self.goods_vo.type_id, self.goods_vo.goods_num)
|
|
elseif target == self.buyBtn then
|
|
--[[if self.buyNum then
|
|
MarketModel:getInstance():Fire(MarketModel.REQUEST_CCMD_EVENT, 15111, self.goods_vo.sell_type, self.goods_vo.id, self.goods_vo.player_id, self.goods_vo.type_id, self.buyNum, self.goods_vo.unit_price)
|
|
end--]]
|
|
end
|
|
end
|
|
self:Close()
|
|
end
|
|
AddClickEvent(self.strengthBtn, onClickBtnHandler)
|
|
AddClickEvent(self.wearBtn, onClickBtnHandler)
|
|
AddClickEvent(self.offBtn, onClickBtnHandler)
|
|
AddClickEvent(self.sellBtn, onClickBtnHandler)
|
|
AddClickEvent(self.washBtn, onClickBtnHandler)
|
|
AddClickEvent(self.insertBtn, onClickBtnHandler)
|
|
AddClickEvent(self.decomposeBtn, onClickBtnHandler)
|
|
AddClickEvent(self.storeBtn, onClickBtnHandler)
|
|
AddClickEvent(self.takeBtn, onClickBtnHandler)
|
|
AddClickEvent(self.exchangeBtn, onClickBtnHandler)
|
|
AddClickEvent(self.destoryBtn, onClickBtnHandler)
|
|
AddClickEvent(self.donateBtn, onClickBtnHandler)
|
|
AddClickEvent(self.renewBtn, onClickBtnHandler)
|
|
AddClickEvent(self.shelvesUpBtn, onClickBtnHandler)
|
|
AddClickEvent(self.shelvesDownBtn, onClickBtnHandler)
|
|
AddClickEvent(self.buyBtn, onClickBtnHandler)
|
|
|
|
local onChangeCountHandler = function (count)
|
|
self:ChangeBuyNum(count)
|
|
end
|
|
self.change_count_id = self.addNumComponent:Bind(ComponentEvent.AddNumberComponent.CHANGE_COUNT,onChangeCountHandler)
|
|
end
|
|
|
|
function SealToolTips:SetData()
|
|
if self.goods_vo == nil then return end
|
|
|
|
if self.is_loaded then
|
|
self.show_compare_tips, self.have_equip_data = SealModel:getInstance():ShowCompareTips(self.goods_vo.goods_id, self.goods_vo.subtype)
|
|
print("是否需要显示对比装备tips====:", self.show_compare_tips)
|
|
if self.show_compare_tips then
|
|
self.compare_conta.gameObject:SetActive(true)
|
|
self.compareTips = self.compareTips or SealCompareTips.New(self.compare_conta)
|
|
|
|
self.compareTips:SetData(self.have_equip_data)
|
|
else
|
|
self.compare_conta.gameObject:SetActive(false)
|
|
end
|
|
local basic = GoodsModel:getInstance():GetGoodsBasicByTypeId(self.goods_vo.type_id)
|
|
|
|
local color_str = ColorUtil.WHITE
|
|
if self.goods_vo.level > RoleManager.Instance.mainRoleInfo.level then
|
|
color_str = ColorUtil.RED
|
|
end
|
|
self.level.text = "<color="..color_str..">" .. self.goods_vo.level .. "</color>"
|
|
-- local index = Config.ConfigEquipShow[self.goods_vo.subtype].index
|
|
self.equip_pos.text = Trim(Config.Holysealpos[self.goods_vo.subtype].name)
|
|
self.fight.text = self.goods_vo.combat_power or 0
|
|
|
|
color_str = (self.goods_vo.career_id == 0 or RoleManager.Instance.mainRoleInfo.career == self.goods_vo.career_id) and ColorUtil.WHITE or ColorUtil.RED
|
|
local career_name = WordManager:GetRoleCareerName(basic.career_id,basic.turn)
|
|
self.career.text = "<color="..color_str..">" .. career_name .. "</color>"
|
|
|
|
self.depot_conta.gameObject:SetActive(false)
|
|
|
|
if self.goods_vo.goods_id then
|
|
local callback = function (dynamic)
|
|
if self.goods_vo.goods_id and dynamic and self.goods_vo.goods_id == dynamic.goods_id then
|
|
self.dynamic = dynamic
|
|
self.dynamic.stren = dynamic.stren or 0
|
|
local stren = ""
|
|
if dynamic.stren and dynamic.stren > 0 then
|
|
stren = "+" ..dynamic.stren
|
|
end
|
|
self.nameText.text = "<color="..WordManager.GetGoodsColor(self.dynamic.color)..">" .. self.goods_vo.goods_name .. stren .. "</color>"
|
|
local step = Config.Holysealgoods[self.goods_vo.type_id] and Config.Holysealgoods[self.goods_vo.type_id].stage or 0
|
|
self.step_num.text = "<color="..WordManager.GetGoodsColor(self.dynamic.color)..">" .. step .. "阶</color>"
|
|
|
|
self.icon_item:SetData(self.goods_vo)
|
|
self.composite_score.text = self.dynamic.overall_rating
|
|
self.equip_score.text = self.dynamic.rating
|
|
|
|
if basic then
|
|
local base_pro = ErlangParser:GetInstance():Parse(basic.base_attrlist)
|
|
self:SetProperty(base_pro, dynamic.stren, basic.subtype)
|
|
self.fight.text = dynamic.combat_power or 0
|
|
end
|
|
self:SetAddProperty(self.dynamic)
|
|
self:SetSpecialProperty(self.goods_vo)
|
|
self:SetSuitProperty(self.dynamic)
|
|
|
|
self:Refresh()
|
|
--self:ShowReDot()
|
|
end
|
|
end
|
|
GoodsModel:getInstance():GetDynamic(self.goods_vo.goods_id, callback)
|
|
elseif self.goods_vo.equip_extra_attr then
|
|
local stren = ""
|
|
self.nameText.text = "<color="..WordManager.GetGoodsColor(self.goods_vo.color)..">" .. self.goods_vo.goods_name .. stren .. "</color>"
|
|
local step = Config.Holysealgoods[self.goods_vo.type_id] and Config.Holysealgoods[self.goods_vo.type_id].stage or 0
|
|
self.step_num.text = "<color="..WordManager.GetGoodsColor(self.dynamic.color)..">" .. step .. "阶</color>"
|
|
|
|
self.icon_item:SetData(self.goods_vo)
|
|
self.composite_score.text = self.goods_vo.overall_rating
|
|
self.equip_score.text = self.goods_vo.rating
|
|
|
|
if basic then
|
|
local base_pro = ErlangParser:GetInstance():Parse(basic.base_attrlist)
|
|
self:SetProperty(base_pro, 0, basic.subtype)
|
|
-- self.fight.text = dynamic.combat_power or 0
|
|
end
|
|
self:SetAddProperty(self.goods_vo)
|
|
self:SetSpecialProperty(self.goods_vo)
|
|
|
|
--self.limitText.text = string.format("最大购买数量:%d", self.goods_vo.goods_num)
|
|
--self.addNumComponent:InitData(1, self.goods_vo.goods_num, 1, 1)
|
|
--self:ChangeBuyNum(1)
|
|
end
|
|
|
|
--self:SetSellState(self.goods_vo.sell, self.goods_vo.sell_price_type, self.goods_vo.type_id)
|
|
self:Refresh()
|
|
else
|
|
self.need_refresh = true
|
|
end
|
|
end
|
|
|
|
--设置基础属性
|
|
function SealToolTips:SetProperty(base_pro, stren, pos)
|
|
stren = stren or 0
|
|
local stren_config = SealModel:getInstance():GetStrengthConfig(pos, stren)
|
|
local name_str = ""
|
|
local pro_str = ""
|
|
local stren_str = ""
|
|
local pro_list = {}
|
|
if stren_config and Trim(stren_config.attr_list) ~= "[]" then
|
|
pro_list = ErlangParser:GetInstance():Parse(stren_config.attr_list)
|
|
end
|
|
for i,v in ipairs(base_pro) do
|
|
name_str = name_str .. WordManager:GetProperties(tonumber(v[1]))
|
|
pro_str = pro_str.."+" .. WordManager:GetPropertyValue(tonumber(v[1]),tonumber(v[2]))
|
|
for i2, v2 in ipairs(pro_list) do
|
|
if tonumber(v2[1]) == tonumber(v[1]) then
|
|
stren_str = stren_str .. "<color="..ColorUtil.GREEN..">(强化+" .. v2[2] .. ")</color>"
|
|
end
|
|
end
|
|
|
|
if i < #base_pro then
|
|
name_str = name_str.."\n"
|
|
pro_str = pro_str.."\n"
|
|
stren_str = stren_str.."\n"
|
|
end
|
|
end
|
|
self.baseName.text = name_str
|
|
self.basePro.text = pro_str
|
|
self.strengthAdd.text = stren_str
|
|
end
|
|
|
|
--设置附加属性
|
|
function SealToolTips:SetAddProperty(dynamic)
|
|
if dynamic and dynamic.equip_extra_attr then
|
|
local name_str = ""
|
|
local pro_str = ""
|
|
local recommand = ""
|
|
if self.type and self.type == EquipShowTips.EQUIP_RECOMMAND_TARGET then
|
|
recommand = "[推荐]"
|
|
end
|
|
|
|
if #dynamic.equip_extra_attr == 0 then
|
|
self.addName.text = "无"
|
|
self.addPro.text = ""
|
|
else
|
|
for i,v in ipairs(dynamic.equip_extra_attr) do
|
|
if v.type_id == 1 then
|
|
name_str = name_str .. "<color="..WordManager.GetGoodsColor(v.color)..">"..recommand.."每"..v.plus_interval.."级"..WordManager:GetProperties(tonumber(v.attr_id)).."</color>"
|
|
pro_str = pro_str .."<color="..WordManager.GetGoodsColor(v.color)..">+"..WordManager:GetPropertyValue(tonumber(v.attr_id), tonumber(v.plus_unit)) .. "</color>"
|
|
else
|
|
name_str = name_str .. "<color=" .. WordManager.GetGoodsColor(v.color) .. ">" ..recommand..WordManager:GetProperties(tonumber(v.attr_id)).."</color>"
|
|
pro_str = pro_str .. "<color="..WordManager.GetGoodsColor(v.color)..">+"..WordManager:GetPropertyValue(tonumber(v.attr_id), v.attr_val).."</color>"
|
|
end
|
|
if i < #dynamic.equip_extra_attr then
|
|
name_str = name_str .. "\n"
|
|
pro_str = pro_str .. "\n"
|
|
end
|
|
end
|
|
self.addName.text = name_str
|
|
self.addPro.text = pro_str
|
|
end
|
|
end
|
|
end
|
|
|
|
--设置特殊属性
|
|
function SealToolTips:SetSpecialProperty(goodsVo)
|
|
self.wash_name.text = "特殊属性"
|
|
if goodsVo then
|
|
if Config.Holysealgoods[goodsVo.type_id] then
|
|
local name_str = ""
|
|
local pro_str = ""
|
|
local attr = ErlangParser:GetInstance():Parse(Config.Holysealgoods[goodsVo.type_id].special_attr)
|
|
for i,v in ipairs(attr) do
|
|
name_str = name_str .. WordManager:GetProperties(tonumber(v[1]))
|
|
pro_str = pro_str .. "+" .. WordManager:GetPropertyValue(tonumber(v[1]), tonumber(v[2]))
|
|
if i < #attr then
|
|
name_str = name_str .. "\n"
|
|
pro_str = pro_str .. "\n"
|
|
end
|
|
end
|
|
self.washName.text = name_str
|
|
self.washPro.text = pro_str
|
|
end
|
|
end
|
|
end
|
|
|
|
--设置分解
|
|
function SealToolTips:SetDecompose(goodsVo)
|
|
self.stone_name.text = "分解获得"
|
|
local cfg = Config.Goodsdecompose[goodsVo.type_id]
|
|
if cfg then
|
|
local list = ErlangParser:GetInstance():Parse(cfg.regular_mat)
|
|
for i, v in ipairs(list) do
|
|
local item = self.seal_item_list[i]
|
|
if item == nil then
|
|
item = SealToolDecomItem.New(self.stone_conta)
|
|
self.seal_item_list[i] = item
|
|
end
|
|
item:SetData(v)
|
|
end
|
|
return 25 * #list
|
|
end
|
|
return 25
|
|
end
|
|
|
|
--设置套装属性
|
|
function SealToolTips:SetSuitProperty(dynamic, subtype, isOther)
|
|
local suit_id = Config.Holysealgoods[dynamic.type_id] and Config.Holysealgoods[dynamic.type_id].suit_id
|
|
local suit_num
|
|
if self.show_compare_tips then
|
|
suit_num = 0
|
|
elseif isOther then
|
|
suit_num = dynamic.suit_count
|
|
else
|
|
suit_num = SealModel:getInstance():GetSuitNum(suit_id) or 0
|
|
end
|
|
local config = Config.Holysealsuit[suit_id]
|
|
if config then
|
|
self.suit_name.text = Trim(config.name).."("..suit_num.."/"..config.max_count..")"
|
|
local attr = ErlangParser:GetInstance():Parse(config.attr_list)
|
|
if attr and #attr > 0 then
|
|
local num_str = ""
|
|
local name_str = ""
|
|
local pro_str = ""
|
|
for i, v in ipairs(attr) do
|
|
local color
|
|
if suit_num >= tonumber(v[1]) then
|
|
color = ColorUtil.GREEN
|
|
else
|
|
color = ColorUtil.GRAY
|
|
end
|
|
|
|
num_str = num_str.."<color="..color..">【"..v[1].."件】</color>"
|
|
for i2, v2 in ipairs(v[3]) do
|
|
name_str = name_str .."<color="..color..">"..WordManager:GetProperties(tonumber(v2[1])).."</color>"
|
|
pro_str = pro_str .."<color="..color..">+"..WordManager:GetPropertyValue(tonumber(v2[1]), tonumber(v2[2])).."</color>"
|
|
if i < #attr or i2 < #v[3] then
|
|
num_str = num_str.."\n"
|
|
name_str = name_str.."\n"
|
|
pro_str = pro_str.."\n"
|
|
end
|
|
end
|
|
end
|
|
self.suitNum.text = num_str
|
|
self.suitName.text = name_str
|
|
self.suitPro.text = pro_str
|
|
end
|
|
end
|
|
end
|
|
|
|
--刷新相关控件的位置
|
|
function SealToolTips:Refresh()
|
|
if self.goods_vo and self.goods_vo.goods_id then
|
|
local is_bag = self.model.seal_goods_dic[self.goods_vo.goods_id] and true or false
|
|
self:RefreshPosAndSize(self.dynamic)
|
|
self:SetRootPos()
|
|
self:SetBtns(is_bag)
|
|
elseif self.goods_vo and self.goods_vo.equip_extra_attr then
|
|
self:RefreshPosAndSize(self.goods_vo)
|
|
self:SetRootPos()
|
|
self:SetBtns(false)
|
|
end
|
|
end
|
|
|
|
--更新各个控件的位置
|
|
function SealToolTips:RefreshPosAndSize(dynamic)
|
|
local off_y = 0
|
|
off_y = self.basePro.preferredHeight + 15
|
|
self.baseName.transform.sizeDelta = Vector2(self.baseName.transform.sizeDelta.x, off_y)
|
|
self.basePro.transform.sizeDelta = Vector2(self.basePro.transform.sizeDelta.x, off_y)
|
|
self.strengthAdd.transform.sizeDelta = Vector2(self.strengthAdd.transform.sizeDelta.x, off_y)
|
|
off_y = off_y + 30
|
|
|
|
local show_add = false
|
|
if dynamic then
|
|
show_add = true
|
|
end
|
|
if show_add then
|
|
self.line2.gameObject:SetActive(true)
|
|
self.addName.gameObject:SetActive(true)
|
|
self.addPro.gameObject:SetActive(true)
|
|
|
|
self.line2.localPosition = Vector3(0, -off_y, 0)
|
|
off_y = off_y + 30
|
|
self.addName.transform.localPosition = Vector2(self.addName.transform.localPosition.x, -off_y)
|
|
self.addPro.transform.localPosition = Vector2(self.addPro.transform.localPosition.x, -off_y)
|
|
self.addName.transform.sizeDelta = Vector2(self.addName.transform.sizeDelta.x, self.addName.preferredHeight + 15)
|
|
self.addPro.transform.sizeDelta = Vector2(self.addPro.transform.sizeDelta.x, self.addPro.preferredHeight + 15)
|
|
off_y = off_y + self.addPro.preferredHeight + 15
|
|
else
|
|
self.line2.gameObject:SetActive(false)
|
|
self.addName.gameObject:SetActive(false)
|
|
self.addPro.gameObject:SetActive(false)
|
|
end
|
|
|
|
local show_wash = false
|
|
if dynamic and Config.Holysealgoods[dynamic.type_id] then
|
|
show_wash = true
|
|
end
|
|
if show_wash then
|
|
self.line5.gameObject:SetActive(true)
|
|
self.washName.gameObject:SetActive(true)
|
|
self.washPro.gameObject:SetActive(true)
|
|
|
|
self.line5.localPosition = Vector3(0, -off_y, 0)
|
|
off_y = off_y + 30
|
|
self.washName.transform.localPosition = Vector3(self.washName.transform.localPosition.x, -off_y, 0)
|
|
self.washName.transform.sizeDelta = Vector2(self.washName.transform.sizeDelta.x, self.washName.preferredHeight + 15)
|
|
self.washPro.transform.localPosition = Vector3(self.washPro.transform.localPosition.x, -off_y, 0)
|
|
self.washPro.transform.sizeDelta = Vector2(self.washPro.transform.sizeDelta.x, self.washPro.preferredHeight + 15)
|
|
off_y = off_y + self.washPro.preferredHeight + 15
|
|
else
|
|
self.line5.gameObject:SetActive(false)
|
|
self.washName.gameObject:SetActive(false)
|
|
self.washPro.gameObject:SetActive(false)
|
|
end
|
|
|
|
local show_spirit = false
|
|
--[[if dynamic and dynamic.cspirit_stage and dynamic.cspirit_lv and dynamic.cspirit_stage > 0 and dynamic.cspirit_lv > 0 then
|
|
show_spirit = true
|
|
end--]]
|
|
if show_spirit then
|
|
self.line6.gameObject:SetActive(true)
|
|
self.spiritName.gameObject:SetActive(true)
|
|
self.spiritPro.gameObject:SetActive(true)
|
|
|
|
self.line6.localPosition = Vector3(0, -off_y, 0)
|
|
off_y = off_y + 30
|
|
self.spiritName.transform.localPosition = Vector3(self.spiritName.transform.localPosition.x, -off_y, 0)
|
|
self.spiritName.transform.sizeDelta = Vector2(self.spiritName.transform.sizeDelta.x, self.spiritName.preferredHeight + 15)
|
|
self.spiritPro.transform.localPosition = Vector3(self.spiritPro.transform.localPosition.x, -off_y, 0)
|
|
self.spiritPro.transform.sizeDelta = Vector2(self.spiritPro.transform.sizeDelta.x, self.spiritPro.preferredHeight + 15)
|
|
off_y = off_y + self.spiritPro.preferredHeight + 10
|
|
else
|
|
self.line6.gameObject:SetActive(false)
|
|
self.spiritName.gameObject:SetActive(false)
|
|
self.spiritPro.gameObject:SetActive(false)
|
|
end
|
|
|
|
local show_stone = false
|
|
if dynamic and Config.Goodsdecompose[dynamic.type_id] then
|
|
show_stone = true
|
|
end
|
|
if show_stone then
|
|
self.line3.localPosition = Vector3(0, -off_y, 0)
|
|
off_y = off_y + 30
|
|
self.line3.gameObject:SetActive(true)
|
|
self.stone_conta.gameObject:SetActive(true)
|
|
local height = self:SetDecompose(dynamic)
|
|
self.stone_conta.sizeDelta = Vector2(self.stone_conta.sizeDelta.x, height)
|
|
self.stone_conta.localPosition = Vector3(self.stone_conta.localPosition.x, -off_y, 0)
|
|
off_y = off_y + height + 15
|
|
else
|
|
self.line3.gameObject:SetActive(false)
|
|
self.stone_conta.gameObject:SetActive(false)
|
|
end
|
|
|
|
local show_suit = false
|
|
if dynamic then
|
|
local suit_id = Config.Holysealgoods[dynamic.type_id] and Config.Holysealgoods[dynamic.type_id].suit_id
|
|
if suit_id and Config.Holysealsuit[suit_id] then
|
|
show_suit = true
|
|
end
|
|
end
|
|
if show_suit then
|
|
self.line4.gameObject:SetActive(true)
|
|
self.suitNum.gameObject:SetActive(true)
|
|
self.suitName.gameObject:SetActive(true)
|
|
self.suitPro.gameObject:SetActive(true)
|
|
|
|
self.line4.localPosition = Vector3(0, -off_y, 0)
|
|
off_y = off_y + 30
|
|
self.suitNum.transform.localPosition = Vector3(self.suitNum.transform.localPosition.x, -off_y, 0)
|
|
self.suitNum.transform.sizeDelta = Vector2(self.suitNum.transform.sizeDelta.x, self.suitNum.preferredHeight + 15)
|
|
self.suitName.transform.localPosition = Vector3(self.suitName.transform.localPosition.x, -off_y, 0)
|
|
self.suitName.transform.sizeDelta = Vector2(self.suitName.transform.sizeDelta.x, self.suitName.preferredHeight + 15)
|
|
self.suitPro.transform.localPosition = Vector3(self.suitPro.transform.localPosition.x, -off_y, 0)
|
|
self.suitPro.transform.sizeDelta = Vector2(self.suitPro.transform.sizeDelta.x, self.suitPro.preferredHeight + 15)
|
|
off_y = off_y + self.suitPro.preferredHeight + 15
|
|
else
|
|
self.line4.gameObject:SetActive(false)
|
|
self.suitNum.gameObject:SetActive(false)
|
|
self.suitName.gameObject:SetActive(false)
|
|
self.suitPro.gameObject:SetActive(false)
|
|
end
|
|
|
|
self.line7.gameObject:SetActive(false)
|
|
self.wake_baseName.gameObject:SetActive(false)
|
|
self.wake_basePro.gameObject:SetActive(false)
|
|
|
|
self.line8.gameObject:SetActive(false)
|
|
self.wake_strenName.gameObject:SetActive(false)
|
|
self.wake_strenPro.gameObject:SetActive(false)
|
|
|
|
self.line9.gameObject:SetActive(false)
|
|
self.wake_suitNum.gameObject:SetActive(false)
|
|
self.wake_suitName.gameObject:SetActive(false)
|
|
self.wake_suitPro.gameObject:SetActive(false)
|
|
|
|
self.line10.gameObject:SetActive(false)
|
|
self.magic_skillName.gameObject:SetActive(false)
|
|
self.magic_skillLevel.gameObject:SetActive(false)
|
|
|
|
-- if off_y > 451 then
|
|
-- self.down_arrow.localPosition = Vector3(150, -621.6, 0)
|
|
-- self.sell_conta.localPosition = Vector3(22, -643.5, 0)
|
|
-- self.ScrollView.sizeDelta = Vector2(287, 451)
|
|
self.ScrollViewContent.sizeDelta = Vector2(self.ScrollViewContent.sizeDelta.x, off_y)
|
|
-- self.ScrollViewViewport.sizeDelta = Vector2(276, 451)
|
|
-- self.transform.sizeDelta = Vector2(328, 685)
|
|
-- self.bg.sizeDelta = Vector2(328, 711)
|
|
-- else
|
|
-- self.down_arrow.localPosition = Vector3(150, -off_y + self.ScrollView.localPosition.y + 20, 0)
|
|
-- self.sell_conta.localPosition = Vector3(22, -off_y + self.ScrollView.localPosition.y, 0)
|
|
-- self.ScrollView.sizeDelta = Vector2(287, off_y)
|
|
-- self.ScrollViewContent.sizeDelta = Vector2(276, off_y)
|
|
-- self.ScrollViewViewport.sizeDelta = Vector2(276, off_y)
|
|
-- self.transform.sizeDelta = Vector2(328, off_y - self.ScrollView.localPosition.y + 60)
|
|
-- self.bg.sizeDelta = Vector2(328, off_y - self.ScrollView.localPosition.y + 60)
|
|
-- end
|
|
|
|
if self.ScrollViewContent.sizeDelta.y > 451 then
|
|
self.down_arrow.gameObject:SetActive(true)
|
|
else
|
|
self.down_arrow.gameObject:SetActive(false)
|
|
end
|
|
|
|
--[[--小天使小恶魔,位置改变
|
|
self.expired_label.gameObject:SetActive(false)
|
|
self.descCon.gameObject:SetActive(false)
|
|
self.ScrollViewViewport.transform.sizeDelta = Vector2(326, 447)
|
|
if self.goods_vo.type==10 and self.goods_vo.subtype==11 then
|
|
local basic = GoodsModel:getInstance():GetGoodsBasicByTypeId(self.goods_vo.type_id)
|
|
self.bg.sizeDelta = Vector2(335, 507)
|
|
self.career_conta.transform.anchoredPosition = Vector3(-61, 394, 0)
|
|
self.ScrollView.transform.anchoredPosition = Vector3(-3.5, -165, 0)
|
|
self.ScrollViewViewport.transform.sizeDelta = Vector2(326, 136)
|
|
self.ui_line1.transform.anchoredPosition = Vector3(113, -115, 0)
|
|
self.ui_line2.transform.anchoredPosition = Vector3(110, -253, 0)
|
|
self.descCon.transform.anchoredPosition = Vector3(-3.5, -351, 0)
|
|
self.descCon.gameObject:SetActive(true)
|
|
self.descLabel.text = Trim(basic.intro)
|
|
self.getWayLabel.text = Trim(basic.getway)
|
|
|
|
if self.goods_vo.expire_time then
|
|
if self.goods_vo.expire_time == 0 then
|
|
self.expired_label.gameObject:SetActive(false)
|
|
else
|
|
self.expired_label.gameObject:SetActive(true)
|
|
local text = ""
|
|
if TimeUtil:getServerTime() > self.goods_vo.expire_time then
|
|
text = "<color=#de4141>已过期</color>"
|
|
else
|
|
local time = self.goods_vo.expire_time - TimeUtil:getServerTime()
|
|
text = string.format("<color=#ff8a3c>【%s】后过期</color>",TimeUtil:timeConvert6(time))
|
|
end
|
|
self.expired_label:GetComponent("Text").text = text
|
|
self.expired_label.transform.sizeDelta = Vector2(280, 30)
|
|
self.expired_label.transform.anchoredPosition = Vector3(114, -96, 0)
|
|
end
|
|
end
|
|
end--]]
|
|
end
|
|
|
|
--按钮显示
|
|
function SealToolTips:SetBtns(is_bag)
|
|
for i,v in ipairs(self.btn_list) do
|
|
v:SetActive(false)
|
|
end
|
|
local btn_list = {}
|
|
|
|
if is_bag then --背包中的装备
|
|
btn_list = {self.wearBtn}
|
|
|
|
if Config.Goodsdecompose[self.goods_vo.type_id] then
|
|
table.insert(btn_list, self.decomposeBtn)
|
|
end
|
|
else --已经穿上的装备
|
|
btn_list = {self.strengthBtn, self.offBtn}
|
|
end
|
|
|
|
local buy_pos_y = 0
|
|
if self.show_btn_list then
|
|
btn_list = self:ShowCustomBtns()
|
|
if TableContains(self.show_btn_list, "buyCon") then
|
|
buy_pos_y = 100
|
|
end
|
|
end
|
|
|
|
for i,v in ipairs(btn_list) do
|
|
v:SetActive(true)
|
|
local y = (i - 1) * 50
|
|
v.transform.localPosition = Vector3(0, -y, 0)
|
|
end
|
|
|
|
self.btn_conta.sizeDelta = Vector2(self.btn_conta.sizeDelta.x, #btn_list * 53)
|
|
local pos_y = self.layout.sizeDelta.y - self.btn_conta.sizeDelta.y + 20
|
|
--prefab做了自适应处理,固定在底部就行了
|
|
if self.goods_vo.type==10 and self.goods_vo.subtype==11 then
|
|
self.btn_conta.transform.anchoredPosition = Vector3(self.btn_conta.transform.anchoredPosition.x, -401, 0)
|
|
else
|
|
self.btn_conta.anchoredPosition = Vector2(self.btn_conta.anchoredPosition.x, -600)
|
|
end
|
|
end
|