570 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Lua
		
	
			
		
		
	
	
			570 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Lua
		
	
require("Base/BasePanel")
 | 
						|
BattleWinPopup = Inherit(BasePanel)
 | 
						|
local this = BattleWinPopup
 | 
						|
local m_isBack
 | 
						|
local m_battlePanel
 | 
						|
local m_fightType
 | 
						|
local m_battleResult
 | 
						|
local m_notShowRecord = false
 | 
						|
local m_backPanel
 | 
						|
local orginLayer
 | 
						|
local m_callBack
 | 
						|
local hadClick = false
 | 
						|
 | 
						|
--初始化组件(用于子类重写)
 | 
						|
function BattleWinPopup:InitComponent()
 | 
						|
    this.spLoader = SpriteLoader.New()
 | 
						|
 | 
						|
    orginLayer = 0
 | 
						|
    this.btnWin = Util.GetGameObject(self.gameObject, "Win")
 | 
						|
end
 | 
						|
 | 
						|
--绑定事件(用于子类重写)
 | 
						|
function BattleWinPopup:BindEvent()
 | 
						|
 | 
						|
    Util.AddClick(this.btnWin, function ()
 | 
						|
        self:ClosePanel()
 | 
						|
        if m_fightType == BATTLE_TYPE.Test  then
 | 
						|
            if m_battlePanel then
 | 
						|
                m_battlePanel:ClosePanel()
 | 
						|
            end     
 | 
						|
        end
 | 
						|
    end)
 | 
						|
end
 | 
						|
 | 
						|
-- 
 | 
						|
