524 lines
20 KiB
Lua
524 lines
20 KiB
Lua
--[[
|
|
* @ClassName OperatingPanel
|
|
* @Description 等级特权面板
|
|
* @Date 2019/5/27 11:14
|
|
* @Author MagicianJoker, fengliudianshao@outlook.com
|
|
* @Copyright Copyright (c) 2019, MagicianJoker
|
|
--]]
|
|
-- local VipTaskListItem = require("Modules/Vip/VipTaskListItem")
|
|
|
|
---@class VipPanelV2
|
|
local VipPanelV2 = quick_class("VipPanelV2", BasePanel)
|
|
local this = VipPanelV2
|
|
local kMaxGiftCount, kMaxTaskCount = 4, 5
|
|
local ReceiveTypeIconDef = {
|
|
"t_tequan_tequandengjilibao", --特权等级礼包
|
|
"t_tequan_meirijiangli", --每日礼包
|
|
}
|
|
local orginLayer
|
|
|
|
function VipPanelV2:InitComponent()
|
|
orginLayer = 0
|
|
self.bg = Util.GetGameObject(self.transform, "bg")
|
|
if Screen.width / Screen.height < 1080 / 1920 then
|
|
screenAdapte(self.bg)
|
|
end
|
|
|
|
this.BtView = SubUIManager.Open(SubUIConfig.BtView, self.transform)
|
|
this.UpView = SubUIManager.Open(SubUIConfig.UpView, self.transform)
|
|
|
|
-- 嚣张的头像
|
|
this.level = Util.GetGameObject(self.gameObject, "LeftUp/headBox/lvFrame/lv"):GetComponent("Text")
|
|
this.playName = Util.GetGameObject(self.gameObject, "LeftUp/headBox/name"):GetComponent("Text")
|
|
this.expSliderValue = Util.GetGameObject(self.gameObject, "LeftUp/headBox/exp"):GetComponent("Slider")
|
|
this.headBox = Util.GetGameObject(self.gameObject, "LeftUp/headBox")
|
|
this.headPos = Util.GetGameObject(self.gameObject, "LeftUp/headBox/headpos")
|
|
this.headRedpot = Util.GetGameObject(self.gameObject, "LeftUp/headBox/redpot")
|
|
this.teamPower = Util.GetGameObject(self.gameObject, "LeftUp/powerBtn/value"):GetComponent("Text")
|
|
-- self.BtnBack = Util.GetGameObject(self.transform, "btnBack")
|
|
-- this.helpBtn = Util.GetGameObject(self.gameObject, "helpBtn")
|
|
-- this.helpPosition=this.helpBtn:GetComponent("RectTransform").localPosition
|
|
--topPart
|
|
self.topPart = Util.GetGameObject(self.transform, "frame/topPart")
|
|
self.BtnLeft = Util.GetGameObject(self.transform, "leftBtn")
|
|
self.BtnRight = Util.GetGameObject(self.transform, "rightBtn")
|
|
self.BtnTip = Util.GetGameObject(self.transform, "btnTip")
|
|
self.curLevel = Util.GetGameObject(self.transform, "btnTip/bg/vip"):GetComponent("Image")
|
|
|
|
self.StateRoot = Util.GetGameObject(self.topPart, "stateRoot")
|
|
|
|
self.curStatePart = Util.GetGameObject(self.StateRoot, "curState")
|
|
self.currentLvNum=Util.GetGameObject(self.curStatePart,"title/num"):GetComponent("Text")
|
|
self.progressBar = Util.GetGameObject(self.curStatePart, "progressBar"):GetComponent("Slider")
|
|
self.progressText = Util.GetGameObject(self.curStatePart, "progressBar/Text"):GetComponent("Text")
|
|
|
|
|
|
--midPart
|
|
self.midPart = Util.GetGameObject(self.transform, "midPart")
|
|
self.giftRoot = Util.GetGameObject(self.midPart, "giftRoot")
|
|
self.giftTypeIcon = Util.GetGameObject(self.giftRoot, "title"):GetComponent("Image")
|
|
self.giftItemContent = Util.GetGameObject(self.giftRoot, "grid")
|
|
self.giftItemList = {}
|
|
for i = 1, kMaxGiftCount do
|
|
self.giftItemList[i] = Util.GetGameObject(self.giftRoot, "grid/prop_"..i)--SubUIManager.Open(SubUIConfig.ItemView, self.giftItemContent.transform)
|
|
end
|
|
|
|
self.effect = Util.GetGameObject(self.giftRoot, "UI_Effect_VipPanel")
|
|
effectAdapte(self.effect)
|
|
|
|
self.BtnReceive = Util.GetGameObject(self.topPart, "btnGet")
|
|
self.BtnReceiveText = Util.GetGameObject(self.BtnReceive, "Text"):GetComponent("Text")
|
|
self.receiveRedPoint = Util.GetGameObject(self.BtnReceive,"redPoint")
|
|
|
|
--privilege
|
|
self.privilegeTitle = Util.GetGameObject(self.transform, "frame/topPart/privilegeRoot/title"):GetComponent("Text")
|
|
self.privilegeContent = Util.GetGameObject(self.transform, "frame/topPart/privilegeRoot/privilegeList/viewPort/content")
|
|
self.privilegeItem = Util.GetGameObject(self.privilegeContent, "itemPro")
|
|
self.privilegeItem.gameObject:SetActive(false)
|
|
self.privilegeList = {}
|
|
--bottomPart
|
|
self.maxLv = Util.GetGameObject(self.transform, "bottomPart/maxLv")
|
|
self.btnLvUp = Util.GetGameObject(self.transform, "bottomPart/btnLvUp")
|
|
self.taskList = Util.GetGameObject(self.transform, "bottomPart/taskList")
|
|
|
|
self.taskItemList = {}
|
|
for i = 1, self.taskList.transform.childCount do
|
|
self.taskItemList[i] = self.taskList.transform:GetChild(i - 1)
|
|
end
|
|
|
|
end
|
|
|
|
-- 刷新玩家信息显示
|
|
function this.FreshPlayerInfo()
|
|
this.level.text = PlayerManager.level
|
|
this.expSliderValue.value = PlayerManager.exp / PlayerManager.userLevelData[PlayerManager.level].Exp
|
|
this.playName.text = PlayerManager.nickName
|
|
this.teamPower.text = FormationManager.GetFormationPower(FormationManager.curFormationIndex)
|
|
end
|
|
|
|
-- 设置头像
|
|
function this.SetPlayerHead()
|
|
if not this.playerHead then
|
|
this.playerHead = SubUIManager.Open(SubUIConfig.PlayerHeadView, this.headPos.transform)
|
|
end
|
|
this.playerHead:SetHead(PlayerManager.head)
|
|
this.playerHead:SetFrame(PlayerManager.frame)
|
|
this.playerHead:SetScale(Vector3.one * 0.9)
|
|
this.playerHead:SetPosition(Vector3.New(-5, 0, 0))
|
|
|
|
end
|
|
|
|
function VipPanelV2:BindEvent()
|
|
|
|
--帮助按钮
|
|
Util.AddClick(this.helpBtn, function()
|
|
UIManager.OpenPanel(UIName.HelpPopup, HELP_TYPE.VIP, this.helpPosition.x,this.helpPosition.y)
|
|
end)
|
|
|
|
Util.AddClick(self.BtnBack, function()
|
|
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
|
|
self:ClosePanel()
|
|
end)
|
|
|
|
Util.AddClick(self.BtnLeft, function()
|
|
self:OnTurnLeftBtnClicked()
|
|
end)
|
|
Util.AddClick(self.BtnRight, function()
|
|
self:OnTurnRightBtnClicked()
|
|
end)
|
|
|
|
Util.AddClick(self.BtnReceive, function()
|
|
self:OnReceiveBtnClicked()
|
|
end)
|
|
|
|
Util.AddClick(self.btnLvUp, function()
|
|
self:OnBtnLvUpClicked()
|
|
end)
|
|
|
|
end
|
|
|
|
function VipPanelV2:OnVipTaskStatusChanged(taskId)
|
|
self:OnTaskStatusChanged(taskId)
|
|
end
|
|
|
|
function VipPanelV2:OnVipDailyRewardStatusChanged(taskId)
|
|
self:OnShow()
|
|
end
|
|
|
|
function VipPanelV2:AddListener()
|
|
Game.GlobalEvent:AddEvent(GameEvent.Vip.OnVipTaskStatusChanged, self.OnVipTaskStatusChanged, self)
|
|
Game.GlobalEvent:AddEvent(GameEvent.Vip.OnVipDailyRewardStatusChanged, self.OnVipDailyRewardStatusChanged, self)
|
|
Game.GlobalEvent:AddEvent(GameEvent.CloseUI.OnClose,self.OnVipDailyRewardStatusChanged, self)
|
|
end
|
|
|
|
function VipPanelV2:RemoveListener()
|
|
Game.GlobalEvent:RemoveEvent(GameEvent.Vip.OnVipTaskStatusChanged, self.OnVipTaskStatusChanged, self)
|
|
Game.GlobalEvent:RemoveEvent(GameEvent.Vip.OnVipDailyRewardStatusChanged, self.OnVipDailyRewardStatusChanged, self)
|
|
Game.GlobalEvent:RemoveEvent(GameEvent.CloseUI.OnClose,self.OnVipDailyRewardStatusChanged, self)
|
|
end
|
|
|
|
--待功能扩展(试图打开某个状态)
|
|
function VipPanelV2:OnOpen()
|
|
this.UpView:OnOpen({ showType = UpViewOpenType.ShowRight, panelType = PanelType.Main })
|
|
this.BtView:OnOpen({ sortOrder = self.sortingOrder, panelType = PanelTypeView.TeQuan })
|
|
end
|
|
|
|
function VipPanelV2:OnSortingOrderChange()
|
|
Util.AddParticleSortLayer(self.effect, self.sortingOrder - orginLayer)
|
|
orginLayer = self.sortingOrder
|
|
end
|
|
|
|
function VipPanelV2:OnShow()
|
|
self:InitVipContext()
|
|
self:SetPanelStatus()
|
|
this.FreshPlayerInfo()
|
|
this.SetPlayerHead()
|
|
end
|
|
|
|
function VipPanelV2:OnClose()
|
|
if self.priThread then
|
|
coroutine.stop(self.priThread)
|
|
self.priThread = nil
|
|
end
|
|
|
|
if self.taskThread then
|
|
coroutine.stop(self.taskThread)
|
|
self.taskThread = nil
|
|
end
|
|
end
|
|
|
|
function VipPanelV2:OnDestroy()
|
|
SubUIManager.Close(this.UpView)
|
|
SubUIManager.Close(this.BtView)
|
|
end
|
|
|
|
function VipPanelV2:InitVipContext()
|
|
self.context = {}
|
|
self.context.UserMissionInfo = TaskManager.GetTypeTaskList(TaskTypeDef.VipTask)
|
|
self.context.vipLevel = VipManager.GetVipLevel()
|
|
end
|
|
|
|
function VipPanelV2:SetPanelStatus()
|
|
local maxLv = VipManager.GetMaxVipLevel()
|
|
self.curLevel.sprite = Util.LoadSprite("r_zjm_tequanpaizi_0" .. self.context.vipLevel)
|
|
-- 显示的
|
|
self.curShowLevel = math.min(self.context.vipLevel + 1, maxLv)
|
|
self:RefreshPanelStatus(self.curShowLevel)
|
|
self:CheckTaskShow()
|
|
self.BtnLeft:SetActive(self.curShowLevel > 1)
|
|
self.BtnRight:SetActive(self.curShowLevel ~= maxLv)
|
|
end
|
|
|
|
-- 检测任务显示
|
|
function VipPanelV2:CheckTaskShow()
|
|
if self.context.vipLevel == VipManager.GetMaxVipLevel() then
|
|
self.taskList:SetActive(false)
|
|
self.btnLvUp:SetActive(false)
|
|
self.maxLv:SetActive(true)
|
|
else
|
|
self.maxLv:SetActive(false)
|
|
local isfinish = true
|
|
local taskListInfo = self.context.UserMissionInfo
|
|
for i = 1, #taskListInfo do
|
|
if taskListInfo[i].state ~= VipTaskStatusDef.Received then
|
|
isfinish = false
|
|
end
|
|
end
|
|
self.taskList:SetActive(not isfinish)
|
|
self.btnLvUp:SetActive(isfinish)
|
|
if not isfinish then
|
|
self:SetVipTaskList(self.context.vipLevel)
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
function VipPanelV2:SetProgressShow(level)
|
|
local taskLevel = level - 1
|
|
if taskLevel < self.context.vipLevel then
|
|
self.progressBar.value = 1
|
|
self.progressText.text = "4/4"
|
|
elseif taskLevel > self.context.vipLevel then
|
|
self.progressBar.value = 0
|
|
self.progressText.text = "0/4"
|
|
else
|
|
local taskFinishNum = 0
|
|
local taskListInfo = self.context.UserMissionInfo
|
|
for i = 1, #taskListInfo do
|
|
if taskListInfo[i].state == VipTaskStatusDef.Received then
|
|
taskFinishNum = taskFinishNum + 1
|
|
end
|
|
end
|
|
self.progressBar.value = taskFinishNum / #taskListInfo
|
|
self.progressText.text = string.format("%d/%d", taskFinishNum, #taskListInfo)
|
|
end
|
|
end
|
|
|
|
function VipPanelV2:SetRewardList(level)
|
|
local VipLvConfig = ConfigManager.GetConfigData(ConfigName.VipLevelConfig, level)
|
|
local configData = VipLvConfig.Property
|
|
table.walk(self.giftItemList, function(giftItem)
|
|
giftItem:SetActive(false)
|
|
end)
|
|
for idx, dataInfo in ipairs(configData) do
|
|
local id = dataInfo[1]
|
|
local num = dataInfo[2]
|
|
if num ~= 0 then
|
|
self.giftItemList[idx]:SetActive(true)
|
|
local propInfo = ConfigManager.GetConfigData(ConfigName.PropertyConfig, id)
|
|
if propInfo.Style == 1 then
|
|
self.giftItemList[idx]:GetComponent("Text").text = string.format(Language[12023], propInfo.Info)
|
|
Util.GetGameObject(self.giftItemList[idx], "value"):GetComponent("Text").text = "+"..num
|
|
elseif propInfo.Style == 2 then
|
|
self.giftItemList[idx]:GetComponent("Text").text = propInfo.Info
|
|
Util.GetGameObject(self.giftItemList[idx], "value"):GetComponent("Text").text = string.format("+%d%%", num/100)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
--特权增益描述
|
|
function VipPanelV2:SetVipPrivileges(curVipLevel)
|
|
if self.priThread then
|
|
coroutine.stop(self.priThread)
|
|
self.priThread = nil
|
|
end
|
|
table.walk(self.privilegeList, function(privilegeItem)
|
|
privilegeItem:SetActive(false)
|
|
end)
|
|
local curVipData = PrivilegeManager.GetTipsByVipLv(curVipLevel)
|
|
local tempNumber = 0
|
|
self.priThread = coroutine.start(function()
|
|
for _, privilegeInfo in ipairs(curVipData) do
|
|
|
|
if privilegeInfo.value == ""
|
|
or (privilegeInfo.IfFloat == 1 and privilegeInfo.value > 0)
|
|
or (privilegeInfo.IfFloat == 2 and privilegeInfo.value > 1)
|
|
then
|
|
tempNumber = tempNumber + 1
|
|
local item = self:GetPrivilegeItem(tempNumber)
|
|
item:SetActive(false)
|
|
-- local str = "<size=45><color=#7bb15bFF> </color></size>"
|
|
-- str = string.format("<size=45><color=#7bb15bFF>%s</color></size>", privilegeInfo.value)
|
|
if privilegeInfo.IfFloat == 2 then --特权关卡挂机加成百分比
|
|
Util.GetGameObject(item, "title"):GetComponent("Text").text = string.format(privilegeInfo.content, "<color=#7AB159><size=35>"..(privilegeInfo.value*100-100).."%</size></color>")
|
|
else
|
|
Util.GetGameObject(item, "title"):GetComponent("Text").text = string.format(privilegeInfo.content, "<color=#7AB159><size=35>" .. privilegeInfo.value .. "</size></color>")
|
|
end
|
|
PlayUIAnim(Util.GetGameObject(item, "content"))
|
|
coroutine.wait(0.03)
|
|
--加成为0就别丢人现眼了
|
|
if privilegeInfo.value == 0 then
|
|
-- if privilegeInfo.id==1 and (privilegeInfo.value*100-100)==0 then
|
|
item:SetActive(false)
|
|
else
|
|
item:SetActive(true)
|
|
end
|
|
end
|
|
|
|
end
|
|
end)
|
|
end
|
|
function VipPanelV2:SetExtraPrivilege(index, configData)
|
|
local item = self:GetPrivilegeItem(index)
|
|
item.gameObject:SetActive(true)
|
|
local str = Language[10106]
|
|
for _, rewardInfo in ipairs(configData.VipBoxDailyReward) do
|
|
local itemConfig = ConfigManager.GetConfigData(ConfigName.ItemConfig, rewardInfo[1])
|
|
assert(itemConfig, string.format("ConfigName.ItemConfig not find Id:%s", rewardInfo[1]))
|
|
str = str .. string.format("%s<size=45><color=#7bb15bFF>%s</color></size>", itemConfig.Name, rewardInfo[2])
|
|
end
|
|
Util.GetGameObject(item, "title"):GetComponent("Text").text = str
|
|
end
|
|
function VipPanelV2:GetPrivilegeItem(index)
|
|
if self.privilegeList[index] then
|
|
return self.privilegeList[index]
|
|
else
|
|
local newItem = newObjToParent(self.privilegeItem, self.privilegeContent)
|
|
table.insert(self.privilegeList, newItem)
|
|
return newItem
|
|
end
|
|
end
|
|
|
|
--设置特权任务
|
|
function VipPanelV2:SetVipTaskList(level)
|
|
local configData = ConfigManager.GetConfigData(ConfigName.VipLevelConfig, level)
|
|
table.walk(self.taskItemList, function(taskItem)
|
|
taskItem.gameObject:SetActive(false)
|
|
end)
|
|
|
|
if level < self.context.vipLevel then
|
|
for i, taskId in ipairs(configData.OpenRules) do
|
|
self.taskItemList[i]:Init(taskId)
|
|
local taskConfigInfo = ConfigManager.GetConfigData(ConfigName.TaskConfig, taskId)
|
|
self.taskItemList[i]:SetValue({state = VipTaskStatusDef.Received, progress = taskConfigInfo.TaskValue[2][1]})
|
|
end
|
|
self:SetTaskAnimation(#configData.OpenRules)
|
|
elseif level > self.context.vipLevel then
|
|
for i, taskId in ipairs(configData.OpenRules) do
|
|
self.taskItemList[i]:Init(taskId)
|
|
self.taskItemList[i]:SetValue({state = VipTaskStatusDef.NotFinished, progress = 0})
|
|
end
|
|
self:SetTaskAnimation(#configData.OpenRules)
|
|
elseif level == self.context.vipLevel then--好像一定走这里
|
|
if #self.context.UserMissionInfo == 0 then
|
|
return
|
|
end
|
|
for i, taskInfo in ipairs(self.context.UserMissionInfo) do
|
|
-- self.taskItemList[i]:Init(taskInfo.missionId)
|
|
-- self.taskItemList[i]:SetValue(taskInfo)
|
|
self:showSingleTask(self.taskItemList[i],taskInfo)
|
|
end
|
|
self:SetTaskAnimation(#self.context.UserMissionInfo)
|
|
end
|
|
end
|
|
|
|
--单个初始化任务
|
|
function VipPanelV2:showSingleTask(item,taskInfo)
|
|
--creat
|
|
local itemPos = Util.GetGameObject(item, "content/itemPos")
|
|
local giftInfo = SubUIManager.Open(SubUIConfig.ItemView, itemPos.transform)
|
|
local desc = Util.GetGameObject(item, "content/desc"):GetComponent("Text")
|
|
local progressBar = Util.GetGameObject(item, "content/progressBar"):GetComponent("Slider")
|
|
local progressValue = Util.GetGameObject(item, "content/dealBtn/value"):GetComponent("Text")
|
|
local dealBtn = Util.GetGameObject(item, "content/dealBtn")
|
|
|
|
local finishFlag = Util.GetGameObject(item, "content/finished")
|
|
local redPoint = Util.GetGameObject(item,"content/redPoint")
|
|
|
|
--init
|
|
local data = nil
|
|
local taskConfigInfo = ConfigManager.GetConfigData(ConfigName.TaskConfig, taskInfo.missionId)
|
|
giftInfo:OnOpen(false, taskConfigInfo.Reward[1], 0.8)
|
|
desc.text = taskConfigInfo.Desc
|
|
progressBar.value = 0
|
|
progressValue.text = "0/" .. taskConfigInfo.TaskValue[2][1]
|
|
dealBtn:SetActive(false)
|
|
finishFlag:SetActive(false)
|
|
redPoint:SetActive(false)
|
|
|
|
--setvalue
|
|
data = taskInfo
|
|
progressBar.value = taskInfo.progress / taskConfigInfo.TaskValue[2][1]
|
|
progressValue.text = string.format("%s/%s", taskInfo.progress, taskConfigInfo.TaskValue[2][1])
|
|
dealBtn:SetActive(taskInfo.state == VipTaskStatusDef.NotFinished or taskInfo.state == VipTaskStatusDef.CanReceive)
|
|
if dealBtn.activeSelf then
|
|
dealBtn:GetComponent("Image").sprite = Util.LoadSprite(TaskGetBtnIconDef[taskInfo.state])
|
|
end
|
|
finishFlag:SetActive(taskInfo.state == VipTaskStatusDef.Received)
|
|
redPoint:SetActive(taskInfo.state == VipTaskStatusDef.CanReceive)
|
|
|
|
Util.AddOnceClick(dealBtn,function ()
|
|
if data.state == VipTaskStatusDef.NotFinished then
|
|
JumpManager.GoJump(taskConfigInfo.Jump[1])
|
|
else
|
|
NetManager.TakeMissionRewardRequest(TaskTypeDef.VipTask, taskConfigInfo.Id, function(respond)
|
|
UIManager.OpenPanel(UIName.RewardItemPopup, respond.drop, 1)
|
|
TaskManager.SetTypeTaskState(TaskTypeDef.VipTask, taskConfigInfo.Id, VipTaskStatusDef.Received)
|
|
Game.GlobalEvent:DispatchEvent(GameEvent.Vip.OnVipTaskStatusChanged, taskConfigInfo.Id)
|
|
self:SetPanelStatus()
|
|
end)
|
|
end
|
|
end)
|
|
end
|
|
|
|
|
|
function VipPanelV2:SetTaskAnimation(length)
|
|
if self.taskThread then
|
|
coroutine.stop(self.taskThread)
|
|
self.taskThread = nil
|
|
end
|
|
self.taskThread = coroutine.start(function()
|
|
for i = 1, length do
|
|
self.taskItemList[i].gameObject:SetActive(false)
|
|
PlayUIAnim(Util.GetGameObject(self.taskItemList[i], "content"))
|
|
coroutine.wait(0.05)
|
|
self.taskItemList[i].gameObject:SetActive(true)
|
|
-- coroutine.wait(0.05)
|
|
end
|
|
end)
|
|
end
|
|
|
|
|
|
function VipPanelV2:OnTurnLeftBtnClicked()
|
|
-- self:SwitchState(self:GetCurrentStatus(self.context.UserMissionInfo))
|
|
if self.curShowLevel <= 1 then
|
|
return
|
|
end
|
|
self.curShowLevel = self.curShowLevel - 1
|
|
self:RefreshPanelStatus(self.curShowLevel)
|
|
|
|
self.BtnLeft:SetActive(self.curShowLevel > 1)
|
|
self.BtnRight:SetActive(self.curShowLevel ~= VipManager.GetMaxVipLevel())
|
|
end
|
|
|
|
function VipPanelV2:OnTurnRightBtnClicked()
|
|
-- self:SwitchState(VipShowStatusDef.Preview)
|
|
if self.curShowLevel >= VipManager.GetMaxVipLevel() then
|
|
return
|
|
end
|
|
self.curShowLevel = self.curShowLevel + 1
|
|
self:RefreshPanelStatus(self.curShowLevel)
|
|
|
|
self.BtnLeft:SetActive(self.curShowLevel > 1)
|
|
self.BtnRight:SetActive(self.curShowLevel ~= VipManager.GetMaxVipLevel())
|
|
end
|
|
|
|
function VipPanelV2:OnBtnLvUpClicked()
|
|
NetManager.RequestVipLevelUp(function(respond)
|
|
self:OnShow()
|
|
SoundManager.PlaySound(SoundConfig.Sound_VipUpLevel)
|
|
end)
|
|
end
|
|
|
|
--刷新界面
|
|
function VipPanelV2:RefreshPanelStatus(level)
|
|
self:SetProgressShow(level)
|
|
self.currentLvNum.text = level
|
|
self:SetVipPrivileges(level)
|
|
self:SetRewardList(level)
|
|
end
|
|
|
|
--特权任务发生变化
|
|
function VipPanelV2:OnTaskStatusChanged(taskId)
|
|
for i = 1, #self.context.UserMissionInfo do
|
|
local taskInfo = self.context.UserMissionInfo[i]
|
|
if taskInfo.missionId == taskId then
|
|
taskInfo.state = VipTaskStatusDef.Received
|
|
self.taskItemList[i]:SetValue(taskInfo)
|
|
break
|
|
end
|
|
end
|
|
|
|
if self.curShowLevel - 1 == self.context.vipLevel then
|
|
self:SetProgressShow(self.curShowLevel)
|
|
end
|
|
|
|
local isfinish = true
|
|
local taskListInfo = self.context.UserMissionInfo
|
|
for i = 1, #taskListInfo do
|
|
if taskListInfo[i].state ~= VipTaskStatusDef.Received then
|
|
isfinish = false
|
|
end
|
|
end
|
|
if isfinish then
|
|
self:CheckTaskShow()
|
|
end
|
|
end
|
|
|
|
--跳转显示新手提示圈
|
|
function this.ShowGuideGo()
|
|
JumpManager.ShowGuide(UIName.VipPanelV2, this.taskItemList[1].dealBtn)
|
|
end
|
|
|
|
--修正因VIP字体导致等级数篡位
|
|
function this.CheckVipLvPos(tarObj,lv)
|
|
if lv>9 then
|
|
tarObj.transform:DOAnchorPosX(10,0)
|
|
else
|
|
tarObj.transform:DOAnchorPosX(0,0)
|
|
end
|
|
end
|
|
|
|
return VipPanelV2 |