miduo_client/Assets/ManagedResources/~Lua/Modules/Recruit/TenRecruitPanel.lua

97 lines
3.6 KiB
Lua
Raw Normal View History

2020-05-09 13:31:21 +08:00
require("Base/BasePanel")
TenRecruitPanel = Inherit(BasePanel)
local this = TenRecruitPanel
local cardList = {}
local orginLayer
local gameSetting=ConfigManager.GetConfig(ConfigName.GameSetting)
2020-05-25 19:16:23 +08:00
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上限今日召唤上限
2020-05-09 13:31:21 +08:00
--初始化组件(用于子类重写)
function TenRecruitPanel:InitComponent()
orginLayer = 0
this.sureBtn = Util.GetGameObject(self.transform, "sureBtn")
this.againBtn = Util.GetGameObject(self.transform, "againBtn")
2020-05-25 19:16:23 +08:00
this.againIcon=Util.GetGameObject(self.transform,"Tip/juan"):GetComponent("Image")
this.againNum=Util.GetGameObject(self.transform,"Tip/Text"):GetComponent("Text")
2020-05-09 13:31:21 +08:00
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()
2020-05-25 19:16:23 +08:00
local d=RecruitManager.GetExpendData(type)
if BagManager.GetItemCountById(d[1])<d[2] then
PopupTipPanel.ShowTip(itemConfig[d[1]].Name.."数量不足!")
return
end
if PrivilegeManager.GetPrivilegeUsedTimes(maxTimesId)+1>privilegeConfig[maxTimesId].Condition[1][2] then
PopupTipPanel.ShowTip("无法超出每日召唤次数上限!")
2020-05-09 13:31:21 +08:00
return
end
2020-05-25 19:16:23 +08:00
RecruitManager.RecruitRequest(type, function(msg)
PrivilegeManager.RefreshPrivilegeUsedTimes(maxTimesId,10)
UIManager.OpenPanel(UIName.SingleRecruitPanel, msg.drop.Hero, type,2)
2020-05-09 13:31:21 +08:00
end)
end)
end
--添加事件监听(用于子类重写)
function TenRecruitPanel:AddListener()
end
--移除事件监听(用于子类重写)
function TenRecruitPanel:RemoveListener()
end
function TenRecruitPanel:OnSortingOrderChange()
Util.AddParticleSortLayer(self.effect, self.sortingOrder - orginLayer)
orginLayer = self.sortingOrder
for i = 1, #cardList do
cardList[i]:SetEffectLayer(self.sortingOrder)
end
end
--界面打开时调用(用于子类重写)
function TenRecruitPanel:OnOpen(...)
local data = { ... }
local _roleDatas = data[1]
2020-05-25 19:16:23 +08:00
type=data[2]
2020-05-09 13:31:21 +08:00
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)
if heorConfig and heorConfig.Quality == 5 and heorConfig.Natural >= 13 then
HeroManager.DetectionOpenFiveStarActivity(heorConfig.Star)
end
end
2020-05-25 19:16:23 +08:00
local d=RecruitManager.GetExpendData(type)
this.againIcon.sprite=Util.LoadSprite(artResourcesConfig[itemConfig[d[1]].ResourceID].Name)
this.againNum.text="×"..d[2]
maxTimesId=lotterySetting[1].MaxTimes --特权上限ID
2020-05-09 13:31:21 +08:00
end
--界面关闭时调用(用于子类重写)
function TenRecruitPanel:OnClose()
end
--界面销毁时调用(用于子类重写)
function TenRecruitPanel:OnDestroy()
end
return TenRecruitPanel