105 lines
4.4 KiB
Lua
105 lines
4.4 KiB
Lua
require("Base/BasePanel")
|
|
EquipInfoPopup = Inherit(BasePanel)
|
|
local this = EquipInfoPopup
|
|
this.skillConfig=ConfigManager.GetConfig(ConfigName.SkillConfig)
|
|
--初始化组件(用于子类重写)
|
|
function this:InitComponent()
|
|
this.spLoader = SpriteLoader.New()
|
|
|
|
this.panel=Util.GetGameObject(self.transform,"Panel"):GetComponent("RectTransform")
|
|
this.BtnBack = Util.GetGameObject(self.transform, "btnBack")
|
|
this.equipName = Util.GetGameObject( this.panel, "image/title"):GetComponent("Text")
|
|
this.frame = Util.GetGameObject( this.panel, "equip/frame"):GetComponent("Image")
|
|
this.icon = Util.GetGameObject( this.panel, "equip/icon"):GetComponent("Image")
|
|
this.equipEffect=Util.GetGameObject( this.panel, "effect/text"):GetComponent("Text")
|
|
this.equipType=Util.GetGameObject( this.panel, "desc/type"):GetComponent("Text")
|
|
this.equipRebuildAble=Util.GetGameObject( this.panel, "desc/rebuildAble"):GetComponent("Text")
|
|
this.equipRebuildLv=Util.GetGameObject( this.panel, "desc/rebuildLv")
|
|
this.equipPro=Util.GetGameObject( this.panel, "desc/pro"):GetComponent("Text")
|
|
this.equipProPre=Util.GetGameObject( this.panel, "equipProPre")
|
|
this.equipProGrid=Util.GetGameObject( this.panel, "equipProGrid")
|
|
end
|
|
|
|
--绑定事件(用于子类重写)
|
|
function this:BindEvent()
|
|
|
|
Util.AddClick(this.BtnBack, function()
|
|
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
|
|
self:ClosePanel()
|
|
end)
|
|
end
|
|
|
|
--添加事件监听(用于子类重写)
|
|
function this:AddListener()
|
|
|
|
end
|
|
|
|
--移除事件监听(用于子类重写)
|
|
function this:RemoveListener()
|
|
|
|
end
|
|
function this:OnShow()
|
|
end
|
|
--界面打开时调用(用于子类重写)
|
|
function this:OnOpen(...)
|
|
|
|
local args = {...}
|
|
local curEquipData=args[1]
|
|
local pos_Y=args[2]
|
|
this.panel:DOAnchorPosY(pos_Y-100,0)
|
|
this.equipName.text=GetLanguageStrById(curEquipData.equipConfig.Name)
|
|
this.frame.sprite = this.spLoader:LoadSprite(curEquipData.frame)
|
|
this.icon.sprite = this.spLoader:LoadSprite(curEquipData.icon)
|
|
if curEquipData.skillId and curEquipData.skillId > 0 then
|
|
local cfg = ConfigManager.GetConfigData(ConfigName.PassiveSkillConfig,curEquipData.skillId)
|
|
this.equipEffect.text=GetSkillConfigDesc(cfg)
|
|
else
|
|
this.equipEffect.text=""
|
|
end
|
|
this.equipType.text=string.format(Language[11476],GetEquipPosStrByEquipPosNum(curEquipData.equipConfig.Position))
|
|
if curEquipData.equipConfig.IfClear==0 then
|
|
this.equipRebuildAble.text=Language[11477]
|
|
this.equipRebuildLv:GetComponent("Text").text=Language[11478]
|
|
elseif curEquipData.equipConfig.IfClear==1 then
|
|
this.equipRebuildAble.text=Language[11479]
|
|
this.equipRebuildLv:GetComponent("Text").text=string.format(Language[11480],curEquipData.resetLv)--工坊等级
|
|
end
|
|
this.equipPro.text=string.format(Language[11481],GetJobStrByJobNum(curEquipData.equipConfig.ProfessionLimit))
|
|
Util.ClearChild(this.equipProGrid.transform)
|
|
local equipAllPro = curEquipData.mainAttribute
|
|
--for i = 1, #curEquipData.secondAttribute do
|
|
-- table.insert(equipAllPro,curEquipData.secondAttribute[i])
|
|
-- Log("curEquipData.secondAttribute[i] "..curEquipData.secondAttribute[i].propertyId)
|
|
--end
|
|
--装备
|
|
for i = 1, #equipAllPro do
|
|
local go = newObject(this.equipProPre)
|
|
go.transform:SetParent(this.equipProGrid.transform)
|
|
go.transform.localScale = Vector3.one
|
|
go.transform.localPosition = Vector3.zero
|
|
go:SetActive(true)
|
|
--Log("v.propertyId "..v.propertyId)
|
|
Util.GetGameObject(go.transform, "proName"):GetComponent("Text").text = GetLanguageStrById(equipAllPro[i].PropertyConfig.Info)
|
|
if equipAllPro[i].PropertyConfig.Style==1 then--绝对值
|
|
Util.GetGameObject(go.transform, "proVal"):GetComponent("Text").text = equipAllPro[i].propertyValue
|
|
elseif equipAllPro[i].PropertyConfig.Style==2 then--百分百
|
|
Util.GetGameObject(go.transform, "proVal"):GetComponent("Text").text = tostring(equipAllPro[i].propertyValue/100).."%"
|
|
end
|
|
end
|
|
end
|
|
|
|
--界面关闭时调用(用于子类重写)
|
|
function this:OnClose()
|
|
|
|
end
|
|
|
|
--界面销毁时调用(用于子类重写)
|
|
function this:OnDestroy()
|
|
this.spLoader:Destroy()
|
|
|
|
end
|
|
|
|
function EquipInfoPopup:GetEquipSkillData(skillId)
|
|
return this.skillConfig[skillId]
|
|
end
|
|
return EquipInfoPopup; |