2021-05-10 10:06:53 +08:00
|
|
|
|
|
|
|
|
|
local SheJiDaDian = {}
|
|
|
|
|
local sortingOrder = 0
|
|
|
|
|
local globalActive = ConfigManager.GetConfig(ConfigName.GlobalActivity)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
local t = 20 --用来区分长按和点击的临界值
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:New(gameObject)
|
|
|
|
|
local b = {}
|
|
|
|
|
b.gameObject = gameObject
|
|
|
|
|
b.transform = gameObject.transform
|
|
|
|
|
setmetatable(b, { __index = SheJiDaDian })
|
|
|
|
|
return b
|
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
local itemDataList = {--捐献道具id--三个按钮的数字显示--三个按钮的图片--三个trigger
|
|
|
|
|
[1] = { id = 50000 , leftNum = nil , value = 1},
|
|
|
|
|
[2] = { id = 50001 , leftNum = nil , value = 2},
|
|
|
|
|
[3] = { id = 50002 , leftNum = nil , value = 10}
|
2020-10-24 18:20:43 +08:00
|
|
|
|
}
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
--初始化组件(用于子类重写)
|
|
|
|
|
function SheJiDaDian:InitComponent()
|
|
|
|
|
--leftUp
|
|
|
|
|
self.leftUp = Util.GetGameObject(self.gameObject,"leftUp")
|
|
|
|
|
self.rankPre = Util.GetGameObject(self.leftUp,"rank")
|
|
|
|
|
self.rankGrid = Util.GetGameObject(self.leftUp,"grid")
|
|
|
|
|
self.rankList = {}
|
|
|
|
|
for i = 1 ,self.rankGrid.transform.childCount do
|
|
|
|
|
self.rankList[i] = {}
|
|
|
|
|
self.rankList[i].go = self.rankGrid.transform:GetChild(i-1).gameObject
|
|
|
|
|
self.rankList[i].Ima = Util.GetGameObject(self.rankList[i].go,"Image"):GetComponent("Image")
|
|
|
|
|
self.rankList[i].Ima.sprite = Util.LoadSprite("r_playerrumble_paiming_0"..i)
|
|
|
|
|
self.rankList[i].textCom = Util.GetGameObject(self.rankList[i].go,"Text"):GetComponent("Text")
|
|
|
|
|
end
|
|
|
|
|
self.myScoreText = Util.GetGameObject(self.leftUp,"score/myScore")
|
|
|
|
|
self.guildScoreText = Util.GetGameObject(self.leftUp,"score/guildScore")
|
|
|
|
|
self.score = Util.GetGameObject(self.leftUp,"score/score"):GetComponent("Text")
|
|
|
|
|
|
|
|
|
|
self.btnDetail = Util.GetGameObject(self.leftUp,"btnDetail")
|
|
|
|
|
self.btnTeamRank = Util.GetGameObject(self.leftUp,"teamRank")
|
|
|
|
|
self.btnPersonRank = Util.GetGameObject(self.leftUp,"personRank")
|
|
|
|
|
self.select = Util.GetGameObject(self.leftUp,"select")
|
|
|
|
|
|
|
|
|
|
--rightUp
|
|
|
|
|
self.btnHelp= Util.GetGameObject(self.gameObject,"btnHelp")
|
|
|
|
|
self.helpPosition=self.btnHelp:GetComponent("RectTransform").localPosition
|
|
|
|
|
self.rightUp = Util.GetGameObject(self.gameObject,"rightUp")
|
|
|
|
|
self.btnStore = Util.GetGameObject(self.rightUp,"store")
|
|
|
|
|
self.btnRewardList = Util.GetGameObject(self.rightUp,"reward")
|
|
|
|
|
|
|
|
|
|
--center
|
|
|
|
|
self.centerTime = Util.GetGameObject(self.gameObject,"center/time/num"):GetComponent("Text")
|
|
|
|
|
self.btnGet = Util.GetGameObject(self.gameObject,"center/btnGet")
|
|
|
|
|
self.effect = Util.GetGameObject(self.gameObject,"center/DynamicActivityPanel_daiji")
|
|
|
|
|
self.effect2 = Util.GetGameObject(self.gameObject,"center/DynamicActivityPanel_dakai")
|
|
|
|
|
self.leftTime = Util.GetGameObject(self.gameObject,"center/limitdi/limit"):GetComponent("Text")
|
|
|
|
|
|
|
|
|
|
--bottomArea
|
|
|
|
|
self.bottom = Util.GetGameObject(self.gameObject,"bottom")
|
|
|
|
|
self.slider = Util.GetGameObject(self.bottom,"slider")
|
|
|
|
|
self.sliderComp = Util.GetGameObject(self.slider,"Slider"):GetComponent("Slider")
|
|
|
|
|
self.level = Util.GetGameObject(self.slider,"level"):GetComponent("Text")
|
|
|
|
|
self.btnBox = Util.GetGameObject(self.slider,"reward/box")
|
|
|
|
|
self.scoreText = Util.GetGameObject(self.slider,"score"):GetComponent("Text")
|
|
|
|
|
self.boxEffect = Util.GetGameObject(self.btnBox,"UI_Effect_BaoXiang_KeKaiQi")
|
|
|
|
|
|
|
|
|
|
self.items = Util.GetGameObject(self.bottom,"items")
|
|
|
|
|
self.btnAdd = Util.GetGameObject(self.items,"item3/btnAdd")
|
|
|
|
|
self.itemData = {}
|
|
|
|
|
for i = 1, self.items.transform.childCount do
|
|
|
|
|
self.itemData[i] = {}
|
|
|
|
|
self.itemData[i].go = self.items.transform:GetChild(i-1).gameObject
|
|
|
|
|
self.itemData[i].num = Util.GetGameObject(self.itemData[i].go,"text/num"):GetComponent("Text")
|
|
|
|
|
self.itemData[i].donImg = Util.GetGameObject(self.itemData[i].go,"Image")
|
|
|
|
|
self.itemData[i].trigger = Util.GetEventTriggerListener(self.itemData[i].donImg)
|
|
|
|
|
self.itemData[i].trigger.onPointerDown = self.itemData[i].trigger.onPointerDown + function(go, data) self.OnPointerDown(go, data, i) end
|
|
|
|
|
self.itemData[i].trigger.onPointerUp = self.itemData[i].trigger.onPointerUp + self.OnPointerUp
|
|
|
|
|
end
|
|
|
|
|
self.curItemIndex = 0
|
|
|
|
|
self.numCount = 0
|
|
|
|
|
self.isPressed = false
|
|
|
|
|
self.isShortPress = false
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
--绑定事件(用于子类重写)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
function SheJiDaDian:BindEvent()
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnHelp,function()
|
|
|
|
|
UIManager.OpenPanel(UIName.HelpPopup,self.actConfig.HelpId,self.helpPosition.x,self.helpPosition.y)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnGet,function()
|
|
|
|
|
NetManager.GetSheJiRewardRequest(self.actId,function (_drop)
|
|
|
|
|
self.effect2:SetActive(true)
|
|
|
|
|
Timer.New(function()
|
2020-10-27 16:15:34 +08:00
|
|
|
|
UIManager.OpenPanel(UIName.RewardItemPopup, _drop.drop,1,function()
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self:Refresh()
|
2020-10-27 16:15:34 +08:00
|
|
|
|
end)
|
|
|
|
|
end,0.5):Start()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnRewardList,function()
|
|
|
|
|
UIManager.OpenPanel(UIName.GeneralRankRewardPanel,2,self.myRank,self.actId)--需要活动id,和我的排名
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnStore,function()
|
|
|
|
|
-- self.effect:SetActive(false)--特效还没加,加好后放开
|
|
|
|
|
-- self.shop:SetActive(true)
|
|
|
|
|
-- self.btnBack:SetActive(false)
|
|
|
|
|
-- self.tabList:SetActive(false)
|
|
|
|
|
-- self.bottomBar:SetActive(false)
|
|
|
|
|
-- self:StoreShow()--商店
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnDetail,function()
|
|
|
|
|
if self.curRankType == RANK_TYPE.GOLD_EXPER then--个人排行
|
2020-10-24 18:20:43 +08:00
|
|
|
|
UIManager.OpenPanel(UIName.RankingSingleListPanel,rankKingList[13])
|
2021-05-10 10:06:53 +08:00
|
|
|
|
elseif self.curRankType == RANK_TYPE.CELEBRATION_GUILD then--工会排行
|
2020-10-24 18:20:43 +08:00
|
|
|
|
UIManager.OpenPanel(UIName.RankingSingleListPanel,rankKingList[14])
|
|
|
|
|
end
|
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnTeamRank,function()
|
|
|
|
|
self.curRankType = RANK_TYPE.CELEBRATION_GUILD
|
|
|
|
|
self:LeftUpShow(self.curRankType)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnPersonRank,function()
|
|
|
|
|
self.curRankType = RANK_TYPE.GOLD_EXPER
|
|
|
|
|
self:LeftUpShow(self.curRankType)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnAdd,function ()
|
|
|
|
|
JumpManager.GoJump(40011)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
Util.AddOnceClick(self.btnBox,function ()
|
|
|
|
|
DynamicActivityManager.SetCurLevel(math.floor(self.curScore/(self.actReward[1].Values[2][1])))
|
|
|
|
|
UIManager.OpenPanel(UIName.GeneralRewardPopup,1,self.actType,self.actId)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
end
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
--添加事件监听(用于子类重写)
|
|
|
|
|
function SheJiDaDian:AddListener()
|
|
|
|
|
Game.GlobalEvent:AddEvent(GameEvent.DynamicTask.OnGetReward, self.Refresh)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--移除事件监听(用于子类重写)
|
|
|
|
|
function SheJiDaDian:RemoveListener()
|
|
|
|
|
Game.GlobalEvent:RemoveEvent(GameEvent.DynamicTask.OnGetReward, self.Refresh)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--界面打开时调用(用于子类重写)
|
|
|
|
|
function SheJiDaDian:OnOpen(_activityConfig,_index,parent)
|
|
|
|
|
self.actConfig = _activityConfig
|
|
|
|
|
self.pageIndex = _index
|
|
|
|
|
self.parent = parent
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- 打开,重新打开时回调
|
|
|
|
|
function SheJiDaDian:OnShow(_sortingOrder)
|
|
|
|
|
self.gameObject:SetActive(true)
|
|
|
|
|
Util.AddParticleSortLayer(self.effect, _sortingOrder - sortingOrder)
|
|
|
|
|
Util.AddParticleSortLayer(self.effect2, _sortingOrder - sortingOrder)
|
|
|
|
|
sortingOrder = _sortingOrder
|
|
|
|
|
self.actId = self.actConfig.ActId
|
|
|
|
|
self.actType = self.actConfig.ActiveType > 0 and self.actConfig.ActiveType or self.actConfig.FunType
|
|
|
|
|
if self.actConfig.IfBack == 1 then
|
|
|
|
|
if self.actConfig.ActiveType > 0 then
|
|
|
|
|
local id = ActivityGiftManager.IsActivityTypeOpen(self.actConfig.ActiveType)
|
|
|
|
|
LogGreen("id:"..id)
|
|
|
|
|
if id and id > 0 then
|
|
|
|
|
self.actId = id
|
|
|
|
|
local config = ConfigManager.TryGetConfigDataByThreeKey(ConfigName.ActivityGroups,"PageType",self.actConfig.PageType,"ActiveType",self.actConfig.ActiveType,"ActId",id)
|
|
|
|
|
if config then
|
|
|
|
|
self.actConfig = config
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
FixedUpdateBeat:Add(self.OnUpdate, self)--长按方法注册
|
|
|
|
|
self:Refresh()
|
|
|
|
|
self:CheckGuild()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--检查是否有公会
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:CheckGuild()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
if PlayerManager.familyId == 0 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
UIManager.OpenPanel(UIName.GeneralPopup,GENERAL_POPUP_TYPE.SheJiCheckGuild,function()
|
|
|
|
|
self.parent.OnPageTabChange(1)
|
|
|
|
|
end)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--刷新整个页面
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:Refresh()
|
|
|
|
|
self.effect:SetActive(true)
|
|
|
|
|
self.effect2:SetActive(false)
|
|
|
|
|
self.ActInfo = ActivityGiftManager.GetActivityTypeInfo(self.actType)--活动数据
|
|
|
|
|
self.actReward = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId",self.actId)
|
|
|
|
|
self:RefreshItemsData()
|
|
|
|
|
self:TimeCountDown()--时间
|
|
|
|
|
self:LeftUpShow()
|
|
|
|
|
self:RefreshRewardBox()--刷新奖励宝箱数据
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--刷新物品剩余数量和当前积分
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:RefreshItemsData()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
for i = 1, 3 do
|
2021-05-10 10:06:53 +08:00
|
|
|
|
itemDataList[i].leftNum = BagManager.GetItemCountById(itemDataList[i].id)
|
|
|
|
|
self.itemData[i].num.text = itemDataList[i].leftNum
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.curScore = self.ActInfo.mission[1].progress
|
|
|
|
|
self.scoreText.text = ((self.curScore)%(self.actReward[1].Values[2][1])).."/"..self.actReward[1].Values[2][1]
|
|
|
|
|
self.sliderComp.value = (((self.curScore))%(self.actReward[1].Values[2][1]))/self.actReward[1].Values[2][1]
|
|
|
|
|
self.level.text = math.floor((self.curScore)/(self.actReward[1].Values[2][1])) .. "级"
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:RefreshRewardBox()
|
|
|
|
|
self.canGetRewardList={}
|
|
|
|
|
self.boxEffect:SetActive(false)
|
|
|
|
|
self.btnBox:GetComponent("Image").enabled = true
|
2020-10-24 18:20:43 +08:00
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
for i = 1, #self.ActInfo.mission do
|
|
|
|
|
local curLevel = self.curScore/self.actReward[1].Values[2][1]
|
|
|
|
|
if self.ActInfo.mission[i].state == 0 and curLevel >= i then
|
|
|
|
|
table.insert(self.canGetRewardList,self.ActInfo.mission[i])
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
if #self.canGetRewardList > 0 then
|
|
|
|
|
self.boxEffect:SetActive(true)
|
|
|
|
|
self.btnBox:GetComponent("Image").enabled = false
|
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--点击或长按处理升级处理
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian.OnPointerDown(Pointgo,data,i)--按下
|
2020-10-26 16:10:58 +08:00
|
|
|
|
if PlayerManager.level < 50 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
PopupTipPanel.ShowTip("本活动需玩家等级达到五十级!")
|
2020-10-26 16:10:58 +08:00
|
|
|
|
return
|
|
|
|
|
end
|
2020-10-26 16:37:56 +08:00
|
|
|
|
if PlayerManager.familyId == 0 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
PopupTipPanel.ShowTip("请先加入公会!")
|
2020-10-26 16:37:56 +08:00
|
|
|
|
return
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.curItemIndex = i
|
|
|
|
|
if itemDataList[i].leftNum == 0 then
|
|
|
|
|
PopupTipPanel.ShowTip("道具不足,请先获取道具")
|
2020-12-07 20:15:49 +08:00
|
|
|
|
return
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.numCount = 1
|
|
|
|
|
self.isPressed = true
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian.OnPointerUp(Pointgo,data)--抬起
|
2020-10-26 16:37:56 +08:00
|
|
|
|
if PlayerManager.level < 50 or PlayerManager.familyId == 0 then
|
2020-10-26 16:10:58 +08:00
|
|
|
|
return
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self:RefreshBottom(true)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:OnUpdate()
|
|
|
|
|
if self.isPressed then
|
|
|
|
|
if self.numCount > t then
|
|
|
|
|
self.isShortPress = false
|
|
|
|
|
self:RefreshBottom(false)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
else
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.isShortPress = true
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.numCount = self.numCount + 1
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--发送捐献请求
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:RequestDonate(numCount)
|
2020-10-26 16:10:58 +08:00
|
|
|
|
if numCount <= 0 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
PopupTipPanel.ShowTip("道具不足,请先获取道具")
|
2020-10-26 12:23:04 +08:00
|
|
|
|
return
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
NetManager.SheJiDonateItemRequest(itemDataList[self.curItemIndex].id,numCount,function()
|
|
|
|
|
PopupTipPanel.ShowTip("成功献出"..(itemDataList[self.curItemIndex].value * numCount).."点贡献!")
|
|
|
|
|
self:Refresh()
|
2020-12-07 20:15:49 +08:00
|
|
|
|
CheckRedPointStatus(RedPointType.Celebration)
|
|
|
|
|
end)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--刷新左上排行版
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:LeftUpShow(_curRankType)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
if _curRankType then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.curRankType = _curRankType
|
2020-10-24 18:20:43 +08:00
|
|
|
|
else
|
2021-05-10 10:06:53 +08:00
|
|
|
|
if not self.curRankType or self.curRankType == 0 then
|
|
|
|
|
self.curRankType = RANK_TYPE.GOLD_EXPER
|
2020-10-26 17:04:07 +08:00
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.myScoreText:SetActive(self.curRankType == RANK_TYPE.GOLD_EXPER)
|
|
|
|
|
self.guildScoreText:SetActive(self.curRankType ~= RANK_TYPE.GOLD_EXPER)
|
|
|
|
|
self.select.transform:SetParent(self.curRankType == RANK_TYPE.GOLD_EXPER and self.btnPersonRank.transform or self.btnTeamRank.transform)
|
|
|
|
|
self.select.transform:SetSiblingIndex(1)
|
|
|
|
|
self.select.transform.localPosition = Vector3.zero
|
|
|
|
|
self.select.transform.localScale = Vector3.one
|
|
|
|
|
DynamicActivityManager.SheJiGetRankData(self.curRankType,self.actId,function(allRankData,myRankData)
|
|
|
|
|
for i = 1 ,#self.rankList do
|
|
|
|
|
self.rankList[i].textCom.text = (self.curRankType == RANK_TYPE.GOLD_EXPER) and
|
|
|
|
|
(allRankData[i] and allRankData[i].userName or "虚位以待")
|
|
|
|
|
or
|
|
|
|
|
(allRankData[i] and allRankData[i].guildName or "虚位以待")
|
2020-10-26 16:49:47 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
local guildScore = myRankData.param1 > 0 and myRankData.param1 or 0
|
|
|
|
|
self.score.text = self.curRankType == RANK_TYPE.GOLD_EXPER and guildScore or self.ActInfo.mission[1].progress
|
|
|
|
|
self.myRank = myRankData.rank
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end)
|
|
|
|
|
end
|
|
|
|
|
|
2020-12-07 20:15:49 +08:00
|
|
|
|
--刷新一次
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:RefreshBottom(isSend)
|
|
|
|
|
if isSend then
|
|
|
|
|
if self.isShortPress then
|
|
|
|
|
self.numCount = 1
|
|
|
|
|
else
|
|
|
|
|
if itemDataList[self.curItemIndex].leftNum >= 0 then
|
|
|
|
|
self.numCount = self.numCount/t
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
self:RequestDonate(self.numCount)
|
|
|
|
|
self.isPressed = false
|
|
|
|
|
self.isShortPress = false
|
|
|
|
|
else
|
|
|
|
|
itemDataList[self.curItemIndex].leftNum = itemDataList[self.curItemIndex].leftNum - 1
|
|
|
|
|
if itemDataList[self.curItemIndex].leftNum < 1 then
|
|
|
|
|
self.isPressed = false
|
|
|
|
|
self:RefreshBottom(true)
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
self.itemData[self.curItemIndex].num.text = itemDataList[self.curItemIndex].leftNum
|
|
|
|
|
self.curScore = self.curScore + itemDataList[self.curItemIndex].value
|
|
|
|
|
self.scoreText.text = ((self.curScore)%(self.actReward[1].Values[2][1])).."/"..self.actReward[1].Values[2][1]
|
|
|
|
|
self.value.value = (((self.curScore))%(self.actReward[1].Values[2][1]))/self.actReward[1].Values[2][1]
|
|
|
|
|
self.level.text = math.floor((self.curScore)/(self.actReward[1].Values[2][1])) .. "级"
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--商店
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:StoreShow()
|
|
|
|
|
if not self.shopView then
|
|
|
|
|
self.shopView = SubUIManager.Open(SubUIConfig.ShopView, self.content.transform)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.shopView:ShowShop(SHOP_TYPE.CELEBRATION_SHOP,sortingOrder)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--时间
|
2021-05-10 10:06:53 +08:00
|
|
|
|
function SheJiDaDian:TimeCountDown()
|
|
|
|
|
local setting = ConfigManager.GetConfigDataByKey(ConfigName.GodSacrificeSetting,"ActivityId",self.actId)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
--活动结束时间
|
|
|
|
|
local canGet = false
|
2021-05-10 10:06:53 +08:00
|
|
|
|
local actTime = self.ActInfo.endTime - GetTimeStamp()
|
|
|
|
|
self.leftTime.text = Language[10028]..TimeToFelaxible(actTime)
|
2020-10-24 18:20:43 +08:00
|
|
|
|
--宝箱领取重置时间
|
|
|
|
|
local timeOne = Today_N_OClockTimeStamp(setting.TimePointList[1]) - GetTimeStamp()
|
|
|
|
|
local leftTimeOne = timeOne > 0 and timeOne or timeOne + 86400--距离下一个十二点的时间
|
|
|
|
|
local timeTwo = Today_N_OClockTimeStamp(setting.TimePointList[2]) - GetTimeStamp()
|
|
|
|
|
local leftTimeTwo = timeTwo > 0 and timeTwo or timeTwo + 86400--距离下一个二十点的时间
|
|
|
|
|
local giftTime = leftTimeOne < leftTimeTwo and leftTimeOne or leftTimeTwo--取小的
|
|
|
|
|
|
2020-10-26 16:10:58 +08:00
|
|
|
|
local t1 = GetTimeStamp() - Today_N_OClockTimeStamp(setting.TimePointList[1])
|
|
|
|
|
local t2 = GetTimeStamp() - Today_N_OClockTimeStamp(setting.TimePointList[2])
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
if self.ActInfo.value == 0 then
|
2020-10-26 16:10:58 +08:00
|
|
|
|
if (t1 > 0 and t1 < 1800) or (t2 > 0 and t2 < 1800) then
|
|
|
|
|
canGet = true
|
|
|
|
|
else
|
|
|
|
|
canGet = false
|
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
else
|
2020-10-26 16:10:58 +08:00
|
|
|
|
if (t1 > 0 and t1 < 1800) or (t2 > 0 and t2 < 1800) then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
if (GetTimeStamp() - self.ActInfo.value) < 1800 then
|
2020-10-26 16:10:58 +08:00
|
|
|
|
canGet = false
|
|
|
|
|
else
|
|
|
|
|
canGet = true
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
canGet = false
|
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.centerTime.text = canGet == false and TimeToFelaxible(giftTime) or "奖励可领取"
|
2020-10-24 18:20:43 +08:00
|
|
|
|
|
2021-05-10 10:06:53 +08:00
|
|
|
|
if self.timer1 then
|
|
|
|
|
self.timer1:Stop()
|
|
|
|
|
self.timer1 = nil
|
2020-10-26 16:10:58 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.timer1 = Timer.New(function()
|
|
|
|
|
self.leftTime.text = "剩余时间:"..TimeToFelaxible(actTime)
|
|
|
|
|
self.centerTime.text = canGet == false and TimeToFelaxible(giftTime) or "奖励可领取"
|
2020-10-24 18:20:43 +08:00
|
|
|
|
|
|
|
|
|
if actTime < 1 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.timer1:Stop()
|
|
|
|
|
self.timer1 = nil
|
2020-10-24 18:20:43 +08:00
|
|
|
|
parent:ClosePanel()
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
if giftTime < 0 then
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self:Refresh()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
actTime = actTime -1
|
|
|
|
|
giftTime = giftTime - 1
|
|
|
|
|
end, 1, -1, true)
|
2021-05-10 10:06:53 +08:00
|
|
|
|
self.timer1:Start()
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
--界面关闭时调用(用于子类重写)
|
|
|
|
|
function SheJiDaDian:OnClose()
|
|
|
|
|
self.gameObject:SetActive(false)
|
|
|
|
|
if self.timer1 then
|
|
|
|
|
self.timer1:Stop()
|
|
|
|
|
self.timer1 = nil
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
--界面销毁时调用(用于子类重写)
|
|
|
|
|
function SheJiDaDian:OnDestroy()
|
|
|
|
|
FixedUpdateBeat:Remove(self.OnUpdate, self)
|
|
|
|
|
if self.timer1 then
|
|
|
|
|
self.timer1:Stop()
|
|
|
|
|
self.timer1 = nil
|
|
|
|
|
end
|
2020-10-24 18:20:43 +08:00
|
|
|
|
end
|
2021-05-10 10:06:53 +08:00
|
|
|
|
return SheJiDaDian
|