874 lines
		
	
	
		
			40 KiB
		
	
	
	
		
			Lua
		
	
			
		
		
	
	
			874 lines
		
	
	
		
			40 KiB
		
	
	
	
		
			Lua
		
	
--local LuckyTurnTablePanel= quick_class("LuckyTurnTablePanel")
 | 
						||
--local this = LuckyTurnTablePanel
 | 
						||
--function LuckyTurnTablePanel:ctor(mainPanel, gameObject)
 | 
						||
--    self.mainPanel = mainPanel
 | 
						||
--    self.gameObject = gameObject
 | 
						||
--    self:InitComponent(gameObject)
 | 
						||
--    self:BindEvent()
 | 
						||
--end
 | 
						||
require("Base/BasePanel")
 | 
						||
LuckyTurnTablePanel = Inherit(BasePanel)
 | 
						||
local this = LuckyTurnTablePanel
 | 
						||
 | 
						||
---背景盘图片切换资源名
 | 
						||
local BgName={ "x_xytb_quan_01","x_xytb_quan_03","x_xytb_quan_11","x_xytb_quan_33" }
 | 
						||
---奖盒进度圆圈资源名
 | 
						||
local RewardName={"x_xytb_dian","x_xytb_dian_02"}
 | 
						||
 | 
						||
---转盘旋转类型
 | 
						||
local TableTurnType={
 | 
						||
    Normal=1,--默认旋转
 | 
						||
    Expedite=2,--加快旋转
 | 
						||
}
 | 
						||
 | 
						||
local curTurnPos=1 --当前位置
 | 
						||
this.thread=nil --协程
 | 
						||
 | 
						||
this.refreshTimer=nil
 | 
						||
this.upView = nil
 | 
						||
 | 
						||
local maxTimesCount = 0
 | 
						||