function BattleWinPopup:NextStep()
 | 
						|
    if not hadClick then -- 避免重复结算
 | 
						|
        hadClick = true
 | 
						|
        if m_isBack then
 | 
						|
            if m_battlePanel then
 | 
						|
                m_battlePanel:ClosePanel()
 | 
						|
            end
 | 
						|
            self:ClosePanel()
 | 
						|
            return
 | 
						|
        end
 | 
						|
        if m_fightType == BATTLE_TYPE.MAP_FIGHT then --副本战斗结算
 | 
						|
            this.ShowBattleResultByMapFight()
 | 
						|
        elseif m_fightType == BATTLE_TYPE.ELITE_MONSTER then --限时怪战斗结算
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, m_battleResult.drop, 1,function() m_battlePanel:ClosePanel() self:ClosePanel() end, 1, true)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.MONSTER_CAMP then -- 兽潮来袭
 | 
						|
            this.ShowBattleResultByMonsterCamp(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.STORY_FIGHT then -- 新关卡的战斗
 | 
						|
            this.ShowBattleResultByStoryFight(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.FOURELEMENT then -- 四灵
 | 
						|
            this.ShowBattleResultByFourElement(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.EXECUTE_FIGHT then -- 猎妖之路
 | 
						|
            this.ShowBattleResultByExpedition(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.DAILY_CHALLENGE-- 日常副本
 | 
						|
        or m_fightType == BATTLE_TYPE.XUAN_YUAN_MIRROR
 | 
						|
        or m_fightType == BATTLE_TYPE.TRIAL_FIGHT then
 | 
						|
            m_battlePanel:ClosePanel() self:ClosePanel(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.GUILD_CAR_DELAY then -- 车迟
 | 
						|
            this.ShowBattleResultByCarDeleayType(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.XIAOYAOYOU then
 | 
						|
                if m_battlePanel then m_battlePanel:ClosePanel()end self:ClosePanel()
 | 
						|
        elseif m_fightType == BATTLE_TYPE.FIGHTLEVEL then--山河社稷图主关卡
 | 
						|
            this.ShowBattleResultByFightLevelType(m_battleResult.drop)
 | 
						|
        elseif m_fightType == BATTLE_TYPE.FIGHT_ASSISTANT_LEVEL then--山河社稷图副关卡
 | 
						|
            this.ShowBattleResultByFightLevelAssistantType(m_battleResult.drop) 
 | 
						|
        elseif m_fightType == BATTLE_TYPE.JumpServerhightLadder then -- 跨服天梯的战斗
 | 
						|
                this.JumpServerHithtLadder()
 | 
						|
        elseif m_fightType == BATTLE_TYPE.EndlessMpaFight then--无尽地图战斗
 | 
						|
            this.ShowBattleResultByEndless()
 | 
						|
        elseif m_fightType == BATTLE_TYPE.QIJIE_FIGHT then--七界试炼战斗
 | 
						|
            this.ShowBattleResultByQiJie()
 | 
						|
        elseif m_fightType == BATTLE_TYPE.CHALLENG_COPY_1 or m_fightType == BATTLE_TYPE.CHALLENG_COPY_2 then
 | 
						|
            this.ShowBattleResultByChallengeCopy()
 | 
						|
        --新回放功能
 | 
						|
        elseif m_fightType == BATTLE_TYPE.BACK_BATTLE then
 | 
						|
            if BattleManager.GetLastBattleType() == BATTLE_TYPE.STORY_FIGHT then-- 新关卡战斗   
 | 
						|
                this.ShowBattleResultByStoryFight(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.FOURELEMENT then -- 四灵试炼
 | 
						|
                this.ShowBattleResultByFourElement(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.EXECUTE_FIGHT then--猎妖之路
 | 
						|
                this.ShowBattleResultByExpedition(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.GUILD_CAR_DELAY then--车迟
 | 
						|
                this.ShowBattleResultByCarDeleayType(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.MONSTER_CAMP then--兽潮来袭
 | 
						|
                this.ShowBattleResultByMonsterCamp(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.XIAOYAOYOU then
 | 
						|
                if m_battlePanel then m_battlePanel:ClosePanel()end self:ClosePanel()
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.FIGHTLEVEL then--山河社稷图
 | 
						|
                this.ShowBattleResultByFightLevelType(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.FIGHT_ASSISTANT_LEVEL then--山河社稷图副关卡
 | 
						|
                this.ShowBattleResultByFightLevelAssistantType(BattleManager.GetLastBattleResult().drop)
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.JumpServerhightLadder then
 | 
						|
                this.JumpServerHithtLadder()
 | 
						|
            elseif BattleManager.GetLastBattleType() == BATTLE_TYPE.QIJIE_FIGHT then
 | 
						|
                this.ShowBattleResultByQiJie()
 | 
						|
            elseif BattleManager.GetLastBattleType()  == BATTLE_TYPE.CHALLENG_COPY_1 or BattleManager.GetLastBattleType()  == BATTLE_TYPE.CHALLENG_COPY_2 then
 | 
						|
                this.ShowBattleResultByChallengeCopy()
 | 
						|
            end
 | 
						|
        end
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
--副本战斗结算
 | 
						|
function this.ShowBattleResultByMapFight()
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    FightPointPassManager.oldLevel = PlayerManager.level
 | 
						|
    if bestData then
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId, bestData.skinId,bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, m_battleResult.drop, 1,function()
 | 
						|
                if _BattleBestPopup then
 | 
						|
                    _BattleBestPopup:ClosePanel()
 | 
						|
                end
 | 
						|
                if m_battlePanel then
 | 
						|
                    m_battlePanel:ClosePanel()
 | 
						|
                end
 | 
						|
                this:ClosePanel()
 | 
						|
                Game.GlobalEvent:DispatchEvent(GameEvent.Bag.BagGold)
 | 
						|
            end, 0, true, true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
--七界试炼战斗界面特殊显示
 | 
						|
function this.ShowBattleResultByQiJie()
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, QiJieShiLianManager.battleResult.drop, 1,function(isBackBattle)
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end, 10, true,true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
--挑战副本战斗界面特殊显示
 | 
						|
function this.ShowBattleResultByChallengeCopy()
 | 
						|
    LogBlue("--挑战副本战斗界面特殊显示")
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, CarbonManager.battleResult.drop, 1,function(isBackBattle)
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end, 12 , true,true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
--无尽副本战斗界面特殊显示
 | 
						|
function this.ShowBattleResultByEndless()
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    FightPointPassManager.oldLevel = PlayerManager.level
 | 
						|
    if bestData then
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId, bestData.skinId,bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, EndLessMapManager.EndlessDrop, 1,function()
 | 
						|
                if _BattleBestPopup then
 | 
						|
                    _BattleBestPopup:ClosePanel()
 | 
						|
                end
 | 
						|
                if m_battlePanel then
 | 
						|
                    m_battlePanel:ClosePanel()
 | 
						|
                end
 | 
						|
                this:ClosePanel()
 | 
						|
                Game.GlobalEvent:DispatchEvent(GameEvent.Bag.BagGold)
 | 
						|
            end,0, true, true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
-- 兽潮来袭结算界面特殊显示
 | 
						|
function this.ShowBattleResultByMonsterCamp(drop)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1,function(isBackBattle)
 | 
						|
                -- LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                    if m_callBack then m_callBack() end
 | 
						|
                    --内容优化   心魔试炼推送
 | 
						|
                    Game.GlobalEvent:DispatchEvent(GameEvent.PatFace.PatFaceSend,FacePanelType.MonsterWave)
 | 
						|
                    CheckRedPointStatus(RedPointType.EpicExplore_LevleReward)
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end, nil, true,true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
 | 
						|
end
 | 
						|
-- 新关卡战斗结算界面特殊显示
 | 
						|
function this.ShowBattleResultByStoryFight(drop)
 | 
						|
    FightPointPassManager.FightBattleEnd()
 | 
						|
    FightPointPassManager.OnBattleEnd(m_battleResult)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                -- LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                    -- 再刷新一便关卡信息
 | 
						|
                    NetManager.InitFightPointLevelInfo()
 | 
						|
                end
 | 
						|
            end, 1, true, true)
 | 
						|
        end)
 | 
						|
    else
 | 
						|
        -- 打开关卡奖励界面
 | 
						|
        UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1,function()
 | 
						|
            if m_battlePanel then
 | 
						|
                m_battlePanel:ClosePanel()
 | 
						|
            end
 | 
						|
            this:ClosePanel()
 | 
						|
        end, 1, true)
 | 
						|
    end
 | 
						|
end
 | 
						|
--四灵
 | 
						|
function this.ShowBattleResultByFourElement(drop)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, MonsterCampManager.drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                if not isBackBattle then                   
 | 
						|
                    MonsterCampManager.fourMonsterData[MonsterCampManager.curType].canFightTime = MonsterCampManager.fourMonsterData[MonsterCampManager.curType].canFightTime - 1                   
 | 
						|
                    MonsterCampManager.SaveFormation(MonsterCampManager.curType)  
 | 
						|
                    if MonsterCampManager.fourMonsterData[MonsterCampManager.curType].openState ~= 0 then 
 | 
						|
                        UIManager.OpenPanel(UIName.FourElementMonsterCampPanel,MonsterCampManager.curType)
 | 
						|
                    else
 | 
						|
                        UIManager.OpenPanel(UIName.MonsterCampMainPanel)
 | 
						|
                    end                     
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end, 0, true, true)
 | 
						|
        end)
 | 
						|
    else
 | 
						|
        -- 打开关卡奖励界面
 | 
						|
        UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1,function()
 | 
						|
            if m_battlePanel then
 | 
						|
                m_battlePanel:ClosePanel()
 | 
						|
            end
 | 
						|
            this:ClosePanel()
 | 
						|
        end, 1, true)
 | 
						|
    end
 | 
						|
end
 | 
						|
-- 车迟斗法结算界面特殊显示
 | 
						|
function this.ShowBattleResultByCarDeleayType(drop)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        if  m_fightType == BATTLE_TYPE.GUILD_CAR_DELAY then
 | 
						|
            --车迟抢夺cd计时
 | 
						|
            GuildCarDelayManager.SetCdTime(GuildCarDelayProType.Loot)
 | 
						|
        end
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup,nil, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                -- LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end, 3,true,true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
-- 猎妖之路结算界面特殊显示
 | 
						|
function this.ShowBattleResultByExpedition(drop)
 | 
						|
    this:ClosePanel()
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        local GetCurNodeInfo = ExpeditionManager.curAttackNodeInfo--ExpeditionManager.GetCurNodeInfo()
 | 
						|
        local func2 = nil
 | 
						|
        if GetCurNodeInfo.type == ExpeditionNodeType.Trail then--试炼节点
 | 
						|
            func2 = function()
 | 
						|
                Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel)
 | 
						|
            end
 | 
						|
        end
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
                --贪婪节点不弹领取圣物
 | 
						|
                if GetCurNodeInfo.type == ExpeditionNodeType.Greed then--贪婪节点
 | 
						|
                    if drop.itemlist and #drop.itemlist > 0 then
 | 
						|
                        --LogGreen("m_battleResult.drop.itemlist    "..#m_battleResult.drop.itemlist)
 | 
						|
                    else
 | 
						|
                        --LogGreen("贪婪节点无数据")
 | 
						|
                    end
 | 
						|
                    UIManager.OpenPanel(UIName.RewardItemPopup,drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                        -- LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                        if not isBackBattle then
 | 
						|
                            if m_battlePanel then
 | 
						|
                                m_battlePanel:ClosePanel()
 | 
						|
                            end
 | 
						|
                            if _BattleBestPopup then
 | 
						|
                                _BattleBestPopup:ClosePanel()
 | 
						|
                            end
 | 
						|
                            Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel)
 | 
						|
                        end
 | 
						|
                    end, 0,true,true)
 | 
						|
                elseif GetCurNodeInfo.type == ExpeditionNodeType.Trail then--试炼节点
 | 
						|
                    if m_battleResult.drop and m_battleResult.drop.soulEquip and #m_battleResult.drop.soulEquip > 0 then
 | 
						|
                        for i = 1, #m_battleResult.drop.soulEquip do
 | 
						|
                            ExpeditionManager.InitSingleTreasureData(m_battleResult.drop.soulEquip[i])
 | 
						|
                        end
 | 
						|
                    end
 | 
						|
                    if m_battleResult.drop and m_battleResult.drop.Hero and m_battleResult.drop.Hero[1] then
 | 
						|
                        ExpeditionManager.UpdateHeroDatas(m_battleResult.drop.Hero[1])
 | 
						|
                    else
 | 
						|
                        LogError("试炼节点数据没有")
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    PopupTipPanel.ShowTip(Language[11459])
 | 
						|
                    Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel)
 | 
						|
                else
 | 
						|
                    UIManager.OpenPanel(UIName.RewardItemPopup,drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                        -- LogPink("isBackBattle          "..tostring(isBackBattle))
 | 
						|
                        if not isBackBattle then
 | 
						|
                            if m_battlePanel then
 | 
						|
                                m_battlePanel:ClosePanel()
 | 
						|
                            end
 | 
						|
                            if _BattleBestPopup then
 | 
						|
                                _BattleBestPopup:ClosePanel()
 | 
						|
                            end
 | 
						|
                            if GetCurNodeInfo.holyEquipID and #GetCurNodeInfo.holyEquipID > 0 then
 | 
						|
                                UIManager.OpenPanel(UIName.ExpeditionSelectHalidomPanel,true,function ()
 | 
						|
                                end)
 | 
						|
                            else
 | 
						|
                                --此时战斗了但没有圣物 所有直接刷新界面动画 后并刷新界面
 | 
						|
                                Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel)
 | 
						|
                            end
 | 
						|
                        end
 | 
						|
                    end, 0,true,true)
 | 
						|
                end
 | 
						|
        end,func2)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
-- 山河社稷图结算界面特殊显示
 | 
						|
function this.ShowBattleResultByFightLevelType(drop)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            local HardStageFightResponseMsg = FightLevelManager.GetHardStageFightResponseMsg()
 | 
						|
            local oldBattlefightLevelData = FightLevelManager.GetcurBattlefightLevelData()
 | 
						|
            local curBattlefightLevelData = FightLevelManager.GetChapterLevelData(oldBattlefightLevelData.config.Chapter,oldBattlefightLevelData.nodeId) 
 | 
						|
            -- LogYellow("山河社稷图战斗获得星级        "..HardStageFightResponseMsg.stars.."    curBattlefightLevelData.isFirst   "..tostring(curBattlefightLevelData.isFirst).."    HardStageFightResponseMsg.currentIsHonour   "..tostring(HardStageFightResponseMsg.currentIsHonour))
 | 
						|
            -- if curBattlefightLevelData.isFirst then
 | 
						|
            --     PopupTipPanel.ShowTip("荣耀三星!")
 | 
						|
            -- end
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup,HardStageFightResponseMsg.drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                    local chapterData = FightLevelManager.GetChapterData(oldBattlefightLevelData.config.Chapter)
 | 
						|
                    if FightLevelManager.GetisShowChapterOpenPopup() then
 | 
						|
                        if oldBattlefightLevelData.config.Section == LengthOfTable(chapterData.node) then
 | 
						|
                            UIManager.OpenPanel(UIName.FightLevelOpenChapterPopup,FightLevelManager.GetCurChapterId(),function()
 | 
						|
                            end)
 | 
						|
                        else
 | 
						|
                            FightLevelManager.SetisShowChapterOpenPopup(false)
 | 
						|
                        end
 | 
						|
                    end
 | 
						|
                end
 | 
						|
            end, 8,true,true)
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
-- 山河社稷图结算界面副关卡特殊显示
 | 
						|
function this.ShowBattleResultByFightLevelAssistantType(drop)
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            local HardStageFightResponseMsg = FightLevelManager.GetHardStageFightResponseMsg()
 | 
						|
            LogYellow("山河社稷图战斗获得星级        "..HardStageFightResponseMsg.stars)
 | 
						|
            local curBattlefightLevelData = FightLevelManager.GetcurBattlefightLevelData()
 | 
						|
            LogYellow("curBattlefightLevelData.state          "..curBattlefightLevelData.state)
 | 
						|
            if curBattlefightLevelData.state == 0 then--副关卡未通过 第一次通关 展示奖励
 | 
						|
                UIManager.OpenPanel(UIName.RewardItemPopup,HardStageFightResponseMsg.drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                    if not isBackBattle then
 | 
						|
                        if _BattleBestPopup then
 | 
						|
                            _BattleBestPopup:ClosePanel()
 | 
						|
                        end
 | 
						|
                        if m_battlePanel then
 | 
						|
                            m_battlePanel:ClosePanel()
 | 
						|
                        end
 | 
						|
                        this:ClosePanel()
 | 
						|
                        -- Game.GlobalEvent:DispatchEvent(GameEvent.FightLevel.MainLevelInfoRefresh)
 | 
						|
                    end
 | 
						|
                end,nil,true,true)
 | 
						|
            elseif curBattlefightLevelData.state == 1 then
 | 
						|
                UIManager.OpenPanel(UIName.RewardItemPopup,HardStageFightResponseMsg.drop, 1,function(isBackBattle)--isBackBattle  true时 为回放不走回调
 | 
						|
                    if not isBackBattle then
 | 
						|
                        if _BattleBestPopup then
 | 
						|
                            _BattleBestPopup:ClosePanel()
 | 
						|
                        end
 | 
						|
                        if m_battlePanel then
 | 
						|
                            m_battlePanel:ClosePanel()
 | 
						|
                        end
 | 
						|
                        this:ClosePanel()
 | 
						|
                        -- Game.GlobalEvent:DispatchEvent(GameEvent.FightLevel.MainLevelInfoRefresh)
 | 
						|
                    end
 | 
						|
                end, 9,true,true)
 | 
						|
            end
 | 
						|
        end)
 | 
						|
    end
 | 
						|
