local UIBattleSummaryLogo = UIViewClass() local EventSystem = require('Event/EventSystem') function UIBattleSummaryLogo:OnOpened(context) local isWin = self:GetIsWin(context) self:Init(context) if isWin then CTL.Sound.PlayGameSound("MUSIC_Victory") self.group_Win.gameObject:SetActive(true) self:PlayUIEffect(self.group_Win.effect_WinBG) self:PlayUIEffect(self.group_Win.effect_WinTxtCN) self:PlayUIEffect(self.group_Win.effect_WinTxtTC) self:PlayUIEffect(self.group_Win.effect_WinTxtEN) self:PlayUIEffect(self.group_Win.effect_WinTxtJP) else self.group_Loss.gameObject:SetActive(true) self:PlayUIEffect(self.group_Loss.effect_LossBG) self:PlayUIEffect(self.group_Loss.effect_LossTxtCN) self:PlayUIEffect(self.group_Loss.effect_LossTxtTC) self:PlayUIEffect(self.group_Loss.effect_LossTxtEN) self:PlayUIEffect(self.group_Loss.effect_LossTxtJP) CTL.Sound.PlayGameSound("MUSIC_Fail") end end function UIBattleSummaryLogo:Init(context) if context.summaryType == MDL.GuildWar.SummaryType.GuildWar then self:StartRepeatFunc(self.OnUpdateFun, 2) self.showCountDown = false BIManager.DispatchBIClientEvent(BIManager.EventName.GuildWarFinish) elseif context.summaryType == MDL.GuildWar.SummaryType.GuildBoss then self:StartRepeatFunc(self.OnUpdateFun, 2) self.showCountDown = false BIManager.DispatchBIClientEvent(BIManager.EventName.GuildWarFinish) elseif context.summaryType == MDL.GuildWar.SummaryType.SyncTeamPVP then self:StartRepeatFunc(self.OnUpdateFun, 2.5) self.showCountDown = true end end function UIBattleSummaryLogo:GetIsWin(context) if context.summaryType == MDL.GuildWar.SummaryType.GuildWar then local data = MDL.GuildWar.GetBattleInfo() local isWin = false if data.selfIsRed then isWin = context.msg.winCameId == 1 else isWin = context.msg.winCameId == 2 end return isWin elseif context.summaryType == MDL.GuildWar.SummaryType.GuildBoss then return true elseif context.summaryType == MDL.GuildWar.SummaryType.SyncTeamPVP then return context.isWin end end function UIBattleSummaryLogo:PlayUIEffect(obj) if obj.gameObject.activeInHierarchy then obj:PlayUIEffect() end end function UIBattleSummaryLogo:OnUpdateFun() if self.showCountDown == false then self.group_Continue.gameObject:SetActive(true) self:StopRepeatFunc(self.OnUpdateFun) self:StartRepeatFunc(self.OnUpdateFun, 10) self.txt_Notice:ResetAndBeginCustomTimer(false, 10,0,UIUtils.GetLocalizedTxt(Const_IDS.IDS_ClickScreenToContinue_Countdown)) self.showCountDown = true else self:CloseView() end end function UIBattleSummaryLogo:OnButtonClicked(comp) self:CloseView() end function UIBattleSummaryLogo:OnClosed() if self.context.summaryType == MDL.GuildWar.SummaryType.GuildWar then UIManager.OpenView(Const_UI_Lua.UIEnum.UIGuildWarSummaryReward , self.context.msg) elseif self.context.summaryType == MDL.GuildWar.SummaryType.GuildBoss then UIManager.OpenView(Const_UI_Lua.UIEnum.UIGuildBossSummaryReward , self.context.msg) end end return UIBattleSummaryLogo