---初始化组件(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:InitComponent(gameObject)
 | 
						||
    LuckyTurnTableManager.InitTableData()
 | 
						||
    LuckyTurnTableManager.GetLuckyTurnRequest()
 | 
						||
 | 
						||
    this.luckyTurnPanel=Util.GetGameObject(self.gameObject,"Panel")
 | 
						||
    this.upView = SubUIManager.Open(SubUIConfig.UpView, this.luckyTurnPanel.transform, { showType = UpViewOpenType.ShowLeft })
 | 
						||
    this.mask=Util.GetGameObject(this.luckyTurnPanel,"Mask")
 | 
						||
    this.helpBtn=Util.GetGameObject(this.luckyTurnPanel,"HelpBtn")
 | 
						||
    this.helpPosition=this.helpBtn:GetComponent("RectTransform").localPosition
 | 
						||
    this.backBtn=Util.GetGameObject(this.luckyTurnPanel,"BackBtn")
 | 
						||
    --this.activityCountDownText = Util.GetGameObject(this.luckyTurnPanel, "CountDownTimeText"):GetComponent("Text")--活动倒计时
 | 
						||
 | 
						||
    this.luckyTreasureBtn=Util.GetGameObject(this.luckyTurnPanel, "Top/LuckyTreasureBtn")--幸运探宝按钮
 | 
						||
    this.luckyTreasureSelectBG=Util.GetGameObject(this.luckyTreasureBtn, "SelectBG")
 | 
						||
    this.luckyTreasureText=Util.GetGameObject(this.luckyTreasureBtn,"Text"):GetComponent("Text")
 | 
						||
    this.advancedTreasureBtn=Util.GetGameObject(this.luckyTurnPanel, "Top/AdvancedTreasureBtn")--高级探宝按钮
 | 
						||
    this.advancedTreasureSelectBG=Util.GetGameObject(this.advancedTreasureBtn, "SelectBG")
 | 
						||
    this.advancedTreasureText=Util.GetGameObject(this.advancedTreasureBtn,"Text"):GetComponent("Text")
 | 
						||
 | 
						||
    this.bg1=Util.GetGameObject(this.luckyTurnPanel, "Content/TurnTableImage/BG/BG1"):GetComponent("Image")
 | 
						||
    this.bg2=Util.GetGameObject(this.luckyTurnPanel, "Content/TurnTableImage/BG/BG2"):GetComponent("Image")
 | 
						||
    ---跑马灯位置(物品位置)
 | 
						||
    this.itemList={}
 | 
						||
    for i = 1,8 do
 | 
						||
        this.itemList[i]=Util.GetGameObject(this.luckyTurnPanel, "Content/TurnTableImage/ItemList/Item"..i)
 | 
						||
    end
 | 
						||
 | 
						||
    this.itemEffectIcon={}--跑马灯亮灯
 | 
						||
    this.itemViewList={}--跑马灯itemviewList
 | 
						||
    local tab={{14,0},{3,0},{12001,0},{5,0},{4,0},{21,0},{60068,0},{60071,0}}---防白片临时数据
 | 
						||
    for i = 1, 8 do
 | 
						||
        this.itemEffectIcon[i]=Util.GetGameObject(this.itemList[i], "Image")
 | 
						||
        this.itemViewList[i]=SubUIManager.Open(SubUIConfig.ItemView, this.itemList[i].transform)
 | 
						||
        this.itemViewList[i]:OnOpen(false, {tab[1][1],tab[1][2]},1)
 | 
						||
    end
 | 
						||
 | 
						||
    --记录
 | 
						||
    this.recordTextList={}
 | 
						||
    for i = 1,6 do
 | 
						||
        this.recordTextList[i]=Util.GetGameObject(this.luckyTurnPanel, "Content/TreasureRecord/RecordTextList/Text"..i):GetComponent("Text")
 | 
						||
    end
 | 
						||
 | 
						||
    --拥有道具数量
 | 
						||
    this.propBtn=Util.GetGameObject(this.luckyTurnPanel,"Content/Prop")
 | 
						||
    this.propImage= Util.GetGameObject(this.luckyTurnPanel, "Content/Prop/PropImage"):GetComponent("Image")--道具
 | 
						||
    this.propText=Util.GetGameObject(this.luckyTurnPanel, "Content/Prop/PropText"):GetComponent("Text")
 | 
						||
 | 
						||
    this.bottom=Util.GetGameObject(this.luckyTurnPanel,"Bottom")
 | 
						||
    this.treasureOnceBtn=Util.GetGameObject(this.bottom,"TreasureOnceBtn")
 | 
						||
    this.treasureOnceText=Util.GetGameObject(this.treasureOnceBtn,"Text"):GetComponent("Text")--探宝次数
 | 
						||
    this.treasureOnceIcon=Util.GetGameObject(this.treasureOnceBtn,"Icon"):GetComponent("Image")--消耗道具图标
 | 
						||
    this.treasureOnceNum=Util.GetGameObject(this.treasureOnceBtn,"Num"):GetComponent("Text")--消耗道具数量
 | 
						||
    this.treasureMultipleBtn=Util.GetGameObject(this.bottom,"TreasureMultipleBtn")
 | 
						||
    this.treasureMultipleText=Util.GetGameObject(this.treasureMultipleBtn,"Text"):GetComponent("Text")
 | 
						||
    this.treasureMultipleIcon=Util.GetGameObject(this.treasureMultipleBtn,"Icon"):GetComponent("Image")
 | 
						||
    this.treasureMultipleNum=Util.GetGameObject(this.treasureMultipleBtn,"Num"):GetComponent("Text")
 | 
						||
    this.refreshBtn=Util.GetGameObject(this.bottom,"RefreshBtn")
 | 
						||
    this.freeDetail=Util.GetGameObject(this.refreshBtn,"FreeDetail")
 | 
						||
    this.detail=Util.GetGameObject(this.refreshBtn,"Detail")
 | 
						||
    this.costItemImage=Util.GetGameObject(this.detail,"CostItemImage"):GetComponent("Image")
 | 
						||
    this.costItemNumText=Util.GetGameObject(this.detail,"CostItemNumText"):GetComponent("Text")
 | 
						||
    this.freeRefreshTime=Util.GetGameObject(this.bottom,"FreeRefreshTime/Text"):GetComponent("Text")
 | 
						||
 | 
						||
    this.slider=Util.GetGameObject(this.luckyTurnPanel,"Slider")
 | 
						||
    this.luckyValueNum=Util.GetGameObject(this.slider, "LuckyValue/LuckyValueNum"):GetComponent("Text")--幸运值
 | 
						||
    this.luckySlider = Util.GetGameObject(this.slider, "LuckySlider"):GetComponent("Slider")
 | 
						||
 | 
						||
    this.rewardBoxList={}--奖励盒
 | 
						||
    this.rewardBox=Util.GetGameObject(this.slider,"RewardBox")
 | 
						||
    for i=1,5 do
 | 
						||
        this.rewardBoxList[i]=Util.GetGameObject(this.rewardBox,"Item"..i)
 | 
						||
    end
 | 
						||
    this.rewardPanel=Util.GetGameObject(this.slider,"RewardPanel")--幸运值奖励预览面板
 | 
						||
    this.itemViewParent=Util.GetGameObject(this.rewardPanel,"ItemViewParent")--item父物体
 | 
						||
    this.rewardPanelMaskBtn=Util.GetGameObject(this.rewardPanel,"Mask")--幸运值奖励预览遮罩按钮
 | 
						||
    this.rewardItemView=SubUIManager.Open(SubUIConfig.ItemView,this.itemViewParent.transform)
 | 
						||
 | 
						||
    -- 奖励预览
 | 
						||
    this.btnPreview = Util.GetGameObject(self.gameObject, "Panel/Top/btnPreview")
 | 
						||
    this.maxTimes = Util.GetGameObject(self.gameObject, "Panel/maxTimes"):GetComponent("Text")
 | 
						||
end
 | 
						||
 | 
						||
---绑定事件(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:BindEvent()
 | 
						||
    --帮助按钮
 | 
						||
    Util.AddClick(this.helpBtn,function()
 | 
						||
        --Log("==YSP==点击帮助按钮")
 | 
						||
        UIManager.OpenPanel(UIName.HelpPopup,HELP_TYPE.LuckyTurn,this.helpPosition.x,this.helpPosition.y)
 | 
						||
    end)
 | 
						||
    --返回按钮
 | 
						||
    Util.AddClick(this.backBtn,function()
 | 
						||
        self:ClosePanel()
 | 
						||
    end)
 | 
						||
    --幸运探宝按钮
 | 
						||
    Util.AddClick(this.luckyTreasureBtn, function()
 | 
						||
        --Log("==YSP==点击幸运探宝按钮")
 | 
						||
        if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
            return
 | 
						||
        end
 | 
						||
        this.SwitchTreasureType(TreasureType.Lucky)
 | 
						||
    end)
 | 
						||
    --高级探宝按钮
 | 
						||
    Util.AddClick(this.advancedTreasureBtn, function()
 | 
						||
        --Log("==YSP==点击高级探宝按钮")
 | 
						||
        if LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
            return
 | 
						||
        end
 | 
						||
        this.SwitchTreasureType(TreasureType.Advanced)
 | 
						||
    end)
 | 
						||
    --幸运值奖励预览遮罩按钮
 | 
						||
    Util.AddClick(this.rewardPanelMaskBtn, function()
 | 
						||
        this.rewardPanelMaskBtn.gameObject:SetActive(false)
 | 
						||
        this.rewardPanel.gameObject:SetActive(false)
 | 
						||
    end)
 | 
						||
 | 
						||
    Util.AddClick(this.btnPreview, function()
 | 
						||
        UIManager.OpenPanel(UIName.RewardPreviewPopup, PRE_REWARD_POOL_TYPE.LUCK_FIND)
 | 
						||
    end)
 | 
						||
end
 | 
						||
 | 
						||
---添加事件监听(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:AddListener()
 | 
						||
    Game.GlobalEvent:AddEvent(GameEvent.Activity.OnLuckyTableWorldMessage, this.ShowRecordMessage)
 | 
						||
    Game.GlobalEvent:AddEvent(GameEvent.Activity.OnLuckyTableZeroRefresh, this.OnShowPanelData)
 | 
						||
end
 | 
						||
 | 
						||
---移除事件监听(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:RemoveListener()
 | 
						||
    Game.GlobalEvent:RemoveEvent(GameEvent.Activity.OnLuckyTableWorldMessage, this.ShowRecordMessage)
 | 
						||
    Game.GlobalEvent:RemoveEvent(GameEvent.Activity.OnLuckyTableZeroRefresh, this.OnShowPanelData)
 | 
						||
end
 | 
						||
 | 
						||
---界面打开时调用(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:OnOpen(_TreasureType)
 | 
						||
    LuckyTurnTableManager.curTreasureType = _TreasureType and _TreasureType or TreasureType.Lucky
 | 
						||
    maxTimesCount =tonumber(ConfigManager.GetConfigData(ConfigName.SpecialConfig,53).Value) 
 | 
						||
end
 | 
						||
 | 
						||
---界面打开或者重新打开后,界面刷新时调用(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:OnShow()
 | 
						||
    if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then--防止当前为高级探宝时 按下探宝后跳转到幸运探宝
 | 
						||
        this.LuckyTurnOnShow(TreasureType.Lucky)
 | 
						||
    elseif  LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
        this.LuckyTurnOnShow(TreasureType.Advanced)
 | 
						||
    end
 | 
						||
end
 | 
						||
function this.OnShowPanelData()
 | 
						||
    if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then--防止当前为高级探宝时 按下探宝后跳转到幸运探宝
 | 
						||
        this.LuckyTurnOnShow(TreasureType.Lucky)
 | 
						||
    elseif  LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
        this.LuckyTurnOnShow(TreasureType.Advanced)
 | 
						||
    end
 | 
						||
end
 | 
						||
local sortingOrder = 0
 | 
						||
---重设层级
 | 
						||
function LuckyTurnTablePanel:OnSortingOrderChange()
 | 
						||
    sortingOrder =self.sortingOrder
 | 
						||
    for i, v in pairs(this.itemViewList) do
 | 
						||
        v:SetEffectLayer(sortingOrder)
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---界面关闭时调用(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:OnClose()
 | 
						||
    --Log("==YSP== 关闭幸运转盘")
 | 
						||
    RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
    this.rewardPanel.gameObject:SetActive(false)
 | 
						||
    if this.thread then
 | 
						||
        coroutine.stop(this.thread)
 | 
						||
        this.thread=nil
 | 
						||
    end
 | 
						||
    if this.turnEffect then
 | 
						||
        this.turnEffect:Stop()
 | 
						||
        this.turnEffect=nil
 | 
						||
    end
 | 
						||
    if this.refreshTimer then
 | 
						||
        this.refreshTimer:Stop()
 | 
						||
        this.refreshTimer=nil
 | 
						||
    end
 | 
						||
    if this.timer then
 | 
						||
        this.timer:Stop()
 | 
						||
        this.timer = nil
 | 
						||
    end
 | 
						||
    if LuckyTurnTableManager._CountDownTimer then
 | 
						||
        LuckyTurnTableManager._CountDownTimer:Stop()
 | 
						||
        LuckyTurnTableManager._CountDownTimer=nil
 | 
						||
    end
 | 
						||
 | 
						||
    LuckyTurnTableManager.ClearSaveData()
 | 
						||
end
 | 
						||
 | 
						||
---界面销毁时调用(用于子类重写)
 | 
						||
function LuckyTurnTablePanel:OnDestroy()
 | 
						||
    this.itemViewList=nil
 | 
						||
    this.rewardItemView=nil
 | 
						||
    SubUIManager.Close(this.upView)
 | 
						||
end
 | 
						||
 | 
						||
---打开面板
 | 
						||
function this.LuckyTurnOnShow(treasureType)
 | 
						||
    if not this.turnEffect then
 | 
						||
        this.turnEffect=Timer.New(nil,1,-1,true)
 | 
						||
    end
 | 
						||
    if not this.refreshTimer then
 | 
						||
        this.refreshTimer=Timer.New(nil,1,-1,true)
 | 
						||
    end
 | 
						||
    --初始化幸运探宝
 | 
						||
    this.SwitchTreasureType(treasureType)
 | 
						||
    this.SetTableTurnEffect(TableTurnType.Normal)
 | 
						||
end
 | 
						||
 | 
						||
 | 
						||
---切换探宝类型
 | 
						||
function this.SwitchTreasureType(treasureType)
 | 
						||
    this.ClearDefault()
 | 
						||
    if treasureType==TreasureType.Lucky then
 | 
						||
        LuckyTurnTableManager.curTreasureType=treasureType
 | 
						||
        this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.luckyTimes,maxTimesCount)
 | 
						||
 | 
						||
        this.upView:OnOpen({ showType = UpViewOpenType.ShowLeft, panelType = PanelType.LuckyTreasure })
 | 
						||
        this.bg1.sprite=Util.LoadSprite(BgName[1])
 | 
						||
        this.bg2.sprite=Util.LoadSprite(BgName[2])
 | 
						||
 | 
						||
        --显示免费刷新状态
 | 
						||
        this.RefreshBtnCountDown()
 | 
						||
 | 
						||
        --设置顶部按钮
 | 
						||
        this.luckyTreasureSelectBG:SetActive(true)
 | 
						||
        this.luckyTreasureText.text=Language[11157]
 | 
						||
        --请求跑马灯物品数据
 | 
						||
        LuckyTurnTableManager.GetLuckyTurnRequest(function(msg)
 | 
						||
            this.SetItemViewShow(msg.posInfos,function()
 | 
						||
                this.SetItemViewGray(LuckyTurnTableManager.luckyData)
 | 
						||
            end)
 | 
						||
        end)
 | 
						||
        --立即刷新一次转盘记录
 | 
						||
        if (LuckyTurnTableManager.isCanGetWorldMessage) then
 | 
						||
            LuckyTurnTableManager.TimeUpdate()
 | 
						||
        end
 | 
						||
        --启动定时刷新转盘记录
 | 
						||
        LuckyTurnTableManager.StartLuckyTurnRecordDataUpdate()
 | 
						||
        --设置需要材料显示
 | 
						||
        this.SetPropShow(60,treasureType)
 | 
						||
        --探宝按钮显示
 | 
						||
        local oneData,moreData,icon=LuckyTurnTableManager.GetTreasureBtnInfo(treasureType)
 | 
						||
        this.SetTreasureBtnShow(oneData,moreData,icon)
 | 
						||
        --探宝泉预览
 | 
						||
        Util.AddOnceClick(this.propBtn,function()
 | 
						||
            UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,60)
 | 
						||
        end)
 | 
						||
        --探宝1次按钮
 | 
						||
        Util.AddOnceClick(this.treasureOnceBtn, function()
 | 
						||
            if LuckyTurnTableManager.GetTreasureTicketNum(treasureType)-oneData[2]>=0 
 | 
						||
            and LuckyTurnTableManager.luckyTimes + 1 <= maxTimesCount then
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRankRequest(TreasureType.Lucky,false,function()
 | 
						||
                    --Log("==YSP== 幸运探宝返回的是什么"..tostring(LuckyTurnTableManager.luckyTempData.posInfos))
 | 
						||
                    this.SetTableTurnEffect(TableTurnType.Expedite,TreasureType.Lucky,LuckyTurnTableManager.luckyTempData.posInfos[1].pos)
 | 
						||
                    this.SetPropShow(60,TreasureType.Lucky)--更新消耗道具显示
 | 
						||
                    this.RrFreshInfo()
 | 
						||
                    LuckyTurnTableManager.SetTimes(LuckyTurnTableManager.luckyTimes + 1)
 | 
						||
                    this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.luckyTimes,maxTimesCount)
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                --PopupTipPanel.ShowTip("幸运探宝券不足!")
 | 
						||
                if LuckyTurnTableManager.luckyTimes + 1 > maxTimesCount then
 | 
						||
                    PopupTipPanel.ShowTip(Language[11158])
 | 
						||
                    return
 | 
						||
                else
 | 
						||
                    UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,60,nil)
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
        --探宝10次按钮
 | 
						||
        Util.AddOnceClick(this.treasureMultipleBtn, function()
 | 
						||
            if LuckyTurnTableManager.GetTreasureTicketNum(treasureType)-moreData[2]>=0 
 | 
						||
            and LuckyTurnTableManager.luckyTimes + 15 <= maxTimesCount then              
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRankRequest(TreasureType.Lucky,true,function()
 | 
						||
                    --Log("==YSP== 幸运探宝返回的是什么"..tostring(LuckyTurnTableManager.luckyTempData))
 | 
						||
                    this.SetTableTurnEffect(TableTurnType.Expedite,TreasureType.Lucky,LuckyTurnTableManager.luckyTempData.posInfos[1].pos)
 | 
						||
                    this.SetPropShow(60,TreasureType.Lucky)--更新消耗道具显示
 | 
						||
                    this.RrFreshInfo()
 | 
						||
                    LuckyTurnTableManager.SetTimes(LuckyTurnTableManager.luckyTimes + 15)
 | 
						||
                    this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.luckyTimes,maxTimesCount)
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                --PopupTipPanel.ShowTip("幸运探宝券不足!")
 | 
						||
                if LuckyTurnTableManager.luckyTimes + 15 > maxTimesCount then
 | 
						||
                    PopupTipPanel.ShowTip(Language[11158])
 | 
						||
                    return
 | 
						||
                else
 | 
						||
                    UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,60,nil)
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
        --刷新按钮
 | 
						||
        Util.AddOnceClick(this.refreshBtn, function()
 | 
						||
            LogBlue(tostring(BagManager.GetItemCountById(62)))
 | 
						||
            if BagManager.GetItemCountById(62)>0 then--如果是免费刷新              
 | 
						||
                this.PlayItemListAnim()
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRefreshRequest(TreasureType.Lucky,true,function()
 | 
						||
                    this.SetItemViewShow(LuckyTurnTableManager.luckyData,function()
 | 
						||
                        this.SetItemViewGray(LuckyTurnTableManager.luckyData)
 | 
						||
                    end)
 | 
						||
                    this.RefreshBtnCountDown()
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                LogBlue(tostring(LuckyTurnTableManager.GetRefreshItemNum()-LuckyTurnTableManager.dialRewardSettingConfig[1].Cost[2][4]))
 | 
						||
                if LuckyTurnTableManager.GetRefreshItemNum()-LuckyTurnTableManager.dialRewardSettingConfig[1].Cost[2][4]>=0 then--如果材料够
 | 
						||
                    this.PlayItemListAnim()
 | 
						||
                    LuckyTurnTableManager.GetLuckyTurnRefreshRequest(TreasureType.Lucky,false,function()
 | 
						||
                        this.SetItemViewShow(LuckyTurnTableManager.luckyData,function()
 | 
						||
                            this.SetItemViewGray(LuckyTurnTableManager.luckyData)
 | 
						||
                        end)
 | 
						||
                        this.RefreshBtnCountDown()
 | 
						||
                    end)
 | 
						||
                else
 | 
						||
                    PopupTipPanel.ShowTip(Language[10497])
 | 
						||
                    --UIManager.OpenPanel(UIName.ShopExchangePopup, SHOP_TYPE.FUNCTION_SHOP, 10013, "兑换妖晶")
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
 | 
						||
        RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
        this.RrFreshInfo()
 | 
						||
    elseif treasureType==TreasureType.Advanced then
 | 
						||
        LuckyTurnTableManager.curTreasureType=treasureType
 | 
						||
 | 
						||
        this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.advanceTimes,maxTimesCount)
 | 
						||
 | 
						||
        this.upView:OnOpen({ showType = UpViewOpenType.ShowLeft, panelType = PanelType.AdvancedTreasure })
 | 
						||
        this.bg1.sprite=Util.LoadSprite(BgName[3])
 | 
						||
        this.bg2.sprite=Util.LoadSprite(BgName[4])
 | 
						||
 | 
						||
        this.RefreshBtnCountDown()
 | 
						||
 | 
						||
        --设置顶部按钮
 | 
						||
        this.advancedTreasureSelectBG:SetActive(true)
 | 
						||
        this.advancedTreasureText.text=Language[11159]
 | 
						||
 | 
						||
        --请求跑马灯物品数据
 | 
						||
        LuckyTurnTableManager.GetLuckyTurnRequest(function(msg)
 | 
						||
            this.SetItemViewShow(msg.posInfosAdvance,function()
 | 
						||
                this.SetItemViewGray(LuckyTurnTableManager.advancedData)
 | 
						||
            end)
 | 
						||
        end)
 | 
						||
        --立即刷新一次转盘记录
 | 
						||
        if (LuckyTurnTableManager.isCanGetWorldMessage) then
 | 
						||
            LuckyTurnTableManager.TimeUpdate()
 | 
						||
        end
 | 
						||
        --启动定时刷新转盘记录
 | 
						||
        LuckyTurnTableManager.StartLuckyTurnRecordDataUpdate(treasureType)
 | 
						||
 | 
						||
        --设置需要材料显示
 | 
						||
        this.SetPropShow(61,treasureType)
 | 
						||
 | 
						||
        --探宝按钮显示
 | 
						||
        local oneData,moreData,icon=LuckyTurnTableManager.GetTreasureBtnInfo(treasureType)
 | 
						||
        this.SetTreasureBtnShow(oneData,moreData,icon)
 | 
						||
        --探宝泉预览
 | 
						||
        Util.AddOnceClick(this.propBtn,function()
 | 
						||
            UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,61)
 | 
						||
        end)
 | 
						||
        --探宝1次按钮
 | 
						||
        Util.AddOnceClick(this.treasureOnceBtn, function()
 | 
						||
            if LuckyTurnTableManager.GetTreasureTicketNum(treasureType)-oneData[2]>=0 
 | 
						||
            and LuckyTurnTableManager.advanceTimes + 1 <= maxTimesCount then
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRankRequest(TreasureType.Advanced,false,function()
 | 
						||
                    LuckyTurnTableManager.SetTimes(nil,LuckyTurnTableManager.advanceTimes + 1)
 | 
						||
                    this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.advanceTimes,maxTimesCount)
 | 
						||
                    --Log("==YSP== 高级探宝返回的是什么"..tostring(LuckyTurnTableManager.advancedTempData))
 | 
						||
                    this.SetTableTurnEffect(TableTurnType.Expedite,TreasureType.Advanced,LuckyTurnTableManager.advancedTempData.posInfos[1].pos)
 | 
						||
                    this.SetPropShow(61,TreasureType.Advanced)
 | 
						||
                    this.RrFreshInfo()
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                if not RECHARGEABLE then--(是否开启充值)
 | 
						||
                    PopupTipPanel.ShowTip(Language[11160])
 | 
						||
                else
 | 
						||
                    if LuckyTurnTableManager.advanceTimes + 1 > maxTimesCount then
 | 
						||
                        PopupTipPanel.ShowTip(Language[11158])
 | 
						||
                        return
 | 
						||
                    else
 | 
						||
                        UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,61,nil)
 | 
						||
                    end
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
        --探宝10次按钮
 | 
						||
        Util.AddOnceClick(this.treasureMultipleBtn, function()
 | 
						||
            if LuckyTurnTableManager.GetTreasureTicketNum(treasureType)-moreData[2]>=0 
 | 
						||
            and LuckyTurnTableManager.advanceTimes + 10 <= maxTimesCount then
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRankRequest(TreasureType.Advanced,true,function()
 | 
						||
                    LuckyTurnTableManager.SetTimes(nil,LuckyTurnTableManager.advanceTimes + 10)
 | 
						||
                    this.maxTimes.text =string.format(Language[11156],LuckyTurnTableManager.advanceTimes,maxTimesCount)
 | 
						||
                    --Log("==YSP== 高级探宝返回的是什么"..tostring(LuckyTurnTableManager.advancedTempData))
 | 
						||
                    this.SetTableTurnEffect(TableTurnType.Expedite,TreasureType.Advanced,LuckyTurnTableManager.advancedTempData.posInfos[1].pos)
 | 
						||
                    this.SetPropShow(61,TreasureType.Advanced)
 | 
						||
                    this.RrFreshInfo()
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                if not RECHARGEABLE then--(是否开启充值)
 | 
						||
                    PopupTipPanel.ShowTip(Language[11160])
 | 
						||
                else
 | 
						||
                    if LuckyTurnTableManager.advanceTimes + 10 > maxTimesCount then
 | 
						||
                        PopupTipPanel.ShowTip(Language[11158])
 | 
						||
                        return
 | 
						||
                    else
 | 
						||
                        UIManager.OpenPanel(UIName.RewardItemSingleShowPopup,61,nil)
 | 
						||
                    end
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
        --刷新按钮
 | 
						||
        Util.AddOnceClick(this.refreshBtn, function()
 | 
						||
            LogBlue("高级刷新券 "..BagManager.GetItemCountById(63))
 | 
						||
            if BagManager.GetItemCountById(63)>0 then
 | 
						||
                this.PlayItemListAnim()
 | 
						||
                LuckyTurnTableManager.GetLuckyTurnRefreshRequest(TreasureType.Advanced,true,function()
 | 
						||
                    this.SetItemViewShow(LuckyTurnTableManager.advancedData,function()
 | 
						||
                        this.SetItemViewGray(LuckyTurnTableManager.advancedData)
 | 
						||
                    end)
 | 
						||
                    this.RefreshBtnCountDown()
 | 
						||
                end)
 | 
						||
            else
 | 
						||
                LogBlue("高级刷新券 "..LuckyTurnTableManager.GetRefreshItemNum())
 | 
						||
                LogBlue("高级刷新券 "..LuckyTurnTableManager.dialRewardSettingConfig[2].Cost[2][4])
 | 
						||
                LogBlue("高级刷新券 ".. LuckyTurnTableManager.GetRefreshItemNum()-LuckyTurnTableManager.dialRewardSettingConfig[2].Cost[2][4])
 | 
						||
                if LuckyTurnTableManager.GetRefreshItemNum()-LuckyTurnTableManager.dialRewardSettingConfig[2].Cost[2][4]>=0 then
 | 
						||
                    this.PlayItemListAnim()
 | 
						||
                    LuckyTurnTableManager.GetLuckyTurnRefreshRequest(TreasureType.Advanced,false,function()
 | 
						||
                        this.SetItemViewShow(LuckyTurnTableManager.advancedData,function()
 | 
						||
                            this.SetItemViewGray(LuckyTurnTableManager.advancedData)
 | 
						||
                        end)
 | 
						||
                        this.RefreshBtnCountDown()
 | 
						||
                    end)
 | 
						||
                else
 | 
						||
                    PopupTipPanel.ShowTip(Language[10497])
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end)
 | 
						||
 | 
						||
        RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
        this.RrFreshInfo()
 | 
						||
    end
 | 
						||
    this.mask.transform:SetAsLastSibling();
 | 
						||
    this.ShowRecordMessage(LuckyTurnTableManager.curTreasureType)
 | 
						||
end
 | 
						||
 | 
						||
---重置默认
 | 
						||
function this.ClearDefault()
 | 
						||
    this.luckyTreasureSelectBG:SetActive(false)
 | 
						||
    this.luckyTreasureText.text=Language[11161]
 | 
						||
    this.advancedTreasureSelectBG:SetActive(false)
 | 
						||
    this.advancedTreasureText.text=Language[11162]
 | 
						||
    --清除红点
 | 
						||
    Util.GetGameObject(this.luckyTreasureBtn,"redPoint"):SetActive(false)
 | 
						||
    Util.GetGameObject(this.advancedTreasureBtn,"redPoint"):SetActive(false)
 | 
						||
    for i = 1, 5 do
 | 
						||
        Util.GetGameObject(this.rewardBoxList[i],"redPoint"):SetActive(false)
 | 
						||
    end
 | 
						||
 | 
						||
    for i = 1, 6 do
 | 
						||
        this.recordTextList[i].text = ""
 | 
						||
    end
 | 
						||
 | 
						||
end
 | 
						||
 | 
						||
---设置转盘滚动 1旋转类型 2探宝类型 3服务器给的探宝后位置
 | 
						||
function this.SetTableTurnEffect(turnType,treasureType,pos)
 | 
						||
    if turnType==TableTurnType.Normal then --默认旋转
 | 
						||
        this.TurnEffectReset(0.5)
 | 
						||
        this.turnEffect:Start()
 | 
						||
    elseif turnType==TableTurnType.Expedite then --抽奖旋转 至指定位置
 | 
						||
        this.DelayMaskWithBool(true)
 | 
						||
        LuckyTurnTableManager.isCanGetWorldMessage=false
 | 
						||
        this.TurnEffectReset(0.05)
 | 
						||
        this.turnEffect:Start()
 | 
						||
        this.thread=coroutine.start(function()
 | 
						||
            coroutine.wait(1)--2
 | 
						||
            this.TurnEffectReset(0.2)
 | 
						||
            coroutine.wait(0.4)--0.8
 | 
						||
            this.TurnEffectReset(0.4,true,pos,function()--当效果播放完毕后 从管理器取得数据
 | 
						||
 | 
						||
                local timer=Timer.New(function()
 | 
						||
                    this.DelayMaskWithBool(false)
 | 
						||
                    if treasureType==TreasureType.Lucky then
 | 
						||
                        UIManager.OpenPanel(UIName.RewardItemPopup,LuckyTurnTableManager.luckyTempData.drop,1,function()
 | 
						||
                            this.SetTableTurnEffect(TableTurnType.Normal)--恢复转盘旋转
 | 
						||
                            LuckyTurnTableManager.isCanGetWorldMessage=true
 | 
						||
                        end)--打开奖励弹窗
 | 
						||
                        this.SetItemViewGray(LuckyTurnTableManager.luckyData)--刷新物品是否置灰
 | 
						||
                    elseif treasureType==TreasureType.Advanced then
 | 
						||
                        UIManager.OpenPanel(UIName.RewardItemPopup,LuckyTurnTableManager.advancedTempData.drop,1,function()
 | 
						||
                            this.SetTableTurnEffect(TableTurnType.Normal)--恢复转盘旋转
 | 
						||
                            LuckyTurnTableManager.isCanGetWorldMessage=true
 | 
						||
                        end)
 | 
						||
                        this.SetItemViewGray(LuckyTurnTableManager.advancedData)
 | 
						||
                    end
 | 
						||
                end,0.5,1,true)
 | 
						||
                timer:Start()
 | 
						||
            end)
 | 
						||
        end)
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---转盘滚动特效重设 1移动速度,值越小越快 2是否停止 3停止位置
 | 
						||
function this.TurnEffectReset(turnSpeed,isStop,pos,func)
 | 
						||
    this.turnEffect:Reset(function()
 | 
						||
        if curTurnPos==1 then
 | 
						||
            this.itemEffectIcon[8]:SetActive(false)
 | 
						||
        else
 | 
						||
            this.itemEffectIcon[curTurnPos-1]:SetActive(false)
 | 
						||
        end
 | 
						||
        if curTurnPos>=9 then
 | 
						||
            curTurnPos=1
 | 
						||
        end
 | 
						||
        if isStop then
 | 
						||
            if pos==curTurnPos then--如果停到对应位置
 | 
						||
                this.turnEffect:Stop()--暂停跑马灯
 | 
						||
                if func then--回调
 | 
						||
                    func()
 | 
						||
                end
 | 
						||
            end
 | 
						||
        end
 | 
						||
        this.itemEffectIcon[curTurnPos]:SetActive(true)
 | 
						||
        curTurnPos=curTurnPos+1
 | 
						||
    end,turnSpeed,-1,true)
 | 
						||
end
 | 
						||
 | 
						||
 | 
						||
---设置跑马灯物品显示 func确保先生成itemview 再置灰
 | 
						||
function this.SetItemViewShow(data,func)
 | 
						||
    for i = 1, #this.itemViewList do
 | 
						||
        LogPink(data[i].luckId)
 | 
						||
        local tab={LuckyTurnTableManager.dialRewardConfig[data[i].luckId].Reward[1],LuckyTurnTableManager.dialRewardConfig[data[i].luckId].Reward[2]}
 | 
						||
        this.itemViewList[i]:OnOpen(false, {tab[1],tab[2]},1, false, false, false, sortingOrder)
 | 
						||
    end
 | 
						||
    if func then
 | 
						||
        func()
 | 
						||
    end
 | 
						||
end
 | 
						||
---设置跑马灯物品置灰
 | 
						||
function this.SetItemViewGray(data)
 | 
						||
    for i = 1, #data do
 | 
						||
        if LuckyTurnTableManager.dialRewardConfig[data[i].luckId].LimitNum~=0 then
 | 
						||
            Util.SetGray(this.itemViewList[i].gameObject,data[i].luckTimes >=LuckyTurnTableManager.dialRewardConfig[data[i].luckId].LimitNum)
 | 
						||
        end
 | 
						||
        if LuckyTurnTableManager.dialRewardConfig[data[i].luckId].LimitNum==0 then
 | 
						||
            Util.SetGray(this.itemViewList[i].gameObject,false)
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---跑马灯记录
 | 
						||
function this.ShowRecordMessage(type)
 | 
						||
    if LuckyTurnTableManager.isCanGetWorldMessage then
 | 
						||
        local messageList = {}
 | 
						||
        messageList = LuckyTurnTableManager.GetShowDataByType(type)
 | 
						||
        for i = 1, 6 do
 | 
						||
            if messageList[i] then
 | 
						||
                local messageSingleList = string.split(messageList[i],"|")
 | 
						||
                this.recordTextList[i].text = string.format(GetLanguageStrById(messageSingleList[1]),string.sub(messageSingleList[2], 2),GetLanguageStrById(string.sub(messageSingleList[3], 2)))
 | 
						||
            end
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
 | 
						||
---设置道具拥有显示  1道具id 2探宝类型
 | 
						||
function this.SetPropShow(itemId,treasureType)
 | 
						||
    this.propImage.sprite=SetIcon(itemId)
 | 
						||
    this.propText.text=LuckyTurnTableManager.GetTreasureTicketNum(treasureType)
 | 
						||
end
 | 
						||
 | 
						||
---探宝按钮显示
 | 
						||
function this.SetTreasureBtnShow(oneData,moreData,icon)
 | 
						||
    this.treasureOnceText.text=Language[11163]..oneData[1]..Language[10048]
 | 
						||
    this.treasureOnceNum.text=oneData[2]
 | 
						||
    this.treasureOnceIcon.sprite=icon
 | 
						||
    this.treasureMultipleText.text=Language[11163]..moreData[1]..Language[10048]
 | 
						||
    this.treasureMultipleNum.text=moreData[2]
 | 
						||
    this.treasureMultipleIcon.sprite=icon
 | 
						||
end
 | 
						||
 | 
						||
--------------------------------免费刷新--------------------------------
 | 
						||
---打开、切换活动界面,刷新倒计时
 | 
						||
function this.RefreshBtnCountDown()
 | 
						||
    if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
        if this.refreshTimer then
 | 
						||
            this.refreshTimer:Stop()
 | 
						||
        end
 | 
						||
        if BagManager.GetItemCountById(62)>0 then
 | 
						||
            --显示免费刷新
 | 
						||
            this.SetRefreshBtnShowState(true)
 | 
						||
            this.freeRefreshTime.text="  "
 | 
						||
        else
 | 
						||
            --显示道具刷新
 | 
						||
            this.SetRefreshBtnShowState(false)
 | 
						||
            --因转换时间计算精度问题 在有免费刷新 未刷新状态下操作
 | 
						||
            local time=BagManager.GetNextRefreshTime(62)-GetTimeStamp()
 | 
						||
            local intervalTime = LuckyTurnTableManager.GetItemRecoverTime(62)
 | 
						||
            if time>intervalTime then
 | 
						||
                time=intervalTime
 | 
						||
            end
 | 
						||
            this.freeRefreshTime.text=TimeToHMS(time)--立即刷新一次
 | 
						||
            this.refreshTimer:Reset(function()
 | 
						||
                if time<0 then
 | 
						||
                    time=0
 | 
						||
                    this.refreshTimer:Stop()
 | 
						||
                    this.SetRefreshBtnShowState(true)
 | 
						||
                    NetManager.GetRefreshCountDownRequest({62})
 | 
						||
                end
 | 
						||
                time=time-1
 | 
						||
                this.freeRefreshTime.text=TimeToHMS(time)
 | 
						||
            end,1,-1,true)
 | 
						||
            this.refreshTimer:Start()
 | 
						||
        end
 | 
						||
    elseif LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
        this.refreshTimer:Stop()
 | 
						||
        if BagManager.GetItemCountById(63)>0 then
 | 
						||
            --显示免费刷新
 | 
						||
            this.SetRefreshBtnShowState(true)
 | 
						||
            this.freeRefreshTime.text=" 0:00:00"
 | 
						||
        else
 | 
						||
            --显示道具刷新
 | 
						||
            this.SetRefreshBtnShowState(false)
 | 
						||
            local time=BagManager.GetNextRefreshTime(63)-GetTimeStamp()
 | 
						||
            local intervalTime = LuckyTurnTableManager.GetItemRecoverTime(63)
 | 
						||
            if time >intervalTime then
 | 
						||
                time = intervalTime
 | 
						||
            end
 | 
						||
            this.freeRefreshTime.text=TimeToHMS(time)--立即刷新一次
 | 
						||
            this.refreshTimer:Reset(function()
 | 
						||
                if time<0 then
 | 
						||
                    this.refreshTimer:Stop()
 | 
						||
                    time=0
 | 
						||
                    this.SetRefreshBtnShowState(true)
 | 
						||
                    NetManager.GetRefreshCountDownRequest({63})
 | 
						||
                end
 | 
						||
                time=time-1
 | 
						||
                this.freeRefreshTime.text=TimeToHMS(time)
 | 
						||
            end,1,-1,true)
 | 
						||
            this.refreshTimer:Start()
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---控制刷新按钮的显示状态  1是否免费
 | 
						||
function this.SetRefreshBtnShowState(isFree)
 | 
						||
    if isFree then
 | 
						||
        --Log("免费刷新")
 | 
						||
        this.freeDetail:SetActive(true)
 | 
						||
        this.detail:SetActive(false)
 | 
						||
    else
 | 
						||
        --Log("不免费刷新")
 | 
						||
        this.freeDetail:SetActive(false)
 | 
						||
        this.detail:SetActive(true)
 | 
						||
        if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
            this.costItemImage.sprite=SetIcon(LuckyTurnTableManager.dialRewardSettingConfig[1].Cost[1][1])
 | 
						||
            this.costItemNumText.text=LuckyTurnTableManager.dialRewardSettingConfig[1].Cost[2][4]..Language[11164]
 | 
						||
        end
 | 
						||
        if LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
            this.costItemImage.sprite=SetIcon(LuckyTurnTableManager.dialRewardSettingConfig[2].Cost[1][1])
 | 
						||
            this.costItemNumText.text=LuckyTurnTableManager.dialRewardSettingConfig[2].Cost[2][4]..Language[11164]
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---播放刷新动画
 | 
						||
function this.PlayItemListAnim()
 | 
						||
    this.DelayMaskWithTime(1.5)
 | 
						||
    for i = 1, 8 do
 | 
						||
        this.itemList[i]:GetComponent("PlayFlyAnim"):PlayAnim(true)
 | 
						||
    end
 | 
						||
end
 | 
						||
-----------------------------------------------------------------------
 | 
						||
 | 
						||
---本地检查红点 幸运高级按钮
 | 
						||
function this.CheckRedPoint()
 | 
						||
    for i = 1, #this.rewardBoxList do
 | 
						||
        if LuckyTurnTableManager.value_1>=LuckyTurnTableManager.boxReward_One[i].Values[1][1] then
 | 
						||
            Util.GetGameObject(this.luckyTreasureBtn,"redPoint"):SetActive(LuckyTurnTableManager.GetRewardState(30,LuckyTurnTableManager.boxReward_One[i].Id)==0)
 | 
						||
        end
 | 
						||
        if LuckyTurnTableManager.value_2>=LuckyTurnTableManager.boxReward_Two[i].Values[1][1] then
 | 
						||
            Util.GetGameObject(this.advancedTreasureBtn,"redPoint"):SetActive(LuckyTurnTableManager.GetRewardState(31,LuckyTurnTableManager.boxReward_Two[i].Id)==0)
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---设置奖盒
 | 
						||
function this.SetRewardBox()
 | 
						||
    if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
        for i = 1, 5 do
 | 
						||
            this.rewardBoxList[i]:GetComponent("Image").sprite=SetIcon(LuckyTurnTableManager.boxReward_One[i].Reward[1][1])
 | 
						||
            Util.GetGameObject(this.rewardBoxList[i],"Value"):GetComponent("Text").text=LuckyTurnTableManager.boxReward_One[i].Values[1][1]
 | 
						||
 | 
						||
            --显示奖盒红点
 | 
						||
            if LuckyTurnTableManager.value_1>=LuckyTurnTableManager.boxReward_One[i].Values[1][1] then
 | 
						||
                if LuckyTurnTableManager.GetRewardState(30,LuckyTurnTableManager.boxReward_One[i].Id)==0 then
 | 
						||
                    Util.GetGameObject(this.rewardBoxList[i],"redPoint"):SetActive(true)
 | 
						||
                end
 | 
						||
            end
 | 
						||
 | 
						||
            Util.AddOnceClick(this.rewardBoxList[i], function()
 | 
						||
                --Log("==YSP==点击幸运探宝奖励盒"..i)
 | 
						||
                RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
                --如果幸运值达到奖励要求值
 | 
						||
                if LuckyTurnTableManager.value_1>=LuckyTurnTableManager.boxReward_One[i].Values[1][1] then
 | 
						||
                    --奖励未领取 先请求领取
 | 
						||
                    if LuckyTurnTableManager.GetRewardState(30,LuckyTurnTableManager.boxReward_One[i].Id)==0 then
 | 
						||
                        NetManager.GetActivityRewardRequest(LuckyTurnTableManager.boxReward_One[i].Id,30,function(drop)
 | 
						||
                            UIManager.OpenPanel(UIName.RewardItemPopup,drop)
 | 
						||
                            Util.GetGameObject(this.rewardBoxList[i],"redPoint"):SetActive(false)--隐藏红点
 | 
						||
                            this.RrFreshInfo()
 | 
						||
                        end)
 | 
						||
                    else--奖励已领取 可预览
 | 
						||
                        this.OpenRewardPreview(LuckyTurnTableManager.boxReward_One,i)
 | 
						||
                    end
 | 
						||
                else
 | 
						||
                    --奖励不可领,可预览
 | 
						||
                    this.OpenRewardPreview(LuckyTurnTableManager.boxReward_One,i)
 | 
						||
                end
 | 
						||
            end)
 | 
						||
        end
 | 
						||
    elseif LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
        for i = 1, 5 do
 | 
						||
            this.rewardBoxList[i]:GetComponent("Image").sprite=SetIcon(LuckyTurnTableManager.boxReward_Two[i].Reward[1][1])
 | 
						||
            Util.GetGameObject(this.rewardBoxList[i],"Value"):GetComponent("Text").text=LuckyTurnTableManager.boxReward_Two[i].Values[1][1]
 | 
						||
            --显示红点
 | 
						||
            if LuckyTurnTableManager.value_2>=LuckyTurnTableManager.boxReward_Two[i].Values[1][1] then
 | 
						||
                if LuckyTurnTableManager.GetRewardState(31,LuckyTurnTableManager.boxReward_Two[i].Id)==0 then
 | 
						||
                    Util.GetGameObject(this.rewardBoxList[i],"redPoint"):SetActive(true)
 | 
						||
                end
 | 
						||
            end
 | 
						||
            Util.AddOnceClick(this.rewardBoxList[i], function()
 | 
						||
                --Log("==YSP==点击高级探宝奖励盒"..i)
 | 
						||
                RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
                if LuckyTurnTableManager.value_2>=LuckyTurnTableManager.boxReward_Two[i].Values[1][1] then
 | 
						||
                    if LuckyTurnTableManager.GetRewardState(31,LuckyTurnTableManager.boxReward_Two[i].Id)==0 then
 | 
						||
                        NetManager.GetActivityRewardRequest(LuckyTurnTableManager.boxReward_Two[i].Id,31,function(drop)
 | 
						||
                            UIManager.OpenPanel(UIName.RewardItemPopup,drop)
 | 
						||
                            Util.GetGameObject(this.rewardBoxList[i],"redPoint"):SetActive(false)--隐藏红点
 | 
						||
                            this.RrFreshInfo()
 | 
						||
                        end)
 | 
						||
                    else
 | 
						||
                        this.OpenRewardPreview(LuckyTurnTableManager.boxReward_Two,i)
 | 
						||
                    end
 | 
						||
                else
 | 
						||
                    this.OpenRewardPreview(LuckyTurnTableManager.boxReward_Two,i)
 | 
						||
                end
 | 
						||
            end)
 | 
						||
        end
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---奖盒滑动条奖励背景切换
 | 
						||
function this.RewardBgProgress()
 | 
						||
    for i = 1, 4 do
 | 
						||
        local bg=Util.GetGameObject(this.rewardBoxList[i],"BG"):GetComponent("Image")
 | 
						||
        if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
            if LuckyTurnTableManager.value_1>=LuckyTurnTableManager.boxReward_One[i].Values[1][1] then
 | 
						||
                bg.sprite=Util.LoadSprite(RewardName[2])
 | 
						||
            else
 | 
						||
                bg.sprite=Util.LoadSprite(RewardName[1])
 | 
						||
            end
 | 
						||
        elseif LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
            if LuckyTurnTableManager.value_2>=LuckyTurnTableManager.boxReward_Two[i].Values[1][1] then
 | 
						||
                bg.sprite=Util.LoadSprite(RewardName[2])
 | 
						||
            else
 | 
						||
                bg.sprite=Util.LoadSprite(RewardName[1])
 | 
						||
            end
 | 
						||
        end
 | 
						||
        bg:SetNativeSize()
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---设置奖盒预览信息 并打开面板
 | 
						||
function this.OpenRewardPreview(boxReward,i)
 | 
						||
    --设置奖励预览信息 并打开面板
 | 
						||
    local tab={boxReward[i].Reward[1][1],boxReward[i].Reward[1][2]}
 | 
						||
    this.rewardItemView:OnOpen(false, {tab[1],tab[2]},1, false, false, false, sortingOrder)
 | 
						||
 | 
						||
    this.rewardPanelMaskBtn.gameObject:SetActive(true)
 | 
						||
    this.rewardPanel.gameObject:SetActive(true)
 | 
						||
end
 | 
						||
 | 
						||
---刷新幸运值
 | 
						||
function this.RefreshLuckyValue()
 | 
						||
    if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then
 | 
						||
        LuckyTurnTableManager.SetLuckyValue()
 | 
						||
        local data=LuckyTurnTableManager.GetLuckyValue()
 | 
						||
        this.luckyValueNum.text=data.."/"..LuckyTurnTableManager.boxReward_One[5].Values[1][1]
 | 
						||
        this.luckySlider.minValue=0
 | 
						||
        this.luckySlider.maxValue=LuckyTurnTableManager.boxReward_One[5].Values[1][1]
 | 
						||
        this.luckySlider.value=data
 | 
						||
        this.rewardBoxList[1].transform:DOAnchorPosX(-11.4,0)--有时间再优化成动态计算
 | 
						||
        this.rewardBoxList[2].transform:DOAnchorPosX(125.2,0)
 | 
						||
        this.rewardBoxList[3].transform:DOAnchorPosX(262,0)
 | 
						||
        this.rewardBoxList[4].transform:DOAnchorPosX(400,0)
 | 
						||
        this.rewardBoxList[5].transform:DOAnchorPosX(654.25,0)
 | 
						||
    elseif LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then
 | 
						||
        LuckyTurnTableManager.SetLuckyValue()
 | 
						||
        local data=LuckyTurnTableManager.GetLuckyValue()
 | 
						||
        this.luckyValueNum.text=data.."/"..LuckyTurnTableManager.boxReward_Two[5].Values[1][1]
 | 
						||
        this.luckySlider.minValue=0
 | 
						||
        this.luckySlider.maxValue=LuckyTurnTableManager.boxReward_Two[5].Values[1][1]
 | 
						||
        this.luckySlider.value=data
 | 
						||
        this.rewardBoxList[1].transform:DOAnchorPosX(-11.4,0)
 | 
						||
        this.rewardBoxList[2].transform:DOAnchorPosX(125.2,0)
 | 
						||
        this.rewardBoxList[3].transform:DOAnchorPosX(262,0)
 | 
						||
        this.rewardBoxList[4].transform:DOAnchorPosX(400,0)
 | 
						||
        this.rewardBoxList[5].transform:DOAnchorPosX(654.25,0)
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
---刷新信息
 | 
						||
function this.RrFreshInfo()
 | 
						||
    this.RefreshLuckyValue()
 | 
						||
    this.CheckRedPoint()
 | 
						||
    this.SetRewardBox()
 | 
						||
    this.RewardBgProgress()
 | 
						||
    RedpotManager.CheckRedPointStatus(RedPointType.LuckyTurn)
 | 
						||
end
 | 
						||
 | 
						||
---延时遮罩 1按时间
 | 
						||
function this.DelayMaskWithTime(delayTime)
 | 
						||
    this.mask.gameObject:SetActive(true)
 | 
						||
    local closeMask=Timer.New(function()
 | 
						||
        this.mask.gameObject:SetActive(false)
 | 
						||
    end,delayTime,1,true)
 | 
						||
    closeMask:Start()
 | 
						||
end
 | 
						||
---延时遮罩 1按bool
 | 
						||
function this.DelayMaskWithBool(b)
 | 
						||
    if b then
 | 
						||
        this.mask.gameObject:SetActive(true)
 | 
						||
    else
 | 
						||
        this.mask.gameObject:SetActive(false)
 | 
						||
    end
 | 
						||
end
 | 
						||
 | 
						||
 | 
						||
return LuckyTurnTablePanel |