481 lines
22 KiB
Lua
481 lines
22 KiB
Lua
require("Base/BasePanel")
|
||
RoleEquipChangePopup = Inherit(BasePanel)
|
||
local this = RoleEquipChangePopup
|
||
local type --1 穿装备 2 卸装备 3 替换装备
|
||
local curHeroData
|
||
local curEquipData
|
||
local nextEquipData
|
||
local openThisPanel
|
||
local equipIdList
|
||
local equipDataList
|
||
local position
|
||
local curSuitProGo = {} --当前套装属性对象
|
||
local nextSuitProGo = {} --将要替换套装属性对象
|
||
local BaiJinProGo = {} --白金套装属性对象
|
||
local equipSuit = {} --当前英雄穿戴装备的套装信息 [suitId] = 件数
|
||
local baijinSuit = {} --当前英雄穿戴装备的白金套装信息 [suitId] = 件数
|
||
local equipSuiteConfig = ConfigManager.GetConfig(ConfigName.EquipSuiteConfig)
|
||
local propertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
|
||
local passiveSkillConfig = ConfigManager.GetConfig(ConfigName.PassiveSkillConfig)
|
||
local _MainProList = {}
|
||
local _NextProList = {}
|
||
local change
|
||
--初始化组件(用于子类重写)
|
||
function RoleEquipChangePopup:InitComponent()
|
||
this.spLoader = SpriteLoader.New()
|
||
|
||
this.btnBack = Util.GetGameObject(self.transform, "btnBack")
|
||
this.go = Util.GetGameObject(self.transform, "GameObject")
|
||
this.mainProItem = Util.GetGameObject(this.go, "curProName")
|
||
this.mainProItem:SetActive(false)
|
||
this.otherProPre = Util.GetGameObject(this.go, "otherPro")
|
||
this.otherProPre:SetActive(false)
|
||
this.baijinProPre = Util.GetGameObject(this.go, "baijinPro")
|
||
this.baijinProPre:SetActive(false)
|
||
this.equipPanel = {}
|
||
for i = 1, 2 do
|
||
if not this.equipPanel[i] then
|
||
this.equipPanel[i] = {}
|
||
this.equipPanel[i].bg = Util.GetGameObject(this.go, "bg" .. i)
|
||
this.equipPanel[i].equipInfo = Util.GetGameObject(this.equipPanel[i].bg, "equipInfo")
|
||
this.equipPanel[i].desc = Util.GetGameObject(this.equipPanel[i].equipInfo, "Text"):GetComponent("Text")
|
||
this.equipPanel[i].curEquipName = Util.GetGameObject(this.equipPanel[i].equipInfo, "name/text"):GetComponent(
|
||
"Text")
|
||
this.equipPanel[i].curEquipFrame = Util.GetGameObject(this.equipPanel[i].equipInfo, "frame"):GetComponent(
|
||
"Image")
|
||
this.equipPanel[i].curEquipIcon = Util.GetGameObject(this.equipPanel[i].equipInfo, "icon"):GetComponent(
|
||
"Image")
|
||
this.equipPanel[i].qualityText = Util.GetGameObject(this.equipPanel[i].equipInfo, "qualityText")
|
||
:GetComponent("Text")
|
||
this.equipPanel[i].powerNum1 = Util.GetGameObject(this.equipPanel[i].equipInfo, "powerNum"):GetComponent(
|
||
"Text")
|
||
this.equipPanel[i].powerUPorDown1 = Util.GetGameObject(this.equipPanel[i].equipInfo, "powerUPorDown")
|
||
this.equipPanel[i].bg1Star = Util.GetGameObject(this.equipPanel[i].equipInfo, "star")
|
||
this.equipPanel[i].proGrid = Util.GetGameObject(this.equipPanel[i].equipInfo, "proGrid")
|
||
this.equipPanel[i].effect = Util.GetGameObject(this.equipPanel[i].equipInfo, "UI_effect_WuCai_Kuang")
|
||
this.equipPanel[i].curEquipTypeText = Util.GetGameObject(this.equipPanel[i].proGrid, "equipTypeText")
|
||
:GetComponent("Text")
|
||
this.equipPanel[i].curEquipLvText = Util.GetGameObject(this.equipPanel[i].proGrid, "equipLvText")
|
||
this.equipPanel[i].curEquipLvText:SetActive(false)
|
||
this.equipPanel[i].curEquipOrOkText = Util.GetGameObject(this.equipPanel[i].proGrid, "equipOrOkText")
|
||
:GetComponent("Text")
|
||
this.equipPanel[i].curEquipPosText = Util.GetGameObject(this.equipPanel[i].proGrid, "equipPosText")
|
||
:GetComponent("Text")
|
||
|
||
this.equipPanel[i].rect = Util.GetGameObject(this.equipPanel[i].bg, "rect")
|
||
|
||
this.equipPanel[i].mainProGrid = Util.GetGameObject(this.equipPanel[i].bg, "rect/content/mainPro/bg")
|
||
|
||
this.equipPanel[i].curotherProscroll = Util.GetGameObject(this.equipPanel[i].bg, "rect/content/scroll")
|
||
this.equipPanel[i].otherProGrid = Util.GetGameObject(this.equipPanel[i].bg, "rect/content/scroll/grid")
|
||
|
||
|
||
this.equipPanel[i].baijinScroll = Util.GetGameObject(this.equipPanel[i].bg, "rect/content/baijin")
|
||
this.equipPanel[i].baijinProGrid = Util.GetGameObject(this.equipPanel[i].bg, "rect/content/baijin/grid")
|
||
|
||
this.equipPanel[i].castInfoObject = Util.GetGameObject(this.equipPanel[i].bg, "castInfoObject")
|
||
this.equipPanel[i].curCastInfo = Util.GetGameObject(this.equipPanel[i].castInfoObject, "castInfo")
|
||
:GetComponent("Text")
|
||
this.equipPanel[i].castInfoObject:SetActive(false)
|
||
|
||
this.equipPanel[i].btns = Util.GetGameObject(this.equipPanel[i].bg, "btns")
|
||
this.equipPanel[i].curEquipBtnRefresh = Util.GetGameObject(this.equipPanel[i].bg, "btns/btnRefresh")
|
||
this.equipPanel[i].curEquipBtnRefresh.gameObject:SetActive(false)
|
||
this.equipPanel[i].curEquipBtnDown = Util.GetGameObject(this.equipPanel[i].bg, "btns/btnChange")
|
||
this.equipPanel[i].curEquipBtnDownText = Util.GetGameObject(this.equipPanel[i].curEquipBtnDown, "Text")
|
||
:GetComponent("Text")
|
||
this.equipPanel[i].curEquipText = Util.GetGameObject(this.equipPanel[i].bg, "btns/curEquipText")
|
||
end
|
||
end
|
||
end
|
||
|
||
--绑定事件(用于子类重写)
|
||
function RoleEquipChangePopup:BindEvent()
|
||
Util.AddClick(this.btnBack, function()
|
||
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
|
||
self:ClosePanel()
|
||
end)
|
||
|
||
for i = 1, #this.equipPanel do
|
||
Util.AddClick(this.equipPanel[i].curEquipBtnDown, function()
|
||
equipIdList = {}
|
||
equipDataList = {}
|
||
if i == 1 then
|
||
table.insert(equipIdList, tostring(curEquipData.id))
|
||
table.insert(equipDataList, curEquipData)
|
||
if type == 1 then
|
||
NetManager.EquipWearRequest(curHeroData.dynamicId, equipIdList, 1, function()
|
||
self:ClosePanel()
|
||
openThisPanel.UpdateEquipPosHeroData(1, type, equipDataList, 0, position)
|
||
end)
|
||
else
|
||
NetManager.EquipUnLoadOptRequest(curHeroData.dynamicId, equipIdList, 1, function()
|
||
self:ClosePanel()
|
||
openThisPanel.UpdateEquipPosHeroData(1, type, equipDataList)
|
||
end)
|
||
end
|
||
elseif i == 2 then
|
||
table.insert(equipIdList, tostring(nextEquipData.id))
|
||
table.insert(equipDataList, nextEquipData)
|
||
NetManager.EquipWearRequest(curHeroData.dynamicId, equipIdList, 1, function()
|
||
self:ClosePanel()
|
||
openThisPanel.UpdateEquipPosHeroData(1, type, equipDataList, curEquipData, position)
|
||
end)
|
||
end
|
||
end)
|
||
end
|
||
end
|
||
|
||
--添加事件监听(用于子类重写)
|
||
function RoleEquipChangePopup:AddListener()
|
||
|
||
end
|
||
|
||
--移除事件监听(用于子类重写)
|
||
function RoleEquipChangePopup:RemoveListener()
|
||
|
||
end
|
||
|
||
--界面打开时调用(用于子类重写)
|
||
function RoleEquipChangePopup:OnOpen(...)
|
||
local data = { ... }
|
||
openThisPanel = data[1]
|
||
type = data[2] --1 穿戴 2 卸下 3 替换
|
||
LogRed("OpenType:" .. tostring(type))
|
||
if type == 1 or type == 2 then
|
||
curHeroData = data[3]
|
||
curEquipData = data[4]
|
||
position = data[5]
|
||
elseif type == 3 then
|
||
curHeroData = data[3]
|
||
curEquipData = data[4]
|
||
nextEquipData = data[5]
|
||
position = data[6]
|
||
elseif type == 4 then
|
||
curHeroData = data[3]
|
||
curEquipData = data[4]
|
||
nextEquipData = data[5]
|
||
position = data[6]
|
||
end
|
||
change = data[7]
|
||
end
|
||
|
||
function RoleEquipChangePopup:OnShow()
|
||
equipSuit = {}
|
||
baijinSuit = {}
|
||
if curHeroData then
|
||
equipSuit = HeroManager.GetCurHeroEquipSuitPros(curHeroData.equipIdList)
|
||
baijinSuit = HeroManager.GetCurHeroBaiJinEquipSuitPros(curHeroData.equipIdList)
|
||
end
|
||
if type == 1 then
|
||
this.equipPanel[2].bg:SetActive(false)
|
||
this.equipPanel[1].bg:SetActive(true)
|
||
this.equipPanel[1].curEquipText:SetActive(false)
|
||
this.equipPanel[1].curEquipBtnDown:SetActive(true)
|
||
this.equipPanel[1].curEquipBtnDownText.text = Language[12706]
|
||
this.ShowCurEquipData(1)
|
||
elseif type == 2 then
|
||
this.equipPanel[2].bg:SetActive(false)
|
||
this.equipPanel[1].bg:SetActive(true)
|
||
this.equipPanel[1].curEquipText:SetActive(false)
|
||
this.equipPanel[1].curEquipBtnDownText.text = Language[12707]
|
||
if HarmonyManager:IsShowGongMingEqiup(curHeroData.dynamicId) and curHeroData.harmonyGongMing then
|
||
this.equipPanel[1].curEquipBtnDown:SetActive(false)
|
||
else
|
||
this.equipPanel[1].curEquipBtnDown:SetActive(true)
|
||
end
|
||
this.ShowCurEquipData(1)
|
||
elseif type == 3 then
|
||
this.equipPanel[2].bg:SetActive(true)
|
||
this.equipPanel[1].bg:SetActive(false)
|
||
this.equipPanel[1].curEquipText:SetActive(true)
|
||
this.equipPanel[2].curEquipText:SetActive(false)
|
||
this.equipPanel[1].curEquipBtnDown:SetActive(false)
|
||
this.equipPanel[2].curEquipBtnDown:SetActive(true)
|
||
this.equipPanel[2].curEquipBtnDownText.text = Language[12708]
|
||
--"替 换"
|
||
-- this.ShowCurEquipData(2)
|
||
this.NextCurEquipData()
|
||
elseif type == 4 then
|
||
this.equipPanel[2].bg:SetActive(false)
|
||
this.equipPanel[1].bg:SetActive(true)
|
||
this.equipPanel[1].curEquipText:SetActive(false)
|
||
this.equipPanel[1].curEquipBtnDown:SetActive(false)
|
||
this.ShowCurEquipData(4)
|
||
end
|
||
if change and change == 0 then
|
||
for k, v in ipairs(this.equipPanel) do
|
||
v.btns.gameObject:SetActive(false)
|
||
end
|
||
else
|
||
for k, v in ipairs(this.equipPanel) do
|
||
v.btns.gameObject:SetActive(true)
|
||
end
|
||
end
|
||
for i = 1, #this.equipPanel do
|
||
ForceRebuildLayout(this.equipPanel[i].baijinProGrid.transform)
|
||
ForceRebuildLayout(this.equipPanel[i].rect.transform)
|
||
ForceRebuildLayout(this.equipPanel[i].bg.transform)
|
||
end
|
||
ForceRebuildLayout(this.go.transform)
|
||
end
|
||
|
||
function this.SetEquipData(index, data, equipConfigData, itemConfigData)
|
||
this.equipPanel[index].powerNum1.text = EquipManager.CalculateWarForce(data.id)
|
||
EquipManager.SetEquipStarShow(this.spLoader, this.equipPanel[index].bg1Star, data.id)
|
||
this.equipPanel[index].desc.text = GetLanguageStrById(itemConfigData.ItemDescribe)
|
||
this.equipPanel[index].effect:SetActive(equipConfigData.Quality >= 7)
|
||
this.equipPanel[index].qualityText.text = GetStringByEquipQua(equipConfigData.Quality,
|
||
GetQuaStringByEquipQua(equipConfigData.Quality))
|
||
this.equipPanel[index].curEquipName.text = GetStringByEquipQua(equipConfigData.Quality,
|
||
GetLanguageStrById(equipConfigData.Name))
|
||
this.equipPanel[index].curEquipFrame.sprite = this.spLoader:LoadSprite(GetQuantityImageByquality(equipConfigData
|
||
.Quality))
|
||
this.equipPanel[index].curEquipIcon.sprite = this.spLoader:LoadSprite(GetResourcePath(itemConfigData.ResourceID))
|
||
this.equipPanel[index].curEquipTypeText.text = string.format(Language[12308],
|
||
GetEquipPosStrByEquipPosNum(equipConfigData.Position))
|
||
-- local strPos=""
|
||
-- if equipConfigData.ProfessionLimit==0 then
|
||
-- strPos= "装备种类:%s"
|
||
-- else
|
||
-- strPos= "装备种类:%s"
|
||
-- end
|
||
-- this.equipPanel[index].curEquipPosText.text=string.format(strPos,GetJobStrByJobNum(equipConfigData.ProfessionLimit))
|
||
this.equipPanel[index].curEquipPosText.text = string.format(Language[12709],
|
||
GetEquipPosStrByEquipPosNum(equipConfigData.Position))
|
||
|
||
if not this.mainProList then
|
||
this.mainProList = {}
|
||
end
|
||
if not this.mainProList[index] then
|
||
this.mainProList[index] = {}
|
||
end
|
||
for _, item in ipairs(this.mainProList[index]) do
|
||
item:SetActive(false)
|
||
end
|
||
local mainAttribute = EquipManager.GetMainProList(equipConfigData)
|
||
for key, prop in ipairs(mainAttribute) do
|
||
local proConfigData = ConfigManager.GetConfigData(ConfigName.PropertyConfig, prop.propertyId)
|
||
if proConfigData then
|
||
if not this.mainProList[index][key] then
|
||
this.mainProList[index][key] = newObjToParent(this.mainProItem, this.equipPanel[index].mainProGrid)
|
||
end
|
||
this.mainProList[index][key]:SetActive(true)
|
||
this.mainProList[index][key]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
local vText = Util.GetGameObject(this.mainProList[index][key], "curProVale"):GetComponent("Text")
|
||
if prop.propertyValue > 0 then
|
||
vText.text = "+" .. GetPropertyFormatStr(proConfigData.Style, prop.propertyValue)
|
||
else
|
||
vText.text = GetPropertyFormatStr(proConfigData.Style, prop.propertyValue)
|
||
end
|
||
end
|
||
end
|
||
end
|
||
|
||
-- 1 当前 2 下一个
|
||
function this.ShowCurEquipData(index)
|
||
local equipConfigData = ConfigManager.GetConfigData(ConfigName.EquipConfig, curEquipData.id)
|
||
local itemConfigData = ConfigManager.GetConfigData(ConfigName.ItemConfig, curEquipData.id)
|
||
this.SetEquipData(1, curEquipData, equipConfigData, itemConfigData)
|
||
|
||
this.equipPanel[1].powerUPorDown1:SetActive(false)
|
||
if (nextEquipData ~= nil and index == 2) then
|
||
if (EquipManager.CalculateWarForce(nextEquipData.id) < EquipManager.CalculateWarForce(curEquipData.id)) then
|
||
this.equipPanel[1].powerUPorDown1:SetActive(true)
|
||
this.equipPanel[1].powerUPorDown1:GetComponent("Image").sprite = this.spLoader:LoadSprite(PowerChangeIconDef
|
||
[1])
|
||
elseif (EquipManager.CalculateWarForce(nextEquipData.id) > EquipManager.CalculateWarForce(curEquipData.id)) then
|
||
this.equipPanel[1].powerUPorDown1:SetActive(true)
|
||
this.equipPanel[1].powerUPorDown1:GetComponent("Image").sprite = this.spLoader:LoadSprite(PowerChangeIconDef
|
||
[2])
|
||
end
|
||
end
|
||
|
||
--套装属性
|
||
local endProList = {}
|
||
if type == 1 or #equipSuit <= 0 then
|
||
--LogGreen("equipConfigData.Star111111:"..equipConfigData.Star)
|
||
if equipSuiteConfig[equipConfigData.Star] then
|
||
for i = 1, #equipSuiteConfig[equipConfigData.Star].SuiteValue do
|
||
table.insert(endProList, { equipConfigData.Star, equipSuiteConfig[equipConfigData.Star].SuiteValue[i] })
|
||
end
|
||
end
|
||
else
|
||
endProList = equipSuit
|
||
end
|
||
if endProList and #endProList > 0 then
|
||
this.equipPanel[1].curotherProscroll:SetActive(true)
|
||
for i = 1, math.max(#endProList, #curSuitProGo) do
|
||
if not curSuitProGo[i] then
|
||
curSuitProGo[i] = newObjToParent(this.otherProPre, this.equipPanel[1].otherProGrid)
|
||
end
|
||
curSuitProGo[i].gameObject:SetActive(false)
|
||
end
|
||
for i = 1, #endProList do
|
||
local go = curSuitProGo[i]
|
||
go.gameObject:SetActive(true)
|
||
--type=data[2]--1 穿戴 2 卸下 3 替换
|
||
local proId = endProList[i][2][2]
|
||
local proVa = endProList[i][2][3]
|
||
local suitNum = endProList[i][2][1]
|
||
local Star = endProList[i][1]
|
||
LogGreen("#equipSuit:" .. tostring(#equipSuit))
|
||
if type ~= 1 and #equipSuit > 0 then --激活的要变颜色
|
||
Util.GetGameObject(go.transform, "curProName"):GetComponent("Text").text = "<color=#1CC853>" ..
|
||
GetLanguageStrById(propertyConfig[proId].Info) ..
|
||
"+ " .. GetPropertyFormatStr(propertyConfig[proId].Style, proVa) .. "</color>"
|
||
Util.GetGameObject(go.transform, "curProVale"):GetComponent("Text").text = "<color=#1CC853>(" ..
|
||
GetEquipSuitStr(Star, suitNum) .. ")</color>"
|
||
else
|
||
Util.GetGameObject(go.transform, "curProName"):GetComponent("Text").text = "<color=#B9AC97>" ..
|
||
GetLanguageStrById(propertyConfig[proId].Info) ..
|
||
"+ " .. GetPropertyFormatStr(propertyConfig[proId].Style, proVa) .. "</color>"
|
||
Util.GetGameObject(go.transform, "curProVale"):GetComponent("Text").text = "<color=#B9AC97>(" ..
|
||
GetEquipSuitStr(Star, suitNum) .. ")</color>"
|
||
end
|
||
end
|
||
else
|
||
this.equipPanel[1].curotherProscroll:SetActive(false)
|
||
end
|
||
|
||
-- 设置白金装备套装
|
||
this.SetBaijinProShow(1, curEquipData, equipConfigData, itemConfigData)
|
||
end
|
||
|
||
function this.NextCurEquipData()
|
||
local equipConfigData = ConfigManager.GetConfigData(ConfigName.EquipConfig, nextEquipData.id)
|
||
local itemConfigData = ConfigManager.GetConfigData(ConfigName.ItemConfig, nextEquipData.id)
|
||
this.SetEquipData(2, nextEquipData, equipConfigData, itemConfigData)
|
||
|
||
this.equipPanel[2].powerUPorDown1:SetActive(false)
|
||
if (EquipManager.CalculateWarForce(nextEquipData.id) > EquipManager.CalculateWarForce(curEquipData.id)) then
|
||
this.equipPanel[2].powerUPorDown1:SetActive(true)
|
||
this.equipPanel[2].powerUPorDown1:GetComponent("Image").sprite = this.spLoader:LoadSprite(PowerChangeIconDef[1])
|
||
elseif (EquipManager.CalculateWarForce(nextEquipData.id) < EquipManager.CalculateWarForce(curEquipData.id)) then
|
||
this.equipPanel[2].powerUPorDown1:SetActive(true)
|
||
this.equipPanel[2].powerUPorDown1:GetComponent("Image").sprite = this.spLoader:LoadSprite(PowerChangeIconDef[2])
|
||
end
|
||
|
||
--套装属性
|
||
--LogGreen("equipConfigData.Star:"..equipConfigData.Star)
|
||
if equipSuiteConfig[equipConfigData.Star] then
|
||
this.equipPanel[2].curotherProscroll:SetActive(true)
|
||
local curSuitConFig = equipSuiteConfig[equipConfigData.Star]
|
||
if curSuitConFig then
|
||
for i = 1, math.max(#curSuitConFig.SuiteValue, #nextSuitProGo) do
|
||
if not nextSuitProGo[i] then
|
||
nextSuitProGo[i] = newObjToParent(this.otherProPre, this.equipPanel[2].otherProGrid)
|
||
end
|
||
nextSuitProGo[i].gameObject:SetActive(false)
|
||
end
|
||
for i = 1, #curSuitConFig.SuiteValue do
|
||
local go = nextSuitProGo[i]
|
||
go.gameObject:SetActive(true)
|
||
--type=data[2]--1 穿戴 2 卸下 3 替换
|
||
Util.GetGameObject(go.transform, "curProName"):GetComponent("Text").text = "<color=#B9AC97>" ..
|
||
GetLanguageStrById(propertyConfig[curSuitConFig.SuiteValue[i][2]].Info) ..
|
||
"+ " ..
|
||
GetPropertyFormatStr(propertyConfig[curSuitConFig.SuiteValue[i][2]].Style,
|
||
curSuitConFig.SuiteValue[i]
|
||
[3]) .. "</color>"
|
||
Util.GetGameObject(go.transform, "curProVale"):GetComponent("Text").text = "<color=#B9AC97>(+" ..
|
||
GetEquipSuitStr(equipConfigData.Star, curSuitConFig.SuiteValue[i][1]) .. ")</color>"
|
||
end
|
||
end
|
||
else
|
||
this.equipPanel[2].curotherProscroll:SetActive(false)
|
||
end
|
||
|
||
-- 设置白金装备套装
|
||
this.SetBaijinProShow(2, curEquipData, equipConfigData, itemConfigData)
|
||
end
|
||
|
||
-- 设置白金装备套装显示
|
||
function this.SetBaijinProShow(CurOrNext, equipData, equipCfg, itemCfg)
|
||
local equipPanel = this.equipPanel[CurOrNext]
|
||
if not BaiJinProGo[CurOrNext] then
|
||
BaiJinProGo[CurOrNext] = {}
|
||
end
|
||
local proGoList = BaiJinProGo[CurOrNext]
|
||
|
||
local endProList = {}
|
||
local isGreen = false
|
||
if CurOrNext == 2 or type == 1 or #baijinSuit <= 0 then
|
||
if equipSuiteConfig[equipCfg.Star] and equipSuiteConfig[equipCfg.Star].SuiteSkill then
|
||
for i = 1, #equipSuiteConfig[equipCfg.Star].SuiteSkill do
|
||
table.insert(endProList, { equipCfg.Star, equipSuiteConfig[equipCfg.Star].SuiteSkill[i] })
|
||
end
|
||
end
|
||
else
|
||
endProList = baijinSuit
|
||
isGreen = true
|
||
end
|
||
if endProList and #endProList > 0 then
|
||
equipPanel.baijinScroll:SetActive(true)
|
||
-- this.SetScrollActive(CurOrNext, type == 3)
|
||
for i = 1, math.max(#endProList, #proGoList) do
|
||
if not proGoList[i] then
|
||
proGoList[i] = newObjToParent(this.baijinProPre, equipPanel.baijinProGrid)
|
||
end
|
||
proGoList[i].gameObject:SetActive(false)
|
||
end
|
||
for i = 1, #endProList do
|
||
local go = proGoList[i]
|
||
go.gameObject:SetActive(true)
|
||
--type=data[2]--1 穿戴 2 卸下 3 替换
|
||
local Star = endProList[i][1]
|
||
local suitNum = endProList[i][2][1]
|
||
local passiveId = endProList[i][2][2]
|
||
|
||
Util.GetGameObject(go.transform, "title"):GetComponent("Text").text = Language[12180] .. i .. ":"
|
||
if isGreen then --激活的要变颜色
|
||
go:GetComponent("Text").text = "<color=#1CC853>" ..
|
||
GetLanguageStrById(passiveSkillConfig[passiveId].Desc) .. "</color>"
|
||
Util.GetGameObject(go.transform, "title/vale"):GetComponent("Text").text = "<color=#1CC853>(" ..
|
||
GetEquipSuitStr(Star, suitNum) .. ")</color>"
|
||
else
|
||
go:GetComponent("Text").text = "<color=#B9AC97>" ..
|
||
GetLanguageStrById(passiveSkillConfig[passiveId].Desc) .. "</color>"
|
||
Util.GetGameObject(go.transform, "title/vale"):GetComponent("Text").text = "<color=#B9AC97>(" ..
|
||
GetEquipSuitStr(Star, suitNum) .. ")</color>"
|
||
end
|
||
end
|
||
else
|
||
equipPanel.baijinScroll:SetActive(false)
|
||
-- this.SetScrollActive(CurOrNext, false)
|
||
end
|
||
end
|
||
|
||
-- 开启白金套装后要可以滑动
|
||
function this.SetScrollActive(CurOrNext, isScroll)
|
||
local rect = this.equipPanel[CurOrNext].rect
|
||
if isScroll then
|
||
rect:GetComponent("VerticalLayoutGroup").enabled = false
|
||
rect:GetComponent("ContentSizeFitter").enabled = false
|
||
rect:GetComponent("ScrollRect").enabled = true
|
||
rect.transform.sizeDelta = Vector2.New(800, 400)
|
||
Util.GetGameObject(rect, "content").transform.localPosition = Vector2.New(-350, -100)
|
||
else
|
||
rect:GetComponent("VerticalLayoutGroup").enabled = true
|
||
rect:GetComponent("ContentSizeFitter").enabled = true
|
||
rect:GetComponent("ScrollRect").enabled = false
|
||
end
|
||
end
|
||
|
||
--界面关闭时调用(用于子类重写)
|
||
function RoleEquipChangePopup:OnClose()
|
||
end
|
||
|
||
--界面销毁时调用(用于子类重写)
|
||
function RoleEquipChangePopup:OnDestroy()
|
||
this.spLoader:Destroy()
|
||
curSuitProGo = {}
|
||
nextSuitProGo = {}
|
||
this.mainProList = {}
|
||
-- 重置数据
|
||
baijinSuit = {}
|
||
BaiJinProGo = {}
|
||
end
|
||
|
||
return RoleEquipChangePopup
|