end
 | 
						|
 | 
						|
--跨服天梯
 | 
						|
function  this.JumpServerHithtLadder()
 | 
						|
    local bestData, allDamage= BattleRecordManager.GetBattleBestData()
 | 
						|
    if bestData then
 | 
						|
        -- 胜利显示本场比赛的表现最好的英雄
 | 
						|
        UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId,bestData.skinId, bestData.damage, allDamage, function(_BattleBestPopup)
 | 
						|
            -- 打开关卡奖励界面
 | 
						|
            UIManager.OpenPanel(UIName.RewardItemPopup, JumpServerManager.curBattleDrop, 1,function(isBackBattle)
 | 
						|
                if not isBackBattle then
 | 
						|
                    if _BattleBestPopup then
 | 
						|
                        _BattleBestPopup:ClosePanel()
 | 
						|
                    end
 | 
						|
                    if m_battlePanel then
 | 
						|
                        m_battlePanel:ClosePanel()
 | 
						|
                    end
 | 
						|
                    this:ClosePanel()
 | 
						|
                end
 | 
						|
            end,  0,true,true)
 | 
						|
            if m_fightType == BATTLE_TYPE.JumpServerhightLadder then
 | 
						|
                local MyRank = JumpServerManager.GetHightLadderDataMyRank()
 | 
						|
                local OldMyRank = JumpServerManager.GetHightLadderDataOldMyRank()
 | 
						|
                if MyRank ~= OldMyRank then
 | 
						|
                    PopupTipPanel.ShowTip("挑战成功,罗浮争锋排行已提升至".. MyRank .."名!" )
 | 
						|
                elseif MyRank == OldMyRank then
 | 
						|
                    PopupTipPanel.ShowTip("挑战成功")
 | 
						|
                end
 | 
						|
            end
 | 
						|
        end)
 | 
						|
    else
 | 
						|
        -- 打开关卡奖励界面
 | 
						|
        -- UIManager.OpenPanel(UIName.RewardItemPopup, m_battleResult.drop, 1,function()
 | 
						|
            if m_battlePanel then
 | 
						|
                m_battlePanel:ClosePanel()
 | 
						|
            end
 | 
						|
            this:ClosePanel()
 | 
						|
        -- end)
 | 
						|
    end
 | 
						|
