684 lines
33 KiB
Lua
684 lines
33 KiB
Lua
require("Base/BasePanel")
|
||
local RewardEquipSingleShowPopup2 = Inherit(BasePanel)
|
||
local itemConfig=ConfigManager.GetConfig(ConfigName.ItemConfig)
|
||
local propertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
|
||
local passiveSkillConfig = ConfigManager.GetConfig(ConfigName.PassiveSkillConfig)
|
||
local EquipStrengthen = ConfigManager.GetConfig(ConfigName.EquipStrengthen)
|
||
local EquipRankUp = ConfigManager.GetConfig(ConfigName.EquipRankUp)
|
||
local suitConFig = ConfigManager.GetConfig(ConfigName.EquipSuiteConfig)
|
||
local _BaseProList = {}--基础属性对象
|
||
local _homeProList = {}--摘星阁属性对象
|
||
local _suitProList = {}--套装属性对象
|
||
local _superProList = {}--白金属性对象
|
||
local equipConfigData
|
||
local typeToUpdate = {
|
||
[2] = 2,--已穿戴->卸载单件
|
||
[3] = 1,--未穿戴->穿单件
|
||
[4] = 3,--未穿戴->替换单件
|
||
}
|
||
--初始化组件(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:InitComponent()
|
||
self.spLoader = SpriteLoader.New()
|
||
self.mask = Util.GetGameObject(self.transform, "mask")
|
||
self.content = Util.GetGameObject(self.transform, "Content")
|
||
--装备详情--topBar
|
||
self.topBar = Util.GetGameObject(self.transform, "Content/topBar")
|
||
self.eqiopName = Util.GetGameObject(self.topBar, "name"):GetComponent("Text")
|
||
self.UI_effect_WuCai_Kuang = Util.GetGameObject(self.topBar, "UI_effect_WuCai_Kuang")
|
||
self.c_ui_qinyan_duan = Util.GetGameObject(self.topBar, "c_ui_qinyan_duan")
|
||
self.icon = Util.GetGameObject(self.topBar, "icon"):GetComponent("Image")
|
||
self.frame = Util.GetGameObject(self.topBar, "frame"):GetComponent("Image")
|
||
self.equipType=Util.GetGameObject(self.topBar, "equipType"):GetComponent("Text")
|
||
self.equipQuaText=Util.GetGameObject(self.topBar, "equipQuaText"):GetComponent("Text")
|
||
self.equipInfoText=Util.GetGameObject(self.topBar, "equipInfoText"):GetComponent("Text")
|
||
self.powerNum=Util.GetGameObject(self.topBar, "powerNum"):GetComponent("Text")
|
||
self.star=Util.GetGameObject(self.topBar, "star")
|
||
self.powerNumUpDown = Util.GetGameObject(self.topBar, "powerUPorDown"):GetComponent("Image")
|
||
self.effectbaijin = Util.GetGameObject(self.topBar, "fx_zhuangbeijiemian")
|
||
self.hLv = Util.GetGameObject(self.topBar, "hLv"):GetComponent("Text")--家园摘星阁强化
|
||
self.hProLv = Util.GetGameObject(self.topBar, "hProLv"):GetComponent("Text")--家园摘星阁突破
|
||
--装备属性--midBar
|
||
--basePro
|
||
self.midBar = Util.GetGameObject(self.transform, "Content/midBar")
|
||
self.basePro = Util.GetGameObject(self.midBar, "basePro")
|
||
self.baseProName = Util.GetGameObject(self.basePro, "PropertyName"):GetComponent("Text")
|
||
self.baseProGrid = Util.GetGameObject(self.basePro, "grid")
|
||
self.baseProPre = Util.GetGameObject(self.basePro, "grid/curProName")
|
||
self.baseProPre:SetActive(false)
|
||
--homePro
|
||
self.homePro = Util.GetGameObject(self.midBar, "homePro")
|
||
self.homeProName = Util.GetGameObject(self.homePro, "PropertyName"):GetComponent("Text")
|
||
self.homeProGrid = Util.GetGameObject(self.homePro, "grid")
|
||
self.homeProPre = Util.GetGameObject(self.homePro, "grid/curProName")
|
||
self.homeProPre:SetActive(false)
|
||
self.btnJumpHome = Util.GetGameObject(self.homePro, "btnJump")
|
||
--suitPro
|
||
self.suitPro = Util.GetGameObject(self.midBar, "suitPro")
|
||
self.suitProName = Util.GetGameObject(self.suitPro, "PropertyName"):GetComponent("Text")
|
||
self.suitProGrid = Util.GetGameObject(self.suitPro, "proGrid")
|
||
self.suitProPre = Util.GetGameObject(self.suitPro, "proGrid/proPre")
|
||
self.suitProPre:SetActive(false)
|
||
--superPro
|
||
self.superPro = Util.GetGameObject(self.midBar, "superPro")
|
||
self.superProGrid = Util.GetGameObject(self.superPro, "proGrid")
|
||
self.superProPre = Util.GetGameObject(self.superPro, "proGrid/Desc")
|
||
self.superProPre:SetActive(false)
|
||
|
||
--分解按钮--btmBar
|
||
self.btmBar = Util.GetGameObject(self.transform, "Content/btmBar")
|
||
self.howGet = Util.GetGameObject(self.btmBar, "howGet")
|
||
self.btnGrid = Util.GetGameObject(self.btmBar, "btnGrid")
|
||
self.btnSure = Util.GetGameObject(self.btnGrid, "btnSure")
|
||
self.btnJump = Util.GetGameObject(self.btnGrid, "btnJump")
|
||
self.btnWear = Util.GetGameObject(self.btnGrid, "btnWear")
|
||
self.btnDown = Util.GetGameObject(self.btnGrid, "btnDown")
|
||
self.btnSwitch = Util.GetGameObject(self.btnGrid, "btnSwitch")
|
||
--装备获取途径--btmBar
|
||
self.canGetPre = Util.GetGameObject(self.btmBar, "scroll/canGetPre")
|
||
self.canGetGrid = Util.GetGameObject(self.btmBar, "scroll")
|
||
self.canGetScrollView = SubUIManager.Open(SubUIConfig.ScrollCycleView, self.canGetGrid.transform,self.canGetPre, nil,
|
||
Vector2.New(self.canGetGrid.transform.rect.width, self.canGetGrid.transform.rect.height), 1, 1, Vector2.New(0, 0))
|
||
self.canGetScrollView.moveTween.MomentumAmount = 1
|
||
self.canGetScrollView.moveTween.Strength = 2
|
||
self.canGetScrollView.elastic = false
|
||
self.jumpViewList = {}
|
||
end
|
||
|
||
--绑定事件(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:BindEvent()
|
||
Util.AddClick(self.mask, function()
|
||
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
|
||
self:ClosePanel()
|
||
end)
|
||
--跳转
|
||
Util.AddClick(self.btnJump, function()
|
||
if self.equipData.itemConfig then
|
||
JumpManager.GoJump(self.equipData.itemConfig.UseJump)
|
||
end
|
||
end)
|
||
--分解
|
||
Util.AddClick(self.btnSure, function()
|
||
--数量大于1 ,弹选择框
|
||
if BagManager.GetItemCountById(self.equipData.id) > 1 then
|
||
UIManager.OpenPanel(UIName.GeneralPopup,GENERAL_POPUP_TYPE.EquipSingleSell,self.equipData)
|
||
self:ClosePanel()
|
||
elseif BagManager.GetItemCountById(self.equipData.id) == 1 then
|
||
--只有一个,分解品质大于4, 弹框
|
||
if self.equipData.itemConfig.Quantity>=4 then
|
||
UIManager.OpenPanel(UIName.BagResolveAnCompoundPanel,2,self.equipData.itemConfig.ItemBaseType,self.equipData)
|
||
else
|
||
local curResolveAllItemList={}
|
||
local equip = {}
|
||
equip.itemId = self.equipData.id
|
||
equip.itemNum = 1
|
||
table.insert(curResolveAllItemList,equip)
|
||
local type = 1
|
||
NetManager.UseAndPriceItemRequest(type,curResolveAllItemList,function (drop)
|
||
self:SendBackResolveReCallBack(drop)
|
||
end)
|
||
end
|
||
else
|
||
PopupTipPanel.ShowTip(Language[11506])
|
||
end
|
||
end)
|
||
--穿戴
|
||
Util.AddOnceClick(self.btnWear, function()
|
||
|
||
if equipConfigData.Position==7 or equipConfigData.Position==8 then
|
||
local idList={}
|
||
table.insert(idList,self.equipData.id)
|
||
local heroId=""
|
||
if self.curHeroData then
|
||
heroId=self.curHeroData.dynamicId
|
||
else
|
||
heroId="0"
|
||
end
|
||
NetManager.GiftEquipWearRequest(1,heroId,idList,function()
|
||
self:ClosePanel()
|
||
if heroId=="0" then
|
||
GiftManager.SetPlayerGift(idList)
|
||
HeroManager.ChangeAllHeroGiftLV()
|
||
else
|
||
GiftManager.SetHeroGift(self.curHeroData.dynamicId,idList,1)
|
||
end
|
||
self.parent.RefreshWindowData()
|
||
end)
|
||
else
|
||
local equipIdList={}
|
||
local equipDataList={}
|
||
table.insert(equipIdList,tostring(self.equipData.id))
|
||
table.insert(equipDataList,self.equipData)
|
||
NetManager.EquipWearRequest(self.curHeroData.dynamicId,equipIdList,1,function ()
|
||
self:ClosePanel()
|
||
self.parent.UpdateEquipPosHeroData(1,typeToUpdate[self.openType],equipDataList,0,self.position)
|
||
end)
|
||
|
||
end
|
||
|
||
end)
|
||
--卸下
|
||
Util.AddOnceClick(self.btnDown, function()
|
||
|
||
if equipConfigData.Position==7 or equipConfigData.Position==8 then
|
||
local idList={}
|
||
local heroId=""
|
||
if self.curHeroData then
|
||
heroId=self.curHeroData.dynamicId
|
||
else
|
||
heroId="0"
|
||
end
|
||
LogError("2222222222222222222222"..heroId)
|
||
LogError("self.equipData.id==="..self.equipData.id)
|
||
|
||
table.insert(idList,self.equipData.id)
|
||
--table.insert(idList,5200020)
|
||
NetManager.GiftEquipWearRequest(2,heroId,idList,function()
|
||
self:ClosePanel()
|
||
if heroId=="0" then
|
||
GiftManager.RemovePlayerGift(idList)
|
||
HeroManager.ChangeAllHeroGiftLV()
|
||
else
|
||
GiftManager.SetHeroGift(self.curHeroData.dynamicId,idList,2)
|
||
end
|
||
self.parent.RefreshWindowData()
|
||
end)
|
||
else
|
||
local equipIdList={}
|
||
local equipDataList={}
|
||
table.insert(equipIdList,tostring(self.equipData.id))
|
||
table.insert(equipDataList,self.equipData)
|
||
NetManager.EquipUnLoadOptRequest(self.curHeroData.dynamicId,equipIdList ,1, function ()
|
||
self:ClosePanel()
|
||
self.parent.UpdateEquipPosHeroData(1,typeToUpdate[self.openType],equipDataList)
|
||
end)
|
||
end
|
||
|
||
end)
|
||
|
||
--替换
|
||
Util.AddClick(self.btnSwitch, function()
|
||
local equipIdList={}
|
||
local equipDataList={}
|
||
table.insert(equipIdList,tostring(self.equipData.id))
|
||
table.insert(equipDataList,self.equipData)
|
||
NetManager.EquipWearRequest(self.curHeroData.dynamicId,equipIdList ,1, function ()
|
||
self:ClosePanel()
|
||
self.parent.UpdateEquipPosHeroData(1,typeToUpdate[self.openType],equipDataList,self.nextEquip,self.position)
|
||
end)
|
||
end)
|
||
|
||
--跳转摘星阁
|
||
Util.AddClick(self.btnJumpHome, function()
|
||
HomeLandManager.curEquip = self.equipData.position
|
||
JumpManager.GoJump(40059,function ()
|
||
Timer.New(function ()
|
||
UIManager.OpenPanel(UIName.HomeLandEquipPopup)
|
||
end,0.5):Start()
|
||
end)
|
||
end)
|
||
end
|
||
|
||
--道具 和 装备分解 发送请求后 回调
|
||
function RewardEquipSingleShowPopup2:SendBackResolveReCallBack(drop)
|
||
local isShowReward=false
|
||
if drop.itemlist~=nil and #drop.itemlist>0 then
|
||
for i = 1, #drop.itemlist do
|
||
if drop.itemlist[i].itemNum>0 then
|
||
isShowReward=true
|
||
break
|
||
end
|
||
end
|
||
end
|
||
if isShowReward then
|
||
UIManager.OpenPanel(UIName.RewardItemPopup,drop,1,function ()
|
||
BagManager.OnShowTipDropNumZero(drop)
|
||
end)
|
||
else
|
||
BagManager.OnShowTipDropNumZero(drop)
|
||
end
|
||
if self.func then
|
||
self.func()
|
||
end
|
||
self:ClosePanel()
|
||
end
|
||
|
||
--添加事件监听(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:AddListener()
|
||
|
||
end
|
||
|
||
--移除事件监听(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:RemoveListener()
|
||
|
||
end
|
||
|
||
function RewardEquipSingleShowPopup2:OnSortingOrderChange()
|
||
Util.SetParticleSortLayer(self.effectbaijin,self.sortingOrder + 1)
|
||
SetParticleSortLayer(self.c_ui_qinyan_duan,self.sortingOrder + 1)
|
||
SetParticleSortLayer(self.UI_effect_WuCai_Kuang,self.sortingOrder + 1)
|
||
end
|
||
|
||
--界面打开时调用(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:OnOpen(_parent,_equipData,_openType,_isShowGet,_isShowGo,_curHeroData,_position,_targetEquipData,_func)
|
||
if not _equipData then
|
||
return
|
||
end
|
||
self.parent = _parent --父界面
|
||
self.equipData = _equipData --当前装备数据
|
||
self.openType = _openType --0不显示按钮、1背包、2已穿戴(显示卸下)、3未穿戴(显示穿戴)、4未穿戴(显示替换)、5自己或其他人穿戴(非装备界面但需要显示套装属性)
|
||
self.howGet:SetActive(_isShowGet and true or false)--是否显示获取途径
|
||
self.btnGrid:SetActive(self.openType ~= 0)
|
||
self.curHeroData = _curHeroData --装备了该装备的英雄数据
|
||
self.position = _position --装备的位置
|
||
self.nextEquip = _targetEquipData--要替换的目标装备
|
||
if _targetEquipData then
|
||
LogGreen("Id:"..tostring(_equipData.id).." Id2:"..tostring(_targetEquipData.id))
|
||
end
|
||
self.isShowGo = _isShowGo and _isShowGo or false--是否显示跳转按钮
|
||
self.func = _func
|
||
end
|
||
|
||
function RewardEquipSingleShowPopup2:SetBtns()
|
||
local itemConfigData=ConfigManager.GetConfigData(ConfigName.ItemConfig, tonumber(self.equipData.id))
|
||
self.btnSure:SetActive(itemConfigData.IfResolve==1 and BagManager.isBagPanel)
|
||
self.btnJump:SetActive(itemConfigData.UseJump and itemConfigData.UseJump > 0 and BagManager.isBagPanel)
|
||
self.btnWear:SetActive(self.openType == 3)
|
||
self.btnDown:SetActive(self.openType == 2)
|
||
self.btnSwitch:SetActive(self.openType == 4)
|
||
end
|
||
|
||
function RewardEquipSingleShowPopup2:OnShow()
|
||
--上部装备基础信息
|
||
Log("装备id:"..tostring(self.equipData.id).." openType:"..tostring(self.openType))
|
||
self:SetBtns()
|
||
equipConfigData=ConfigManager.GetConfigData(ConfigName.EquipConfig, tonumber(self.equipData.id))
|
||
local itemConfigData=ConfigManager.GetConfigData(ConfigName.ItemConfig, tonumber(self.equipData.id))
|
||
local aaa=equipConfigData.Quality
|
||
if equipConfigData.Quality==8 then
|
||
aaa=7
|
||
end
|
||
self.topBar:GetComponent("Image").sprite = self.spLoader:LoadSprite("Bg_hz_beibao_pinjise_00"..aaa)
|
||
self.equipQuaText.text=GetStringByEquipQua(equipConfigData.Quality,GetQuaStringByEquipQua(equipConfigData.Quality))
|
||
self.eqiopName.text=GetLanguageStrById(equipConfigData.Name)-- GetStringByEquipQua(equipConfigData.Quality,GetLanguageStrById(equipConfigData.Name))
|
||
self.c_ui_qinyan_duan:SetActive(equipConfigData.Quality==8)
|
||
self.UI_effect_WuCai_Kuang:SetActive(equipConfigData.Quality==7)
|
||
self.frame.sprite = self.spLoader:LoadSprite(GetQuantityImageByquality(equipConfigData.Quality))
|
||
self.icon.sprite = self.spLoader:LoadSprite(GetResourcePath(itemConfigData.ResourceID))
|
||
self.equipInfoText.text=GetLanguageStrById(itemConfigData.ItemDescribe)
|
||
if equipConfigData.ExhibitionScore and equipConfigData.ExhibitionScore>0 then
|
||
self.powerNum.text=equipConfigData.ExhibitionScore
|
||
else
|
||
self.powerNum.text=EquipManager.CalculateWarForce(self.equipData.id)
|
||
end
|
||
if equipConfigData.Position==7 or equipConfigData.Position==8 then
|
||
SetHeroStars(self.spLoader,self.star,equipConfigData.Star,1,nil,-15)
|
||
else
|
||
EquipManager.SetEquipStarShow(self.spLoader, self.star,equipConfigData.Id)
|
||
end
|
||
|
||
self.equipType.text=Language[11089]..GetEquipPosStrByEquipPosNum(equipConfigData.Position)
|
||
|
||
--摘星阁加持
|
||
self.hLv.text = ""
|
||
self.hProLv.text = ""
|
||
if self.equipData.homeEquipLv and self.equipData.homeEquipLv[1] > 0 then
|
||
self.hLv.text = self.equipData.homeEquipLv[1] > 0 and self.equipData.homeEquipLv[1] or ""
|
||
self.hProLv.text = self.equipData.homeEquipLv[2] > 0 and self.equipData.homeEquipLv[2] or ""
|
||
end
|
||
--下部按钮信息
|
||
self.effectbaijin:SetActive(equipConfigData.Quality==7)
|
||
Util.SetParticleSortLayer(self.effectbaijin,self.sortingOrder + 1)
|
||
if self.openType == 4 then
|
||
self.powerNumUpDown.gameObject:SetActive(true)
|
||
local Power = EquipManager.CalculateWarForce(self.equipData.id)
|
||
local Power2 = EquipManager.CalculateWarForce(self.nextEquip.id)
|
||
-- LogGreen("Id:"..tostring(self.equipData.id).." Power:"..tostring(Power).." Id2:"..tostring(self.equipData.id).." Power2:"..tostring(Power2))
|
||
if(Power > Power2) then
|
||
self.powerNumUpDown.sprite = self.spLoader:LoadSprite(PowerChangeIconDef[1])
|
||
elseif(Power < Power2)then
|
||
self.powerNumUpDown.sprite = self.spLoader:LoadSprite(PowerChangeIconDef[2])
|
||
else
|
||
self.powerNumUpDown.gameObject:SetActive(false)
|
||
end
|
||
else
|
||
self.powerNumUpDown.gameObject:SetActive(false)
|
||
end
|
||
|
||
--basePro基础属性
|
||
if equipConfigData.Property then
|
||
self.basePro:SetActive(true)
|
||
for _, pro in ipairs(_BaseProList) do
|
||
pro:SetActive(false)
|
||
end
|
||
local num = 0
|
||
for i=1,#equipConfigData.Property do
|
||
local prop = equipConfigData.Property[i]
|
||
if tonumber(prop[1])~=nil then
|
||
local proConfigData = ConfigManager.GetConfigData(ConfigName.PropertyConfig, prop[1])
|
||
if proConfigData then
|
||
num = num + 1
|
||
--基础属性
|
||
if not _BaseProList[num] then
|
||
_BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
end
|
||
_BaseProList[num]:SetActive(true)
|
||
if equipConfigData.Position==7 then
|
||
_BaseProList[num]:GetComponent("Text").text ="全体英雄"..GetLanguageStrById(proConfigData.Info)
|
||
else
|
||
_BaseProList[num]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
end
|
||
|
||
local vText = Util.GetGameObject(_BaseProList[num], "curProVale"):GetComponent("Text")
|
||
-- Util.GetGameObject(vText.gameObject, "homeValue"):GetComponent("Text").text = ""--摘星阁加持文字显示位置
|
||
local str=""
|
||
if prop[2] > 0 then
|
||
if equipConfigData.Position==8 and self.curHeroData then
|
||
LogError("GiftManager.GetPlayerGiftAdd()============="..GiftManager.GetPlayerGiftAdd().." prop[2]==========="..prop[2].." HeroManager.ReturnGiftAtt()=="..HeroManager.ReturnGiftAtt())
|
||
local proValue =math.floor(prop[2]*(1+GiftManager.GetPlayerGiftAdd()/100)+0.5)
|
||
vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2])..
|
||
string.format(" 主角礼物加成+%s (%s%%)",math.floor(proValue*GiftManager.GetPlayerGiftAdd()/100),GiftManager.GetPlayerGiftAdd())
|
||
..string.format(" 特训加成+%s (%s%%)",math.floor(proValue*HeroManager.ReturnGiftAtt()),HeroManager.ReturnGiftAtt())
|
||
elseif equipConfigData.Position<=4 and self.curHeroData then
|
||
-- for k, v in pairs(self.curHeroData.potential) do
|
||
-- LogError("v======================"..v.." k==="..k)
|
||
-- end
|
||
local potencyAdd=HeroManager.GetHeroPotencyAddByTypeAndPotencyData(self.curHeroData.potential,equipConfigData.Position)
|
||
LogError("potencyAdd============"..potencyAdd)
|
||
vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2])..string.format(" <color=#00ff00>潜能 +%s(%s%%)</color>",math.floor(prop[2]*potencyAdd+0.5),potencyAdd*100)
|
||
else
|
||
vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
end
|
||
|
||
else
|
||
vText.text = GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
end
|
||
end
|
||
end
|
||
|
||
end
|
||
|
||
for i=1,#equipConfigData.PlayerProperty do
|
||
local prop=equipConfigData.PlayerProperty[i]
|
||
if tonumber(prop[1])~=nil then
|
||
local proConfigData = ConfigManager.GetConfigData(ConfigName.PropertyConfig, prop[1])
|
||
if proConfigData then
|
||
num = num + 1
|
||
--基础属性
|
||
if not _BaseProList[num] then
|
||
_BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
end
|
||
_BaseProList[num]:SetActive(true)
|
||
_BaseProList[num]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
local vText = Util.GetGameObject(_BaseProList[num], "curProVale"):GetComponent("Text")
|
||
-- Util.GetGameObject(vText.gameObject, "homeValue"):GetComponent("Text").text = ""--摘星阁加持文字显示位置
|
||
if prop[2] > 0 then
|
||
vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
else
|
||
vText.text = GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
end
|
||
end
|
||
end
|
||
|
||
end
|
||
--礼物显示添加潜能等级
|
||
if equipConfigData.Position==7 or equipConfigData.Position==8 then
|
||
if equipConfigData.PotentialNew and #equipConfigData.PotentialNew>0 and type(equipConfigData.PotentialNew[1])~="userdata" then
|
||
num=num+1
|
||
if not _BaseProList[num] then
|
||
_BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
end
|
||
_BaseProList[num]:SetActive(true)
|
||
Util.GetGameObject(_BaseProList[num], "curProVale").gameObject:SetActive(false)
|
||
if equipConfigData.Position==7 then
|
||
_BaseProList[num]:GetComponent("Text").text ="全体神将潜能等级+"..equipConfigData.PotentialNew[2]
|
||
elseif equipConfigData.Position==8 then
|
||
_BaseProList[num]:GetComponent("Text").text = "神将潜能等级+"..equipConfigData.PotentialNew[2]
|
||
end
|
||
end
|
||
if equipConfigData.HeroGitUp>0 then
|
||
num=num+1
|
||
if not _BaseProList[num] then
|
||
_BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
end
|
||
_BaseProList[num]:SetActive(true)
|
||
Util.GetGameObject(_BaseProList[num], "curProVale").gameObject:SetActive(false)
|
||
if equipConfigData.Position==7 then
|
||
_BaseProList[num]:GetComponent("Text").text =string.format("全体神将礼物属性+%s%%",equipConfigData.HeroGitUp/100)
|
||
end
|
||
end
|
||
end
|
||
-- for index, prop in ipairs(equipConfigData.PlayerProperty) do
|
||
-- LogError("prop[1]=========="..prop[1])
|
||
-- if tonumber(prop[1]~=nil) then
|
||
-- local proConfigData = ConfigManager.GetConfigData(ConfigName.PropertyConfig, prop[1])
|
||
-- if proConfigData then
|
||
-- num = num + 1
|
||
-- --基础属性
|
||
-- if not _BaseProList[num] then
|
||
-- _BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
-- end
|
||
-- _BaseProList[num]:SetActive(true)
|
||
-- _BaseProList[num]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
-- local vText = Util.GetGameObject(_BaseProList[num], "curProVale"):GetComponent("Text")
|
||
-- -- Util.GetGameObject(vText.gameObject, "homeValue"):GetComponent("Text").text = ""--摘星阁加持文字显示位置
|
||
-- if prop[2] > 0 then
|
||
-- vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
-- else
|
||
-- vText.text = GetPropertyFormatStr(proConfigData.Style, prop[2])
|
||
-- end
|
||
-- end
|
||
-- end
|
||
|
||
-- end
|
||
if equipConfigData.Quality == 6 then
|
||
local prop = equipConfigData.PropertyMin
|
||
local proConfigData = ConfigManager.TryGetConfigData(ConfigName.PropertyConfig, prop[1])
|
||
if proConfigData then
|
||
num = num + 1
|
||
--基础属性
|
||
if not _BaseProList[num] then
|
||
_BaseProList[num] = newObjToParent(self.baseProPre, self.baseProGrid)
|
||
end
|
||
_BaseProList[num]:SetActive(true)
|
||
_BaseProList[num]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
local vText = Util.GetGameObject(_BaseProList[num], "curProVale"):GetComponent("Text")
|
||
-- Util.GetGameObject(vText.gameObject, "homeValue"):GetComponent("Text").text = ""--摘星阁加持文字显示位置
|
||
if prop[2] > 0 then
|
||
vText.text = "+"..GetPropertyFormatStr(proConfigData.Style, prop[2]).."<color=#00ff00>(提升至白金装备解锁)</color>"
|
||
else
|
||
vText.text = GetPropertyFormatStr(proConfigData.Style, prop[2]).."<color=#00ff00>(提升至白金装备解锁)</color"
|
||
end
|
||
|
||
if num==2 then
|
||
_BaseProList[num]:SetActive(false)
|
||
end
|
||
end
|
||
end
|
||
else
|
||
self.basePro:SetActive(false)
|
||
end
|
||
|
||
--homePro基础属性
|
||
if self.equipData.homeEquipLv and self.equipData.homeEquipLv[1] > 0 and self.curHeroData then
|
||
self.homePro:SetActive(true)
|
||
for _, pro in ipairs(_homeProList) do
|
||
pro:SetActive(false)
|
||
end
|
||
if equipConfigData.Property then
|
||
for index, prop in ipairs(equipConfigData.Property) do
|
||
local proConfigData = ConfigManager.GetConfigData(ConfigName.PropertyConfig, prop[1])
|
||
if proConfigData and proConfigData.Style == 1 then
|
||
local num = HomeLandManager.LevelToValue(self.equipData.homeEquipLv,self.equipData.position)
|
||
local power = math.ceil(prop[2]*(num/10000))
|
||
if not _homeProList[index] then
|
||
_homeProList[index] = newObjToParent(self.homeProPre, self.homeProGrid)
|
||
end
|
||
_homeProList[index]:SetActive(true)
|
||
_homeProList[index]:GetComponent("Text").text = GetLanguageStrById(proConfigData.Info)
|
||
local sText = Util.GetGameObject(_homeProList[index], "curProVale"):GetComponent("Text")
|
||
sText.text = "+"..GetPropertyFormatStr(proConfigData.Style, power)
|
||
Util.GetGameObject(sText.gameObject, "homeValue"):GetComponent("Text").text = string.format("(%s",num/100).."%)"--摘星阁加持文字显示位置
|
||
end
|
||
end
|
||
end
|
||
else
|
||
self.homePro:SetActive(false)
|
||
end
|
||
|
||
--suitPro套装属性
|
||
--获取装备套装属性
|
||
local equipSuite = {}
|
||
if self.curHeroData and (self.openType == 2 or self.openType == 5) then
|
||
equipSuite = HeroManager.GetCurHeroEquipSuitPros(self.curHeroData.equipIdList)
|
||
end
|
||
--LogError("equipConfigData.Id======"..equipConfigData.Id)
|
||
local curProSuitConFig = suitConFig[equipConfigData.Star]
|
||
if suitConFig[equipConfigData.Star] then
|
||
|
||
local suiteValue = curProSuitConFig.SuiteValue
|
||
if curProSuitConFig and #suiteValue>0 and tonumber(suiteValue[1][1])~=nil then
|
||
self.suitPro:SetActive(true)
|
||
for i = 1, math.max(#suiteValue, #_suitProList) do
|
||
if not _suitProList[i] then
|
||
_suitProList[i] = newObjToParent(self.suitProPre, self.suitProGrid)
|
||
end
|
||
_suitProList[i].gameObject:SetActive(true)
|
||
end
|
||
--LogError("suiteValue======================="..#suiteValue)
|
||
--PrintTable(suiteValue)
|
||
for i = 1, #suiteValue do
|
||
_suitProList[i].gameObject:SetActive(true)
|
||
local name = Util.GetGameObject(_suitProList[i].transform, "proName"):GetComponent("Text")
|
||
local value = Util.GetGameObject(_suitProList[i].transform, "proVale"):GetComponent("Text")
|
||
if equipSuite[i] then
|
||
name.text = string.format("<color=#00ff66>%s+ %s</color>",GetLanguageStrById(propertyConfig[equipSuite[i][2][2]].Info),GetPropertyFormatStr(propertyConfig[equipSuite[i][2][2]].Style,equipSuite[i][2][3]))
|
||
value.text = string.format("<color=#00ff66>(%s)</color>",GetEquipSuitStr2(equipSuite[i][1],equipSuite[i][2][1]))
|
||
else
|
||
--LogError("[suiteValue[i][2]==="..suiteValue[i][2])
|
||
--LogError("suiteValue[i][3]=================="..suiteValue[i][3])
|
||
if suiteValue[i][2] and suiteValue[i][3] then
|
||
name.text = string.format("<color=#8C6210>%s+ %s</color>",GetLanguageStrById(propertyConfig[suiteValue[i][2]].Info),GetPropertyFormatStr(propertyConfig[suiteValue[i][2]].Style,suiteValue[i][3]))
|
||
value.text = string.format("<color=#8C6210>(%s)</color>",GetEquipSuitStr2(equipConfigData.Star,suiteValue[i][1]))
|
||
end
|
||
|
||
end
|
||
end
|
||
else
|
||
self.suitPro:SetActive(false)
|
||
end
|
||
else
|
||
self.suitPro:SetActive(false)
|
||
end
|
||
|
||
--super白金套装属性
|
||
--获取装备白金套装属性
|
||
local equipGoldSuite = {}
|
||
if self.curHeroData and (self.openType == 2 or self.openType == 5) then
|
||
equipGoldSuite = HeroManager.GetCurHeroBaiJinEquipSuitPros(self.curHeroData.equipIdList)
|
||
end
|
||
local curGoldSuitConFig = suitConFig[equipConfigData.Star]
|
||
for k,v in ipairs(_superProList) do
|
||
v.gameObject:SetActive(false)
|
||
end
|
||
local num = 0
|
||
if equipConfigData.Quality == 6 then
|
||
self.superPro:SetActive(false)
|
||
-- curGoldSuitConFig = suitConFig[18]
|
||
num = num + 1
|
||
if not _superProList[num] then
|
||
_superProList[num] = newObjToParent(self.superProPre, self.superProGrid)
|
||
end
|
||
if num==1 then
|
||
_superProList[num].gameObject:SetActive(false)
|
||
else
|
||
_superProList[num].gameObject:SetActive(true)
|
||
end
|
||
|
||
local name = Util.GetGameObject( _superProList[num], "Name"):GetComponent("Text")
|
||
local value = Util.GetGameObject( _superProList[num], "Name/vale"):GetComponent("Text")
|
||
name.text = "<color=#00ff00>不朽天赋:(提升至白金装备解锁)</color>"
|
||
value.text = ""
|
||
_superProList[num]:GetComponent("Text").enabled = false
|
||
end
|
||
if curGoldSuitConFig and curGoldSuitConFig.SuiteSkill~=nil and tonumber(curGoldSuitConFig.SuiteSkill[1][1])~=nil then
|
||
self.superPro:SetActive(true)
|
||
if curGoldSuitConFig then
|
||
local goldSuiteSkill = curGoldSuitConFig.SuiteSkill
|
||
for i = 1, #goldSuiteSkill do
|
||
num = num + 1
|
||
if not _superProList[num] then
|
||
_superProList[num] = newObjToParent(self.superProPre, self.superProGrid)
|
||
end
|
||
_superProList[num].gameObject:SetActive(true)
|
||
local go = _superProList[num]
|
||
go.gameObject:SetActive(true)
|
||
local name = Util.GetGameObject(go.transform, "Name"):GetComponent("Text")
|
||
local value = Util.GetGameObject(go.transform, "Name/vale"):GetComponent("Text")
|
||
name.text = string.format("不朽天赋%s:",i)
|
||
if equipGoldSuite[i] then
|
||
value.text = string.format("<color=#00ff66>(%s)</color>",GetEquipSuitStr(equipGoldSuite[i][1],equipGoldSuite[i][2][1]))
|
||
go:GetComponent("Text").text = string.format("<color=#00ff66>%s</color>",GetLanguageStrById(passiveSkillConfig[equipGoldSuite[i][2][2]].Desc))
|
||
else
|
||
value.text = string.format("<color=#8C6210>(%s)</color>",GetEquipSuitStr(curGoldSuitConFig.Id,goldSuiteSkill[i][1]))
|
||
LogError("goldSuiteSkill[i][2]=="..goldSuiteSkill[i][2])
|
||
if goldSuiteSkill[i][2] then
|
||
go:GetComponent("Text").text = string.format("<color=#8C6210>%s</color>",GetLanguageStrById(passiveSkillConfig[goldSuiteSkill[i][2]].Desc))
|
||
end
|
||
end
|
||
go:GetComponent("Text").enabled = true
|
||
end
|
||
end
|
||
else
|
||
self.superPro:SetActive(false)
|
||
end
|
||
|
||
--获取途径
|
||
if self.jumpViewList and #self.jumpViewList > 0 then
|
||
for i = 1,#self.jumpViewList do
|
||
SubUIManager.Close(self.jumpViewList[i])
|
||
end
|
||
end
|
||
local curitemData = itemConfig[tonumber(self.equipData.id)]
|
||
if curitemData and curitemData.Jump then
|
||
if curitemData.Jump and #curitemData.Jump>0 then
|
||
self.canGetScrollView:SetData(curitemData.Jump,function (index, item)
|
||
local tempView = nil
|
||
if self.isShowGo then
|
||
tempView = SubUIManager.Open(SubUIConfig.JumpView, item.transform, curitemData.Jump[index],true)
|
||
else
|
||
tempView = SubUIManager.Open(SubUIConfig.JumpView, item.transform, curitemData.Jump[index],false)
|
||
end
|
||
table.insert(self.jumpViewList,tempView)
|
||
end,true,true)
|
||
end
|
||
end
|
||
|
||
|
||
--(此处需要三遍才能完全打开)
|
||
ForceRebuildLayout(self.midBar.transform)
|
||
ForceRebuildLayout(self.midBar.transform)
|
||
ForceRebuildLayout(self.midBar.transform)
|
||
|
||
if self.func then
|
||
self.func()
|
||
end
|
||
end
|
||
|
||
--界面关闭时调用(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:OnClose()
|
||
for i = 1, #self.jumpViewList do
|
||
destroy(self.jumpViewList[i].gameObject)
|
||
end
|
||
end
|
||
|
||
--界面销毁时调用(用于子类重写)
|
||
function RewardEquipSingleShowPopup2:OnDestroy()
|
||
self.spLoader:Destroy()
|
||
_BaseProList = {}
|
||
_homeProList = {}
|
||
_suitProList = {}
|
||
_superProList = {}
|
||
self.jumpViewList = {}
|
||
end
|
||
|
||
return RewardEquipSingleShowPopup2 |