190 lines
6.1 KiB
Lua
190 lines
6.1 KiB
Lua
local LevelMoney = quick_class("WeekCard")
|
|
local itemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig)
|
|
local EncourageTaskConfig = ConfigManager.GetConfig(ConfigName.EncourageTaskConfig)
|
|
local EncouragePlanConfig = ConfigManager.GetConfig(ConfigName.EncouragePlanConfig)
|
|
local allData = {}
|
|
local bannerImg = {
|
|
[15] = { GetPictureFont("X1_zhanling_pata_bg"), "", 131 }, --爬塔
|
|
[16] = { GetPictureFont("X1_zhanling_mota_bg"), "X1_zhanling_mota_icon", 132 }, --魔之塔
|
|
[17] = { GetPictureFont("X1_zhanling_yiduan_bg"), "X1_zhanling_yiduan_icon", 133 }, --异端
|
|
[18] = { GetPictureFont("X1_zhanling_miwu_bg"), "X1_zhanling_miwu_icon", 134 }, --迷雾
|
|
[19] = { GetPictureFont("X1_zhanling_shenyuan_bg"), "X1_zhanling_shenyuan_icon", 135 }, --深渊
|
|
}
|
|
local curIndex
|
|
local lastGlobalSystemId
|
|
local lastwarOrders
|
|
local allMoney = 0
|
|
local rewardMoney = 0
|
|
local taskState = {
|
|
[0] = 1, --未完成
|
|
[1] = 0, --完成未领取
|
|
[2] = 2, --已领取
|
|
}
|
|
function LevelMoney:ctor(mainPanel, gameObject)
|
|
self.mainPanel = mainPanel
|
|
self.gameObject = gameObject
|
|
self:InitComponent(gameObject)
|
|
self:BindEvent()
|
|
|
|
self.itemList = {}
|
|
curIndex = nil
|
|
lastGlobalSystemId = nil
|
|
lastwarOrders = nil
|
|
end
|
|
|
|
-- 初始化组件
|
|
function LevelMoney:InitComponent(gameObject)
|
|
self.timeObj = Util.GetGameObject(gameObject, "time")
|
|
self.time = Util.GetGameObject(gameObject, "time/Text"):GetComponent("Text")
|
|
self.scroll = Util.GetGameObject(gameObject, "scroll")
|
|
self.itemPre = Util.GetGameObject(gameObject, "scroll/pre")
|
|
local rootHight = self.scroll.transform.rect.height
|
|
local width = self.scroll.transform.rect.width
|
|
self.scrollView = SubUIManager.Open(SubUIConfig.ScrollCycleView, self.scroll.transform,
|
|
self.itemPre, nil, Vector2.New(width, rootHight), 1, 1, Vector2.New(0, 5))
|
|
self.scrollView.moveTween.MomentumAmount = 1
|
|
self.scrollView.moveTween.Strength = 2
|
|
self.level = Util.GetGameObject(gameObject, "banner/level"):GetComponent("Text")
|
|
self.rewardMoney = Util.GetGameObject(gameObject, "banner/money2"):GetComponent("Text")
|
|
self.shengYuMoney = Util.GetGameObject(gameObject, "banner/money1"):GetComponent("Text")
|
|
end
|
|
|
|
function LevelMoney:BindEvent()
|
|
|
|
end
|
|
|
|
function LevelMoney:AddEvent()
|
|
end
|
|
|
|
function LevelMoney:RemoveEvent()
|
|
end
|
|
|
|
function LevelMoney:OnShow()
|
|
self.gameObject:SetActive(true)
|
|
|
|
-- OperatingManager.GetAllWarOrderData(function ()
|
|
-- end)
|
|
self:SetData()
|
|
self:SetBanner()
|
|
-- self:SetWarOrdersBtn()
|
|
end
|
|
|
|
function LevelMoney:OnHide()
|
|
self.gameObject:SetActive(false)
|
|
end
|
|
|
|
function LevelMoney:SetData()
|
|
rewardMoney = 0
|
|
allMoney = 0
|
|
allData = OperatingManager.GetWanYuanLiBao(ActivityTypeDef.LevelLiJin)
|
|
if allData == nil then
|
|
return
|
|
end
|
|
local setTop = false
|
|
table.sort(allData, function(a, b)
|
|
if a.state == b.state then
|
|
return a.value < b.value
|
|
else
|
|
return taskState[a.state] > taskState[b.state]
|
|
end
|
|
end)
|
|
|
|
for index, data in ipairs(allData) do
|
|
allMoney = allMoney + data.money
|
|
if data.state == 1 then
|
|
rewardMoney = rewardMoney + data.money
|
|
end
|
|
end
|
|
table.insert(allData, {})
|
|
if not curIndex then
|
|
curIndex = #allData
|
|
setTop = true
|
|
end
|
|
|
|
self.scrollView:SetData(allData, function(index, go)
|
|
self:SetItem(go, allData[index], index, #allData)
|
|
end)
|
|
if setTop then
|
|
self.scrollView:SetIndex(1)
|
|
end
|
|
end
|
|
|
|
function LevelMoney:SetBanner()
|
|
self.level.text = PlayerManager.level
|
|
self.rewardMoney.text = rewardMoney .. GetLanguageStrById("钻石")
|
|
self.shengYuMoney.text = allMoney - rewardMoney .. GetLanguageStrById("钻石")
|
|
end
|
|
|
|
function LevelMoney:SetItem(go, data, index, max)
|
|
if index == max then
|
|
go:SetActive(false)
|
|
return
|
|
else
|
|
go:SetActive(true)
|
|
end
|
|
local sConFigData = data
|
|
local state = sConFigData.state
|
|
local upLine = Util.GetGameObject(go, "upLine")
|
|
local downLine = Util.GetGameObject(go, "downLine")
|
|
local progress = Util.GetGameObject(go, "progress"):GetComponent("Text")
|
|
local freeGrid = Util.GetGameObject(go, "freeGrid")
|
|
local received = Util.GetGameObject(go, "received")
|
|
local btn = Util.GetGameObject(go, "btn")
|
|
local btnTxt = Util.GetGameObject(go, "btn/Text"):GetComponent("Text")
|
|
local redpoint = Util.GetGameObject(go, "btn/redpoint")
|
|
|
|
upLine:SetActive(index ~= 1)
|
|
downLine:SetActive(index ~= max - 1)
|
|
|
|
if not self.itemList then
|
|
self.itemList = {}
|
|
end
|
|
if not self.itemList[go] then
|
|
self.itemList[go] = {}
|
|
end
|
|
if not self.itemList[go][freeGrid] then
|
|
self.itemList[go][freeGrid] = {}
|
|
end
|
|
|
|
for i = 1, #self.itemList[go][freeGrid] do
|
|
self.itemList[go][freeGrid][i].gameObject:SetActive(false)
|
|
end
|
|
|
|
for i = 1, #sConFigData.reward do
|
|
if not self.itemList[go][freeGrid][i] then
|
|
self.itemList[go][freeGrid][i] = SubUIManager.Open(SubUIConfig.ItemView, freeGrid.transform)
|
|
end
|
|
self.itemList[go][freeGrid][i]:OnOpen(false, sConFigData.reward[i], 0.7)
|
|
-- self.itemList[go][freeGrid][i]:SetCorner(4, taskData.freeObtained)
|
|
self.itemList[go][freeGrid][i].gameObject:SetActive(true)
|
|
end
|
|
|
|
|
|
|
|
progress.text = data.value
|
|
received:SetActive(state == 1)
|
|
|
|
|
|
btn:SetActive(state == 0 or state == 2)
|
|
redpoint:SetActive(state == 2)
|
|
if state == 2 then
|
|
btnTxt.text = GetLanguageStrById(10022)
|
|
elseif state == 0 then
|
|
btnTxt.text = GetLanguageStrById(50536)
|
|
end
|
|
|
|
Util.AddOnceClick(btn, function()
|
|
if state == 2 then
|
|
local curActivityId = ActivityGiftManager.GetActivityIdByType(ActivityTypeDef.LevelLiJin)
|
|
NetManager.GetActivityRewardRequest(sConFigData.id, curActivityId, function(drop)
|
|
UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1)
|
|
self:OnShow()
|
|
Game.GlobalEvent:DispatchEvent(GameEvent.WanYuan.Refresh)
|
|
CheckRedPointStatus(RedPointType.WanYuan) --万元礼金
|
|
end)
|
|
end
|
|
end)
|
|
end
|
|
|
|
return LevelMoney
|