end
 | 
						|
--添加事件监听(用于子类重写)
 | 
						|
function BattleWinPopup:AddListener()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
--移除事件监听(用于子类重写)
 | 
						|
function BattleWinPopup:RemoveListener()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
function BattleWinPopup:OnSortingOrderChange()
 | 
						|
    Util.AddParticleSortLayer(this.btnWin, self.sortingOrder - orginLayer)
 | 
						|
    orginLayer = self.sortingOrder
 | 
						|
end
 | 
						|
 | 
						|
--界面打开时调用(用于子类重写)
 | 
						|
function BattleWinPopup:OnOpen(battlePanel, isBack, fightType, result, showRecord, backPanel, func)
 | 
						|
 | 
						|
    hadClick = false
 | 
						|
    if battlePanel then
 | 
						|
        m_battlePanel = battlePanel
 | 
						|
    end
 | 
						|
    if isBack ~= nil then
 | 
						|
        m_isBack = isBack
 | 
						|
    end
 | 
						|
    if fightType then
 | 
						|
        m_fightType = fightType
 | 
						|
    end
 | 
						|
    if result then
 | 
						|
        m_battleResult = result
 | 
						|
    end
 | 
						|
    m_notShowRecord = false
 | 
						|
    if showRecord then
 | 
						|
        m_notShowRecord = showRecord
 | 
						|
    end
 | 
						|
    m_backPanel = nil
 | 
						|
    if backPanel then
 | 
						|
        m_backPanel = backPanel
 | 
						|
    end
 | 
						|
    m_callBack = nil
 | 
						|
    if func then
 | 
						|
        m_callBack = func
 | 
						|
    end
 | 
						|
 | 
						|
    -- 闪闪闪,一闪而过,舒服的一批
 | 
						|
    Timer.New(function()
 | 
						|
        self:NextStep()
 | 
						|
    end, 0.1):Start()
 | 
						|
end
 | 
						|
 | 
						|
--界面关闭时调用(用于子类重写)
 | 
						|
function BattleWinPopup:OnClose()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
--界面销毁时调用(用于子类重写)
 | 
						|
function BattleWinPopup:OnDestroy()
 | 
						|
    this.spLoader:Destroy()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
return BattleWinPopup |