local UIBattleBossProgress = UIViewClass() function UIBattleBossProgress:OnOpened() self:RegistSystemEvent(EventID.UIBattle_Level_SetProgressBar, self.SetProgressBar) self:RegistSystemEvent(EventID.UIBattle_Level_UpdateProgressBar, self.UpdateProgressBar) self:RegistSystemEvent(EventID.Level_Pause, self.OnLevelPause) self:SetProgressBar(BattleDataGetter.GetShowProgressInfo()) end function UIBattleBossProgress:SetProgressBar(time, ids, isGrow) if time then self.totalTime = time self.titleStr = UIUtils.GetLocalizedTxt(Const_IDS[ids]) self.isGrow = isGrow if not self.isGrow then self.progress:ResetAndBeginCustomTimer(false, self.totalTime, self.totalTime, self.titleStr) else self.progress:ResetAndBeginCustomTimer(true, 0, self.totalTime, self.titleStr) end else self.progress:EndTimer() end end function UIBattleBossProgress:UpdateProgressBar(time) if not self.isGrow then self.progress:ResetAndBeginCustomTimer(false, time, self.totalTime, self.titleStr) else self.progress:ResetAndBeginCustomTimer(true, self.totalTime - time, self.totalTime, self.titleStr) end end function UIBattleBossProgress:OnLevelPause(pause) if pause then self.progress:PauseTimer() else self.progress:ResumeTimer() end end function UIBattleBossProgress:OnClosed() self.progress:EndTimer() end return UIBattleBossProgress