106 lines
3.5 KiB
Lua
106 lines
3.5 KiB
Lua
----- 献祭弹窗 -----
|
|
local this = {}
|
|
--传入父脚本模块
|
|
local parent
|
|
--传入特效层级
|
|
local sortingOrder = 0
|
|
local _args = {}
|
|
local fun
|
|
local coin = 0
|
|
local id = 0
|
|
--item容器
|
|
local itemList = {}
|
|
--传入选择英雄
|
|
local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig)
|
|
local itemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig)
|
|
function this:InitComponent(gameObject)
|
|
this.spLoader = SpriteLoader.New()
|
|
this.titleText = Util.GetGameObject(gameObject, "TitleText"):GetComponent("Text")
|
|
this.infoTxt = Util.GetGameObject(gameObject, "Body/Text"):GetComponent("Text")
|
|
--this.num=Util.GetGameObject(gameObject,"Body/Num"):GetComponent("Text")
|
|
this.numImage = Util.GetGameObject(gameObject, "Body/Image"):GetComponent("Image")
|
|
this.numImage.gameObject:SetActive(false)
|
|
this.cancelBtn = Util.GetGameObject(gameObject, "CancelBtn")
|
|
this.confirmBtn = Util.GetGameObject(gameObject, "ConfirmBtn")
|
|
this.confirmBtnText = Util.GetGameObject(gameObject, "ConfirmBtn/Text"):GetComponent("Text")
|
|
--滚动条根节点
|
|
this.root = Util.GetGameObject(gameObject, "Root")
|
|
end
|
|
|
|
function this:BindEvent()
|
|
Util.AddClick(this.cancelBtn, function()
|
|
parent:ClosePanel()
|
|
end)
|
|
Util.AddClick(this.confirmBtn, function()
|
|
if coin > BagManager.GetItemCountById(id) then
|
|
PopupTipPanel.ShowTip(Language[11562])
|
|
return
|
|
end
|
|
LogError("请求涅槃")
|
|
if fun then
|
|
fun()
|
|
end
|
|
parent:ClosePanel()
|
|
end)
|
|
end
|
|
|
|
function this:AddListener()
|
|
end
|
|
|
|
function this:RemoveListener()
|
|
end
|
|
|
|
function this:OnShow(_parent, ...)
|
|
parent = _parent
|
|
sortingOrder = _parent.sortingOrder
|
|
--不定参中包含的不定参 _args[1]为面板类型 _args[2]之后(包括)为打开面板后传入的不定参
|
|
local args = { ... }
|
|
--this.num.text = args[1]
|
|
local lingshouConfig = args[1]
|
|
--消耗妖晶的数量
|
|
if lingshouConfig.ReturnCost then
|
|
id = lingshouConfig.ReturnCost[1]
|
|
coin = lingshouConfig.ReturnCost[2]
|
|
end
|
|
local type = args[3] ---1灵兽涅槃 2神兵回炉
|
|
if type == 1 then
|
|
this.titleText.text = Language[12329]
|
|
this.confirmBtnText.text = Language[12330]
|
|
else
|
|
this.titleText.text = Language[12331]
|
|
this.confirmBtnText.text = Language[12332]
|
|
end
|
|
this.numImage.sprite = SetIcon(this.spLoader, id)
|
|
fun = args[4]
|
|
--判断妖晶是否充足
|
|
if coin > BagManager.GetItemCountById(id) then
|
|
if type == 1 then
|
|
this.infoTxt.text = string.format(Language[12333], coin, GetLanguageStrById(itemConfig[id].Name),
|
|
GetLanguageStrById(lingshouConfig.Name), "%")
|
|
else
|
|
local str = Language[12334]
|
|
this.infoTxt.text = string.format(str, coin, GetLanguageStrById(itemConfig[id].Name),
|
|
GetLanguageStrById(lingshouConfig.Name), "%")
|
|
end
|
|
else
|
|
if type == 1 then
|
|
this.infoTxt.text = string.format(Language[12335], coin, GetLanguageStrById(itemConfig[id].Name),
|
|
GetLanguageStrById(lingshouConfig.Name), "%")
|
|
else
|
|
local str = Language[12336]
|
|
this.infoTxt.text = string.format(str, coin, GetLanguageStrById(itemConfig[id].Name),
|
|
GetLanguageStrById(lingshouConfig.Name), "%")
|
|
end
|
|
end
|
|
ResetItemView(this.root, this.root.transform, itemList, 10, 1, sortingOrder, false, args[2])
|
|
end
|
|
|
|
function this:OnClose()
|
|
end
|
|
|
|
function this:OnDestroy()
|
|
this.spLoader:Destroy()
|
|
end
|
|
|
|
return this
|