102 lines
3.8 KiB
Lua
102 lines
3.8 KiB
Lua
require("Base/BasePanel")
|
||
TenRecruitPanel = Inherit(BasePanel)
|
||
local this = TenRecruitPanel
|
||
local cardList = {}
|
||
local orginLayer
|
||
local gameSetting=ConfigManager.GetConfig(ConfigName.GameSetting)
|
||
local lotterySetting=ConfigManager.GetConfig(ConfigName.LotterySetting)
|
||
local itemConfig=ConfigManager.GetConfig(ConfigName.ItemConfig)
|
||
local artResourcesConfig =ConfigManager.GetConfig(ConfigName.ArtResourcesConfig)
|
||
local privilegeConfig=ConfigManager.GetConfig(ConfigName.PrivilegeTypeConfig)
|
||
local type --抽卡类型
|
||
local maxTimesId--特权id上限(今日召唤上限)
|
||
--初始化组件(用于子类重写)
|
||
function TenRecruitPanel:InitComponent()
|
||
orginLayer = 0
|
||
this.sureBtn = Util.GetGameObject(self.transform, "sureBtn")
|
||
this.againBtn = Util.GetGameObject(self.transform, "againBtn")
|
||
this.againIcon=Util.GetGameObject(self.transform,"Tip/juan"):GetComponent("Image")
|
||
this.againNum=Util.GetGameObject(self.transform,"Tip/Text"):GetComponent("Text")
|
||
this.cardPre = Util.GetGameObject(self.transform, "card")
|
||
this.grid = Util.GetGameObject(self.transform, "scroll/grid")
|
||
self.effect = Util.GetGameObject(self.gameObject, "bg/effect")
|
||
for i = 1, 10 do
|
||
cardList[i] = SubUIManager.Open(SubUIConfig.RoleItemView, this.grid.transform)
|
||
end
|
||
end
|
||
|
||
--绑定事件(用于子类重写)
|
||
function TenRecruitPanel:BindEvent()
|
||
|
||
Util.AddClick(self.sureBtn, function()
|
||
-- UIManager.OpenPanel(UIName.RecruitPanel)
|
||
self:ClosePanel()
|
||
end)
|
||
Util.AddClick(self.againBtn, function()
|
||
local d=RecruitManager.GetExpendData(type)
|
||
if BagManager.GetItemCountById(d[1])<d[2] then
|
||
PopupTipPanel.ShowTip(itemConfig[d[1]].Name..Language[10492])
|
||
return
|
||
end
|
||
if PrivilegeManager.GetPrivilegeUsedTimes(maxTimesId)+1>privilegeConfig[maxTimesId].Condition[1][2] then
|
||
PopupTipPanel.ShowTip(Language[11760])
|
||
return
|
||
end
|
||
RecruitManager.RecruitRequest(type, function(msg)
|
||
PrivilegeManager.RefreshPrivilegeUsedTimes(maxTimesId,10)--记录抽卡次数
|
||
UIManager.OpenPanel(UIName.SingleRecruitPanel, msg.drop.Hero, type,2)
|
||
end,maxTimesId)
|
||
end)
|
||
end
|
||
|
||
--添加事件监听(用于子类重写)
|
||
function TenRecruitPanel:AddListener()
|
||
|
||
end
|
||
|
||
--移除事件监听(用于子类重写)
|
||
function TenRecruitPanel:RemoveListener()
|
||
|
||
end
|
||
function TenRecruitPanel:OnSortingOrderChange()
|
||
Util.AddParticleSortLayer(self.effect, self.sortingOrder - orginLayer)
|
||
-- for i = 1, this.grid.transform.childCount do
|
||
-- Util.AddParticleSortLayer(this.grid.transform:GetChild(i-1).gameObject, self.sortingOrder - orginLayer)
|
||
-- end
|
||
|
||
for i = 1, 10 do
|
||
cardList[i]:SetEffectLayer(self.sortingOrder)
|
||
end
|
||
orginLayer = self.sortingOrder
|
||
end
|
||
|
||
--界面打开时调用(用于子类重写)
|
||
function TenRecruitPanel:OnOpen(...)
|
||
local data = { ... }
|
||
local _roleDatas = data[1]
|
||
type=data[2]
|
||
for i = 1, #_roleDatas do
|
||
cardList[i]:OnOpen(_roleDatas[i].id,false,false,-1,self.sortingOrder)
|
||
local heorConfig = ConfigManager.GetConfigData(ConfigName.HeroConfig,_roleDatas[i].heroId)
|
||
LogBlue("heorConfig.Star:"..heorConfig.Star)
|
||
if heorConfig and heorConfig.Star >= 5 then
|
||
HeroManager.DetectionOpenFiveStarActivity(heorConfig.Star)
|
||
end
|
||
end
|
||
local d=RecruitManager.GetExpendData(type)
|
||
this.againIcon.sprite=Util.LoadSprite(artResourcesConfig[itemConfig[d[1]].ResourceID].Name)
|
||
this.againNum.text="×"..d[2]
|
||
maxTimesId=lotterySetting[type].MaxTimes --特权上限ID
|
||
end
|
||
|
||
--界面关闭时调用(用于子类重写)
|
||
function TenRecruitPanel:OnClose()
|
||
|
||
end
|
||
|
||
--界面销毁时调用(用于子类重写)
|
||
function TenRecruitPanel:OnDestroy()
|
||
|
||
end
|
||
|
||
return TenRecruitPanel |