|  |  | 
 |  |  |  | 
 |  |  |         if (!UIManager.Instance.IsOpened<MainWin>()) | 
 |  |  |             UIManager.Instance.OpenWindow<MainWin>(); | 
 |  |  |  | 
 |  |  |         if (null != bossBattleObject) | 
 |  |  |         { | 
 |  |  |             bossBattleObject.buffMgr.onBuffChanged -= OnBuffChanged; | 
 |  |  |             bossBattleObject = null; | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private void OnCreateBattleField(string arg1, BattleField field) | 
 |  |  | 
 |  |  |  | 
 |  |  |         NPCLineupConfig lineupConfig = battleField.GetBossLineupConfig(); | 
 |  |  |  | 
 |  |  |         if (null != bossBattleObject) | 
 |  |  |         { | 
 |  |  |             bossBattleObject.buffMgr.onBuffChanged -= OnBuffChanged; | 
 |  |  |             bossBattleObject = null; | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         bossBattleObject = battleField.FindBoss(); | 
 |  |  |  | 
 |  |  |         DisplaySkillWordsList(lineupConfig); | 
 |  |  | 
 |  |  |             txtBossName.text = teamHero.name; | 
 |  |  |             NPCConfig npcConfig = NPCConfig.Get(teamHero.NPCID); | 
 |  |  |             bossLifeBar.SetBaseInfo(Mathf.Max(1, npcConfig.LifeBarCount), (ulong)teamHero.curHp, (ulong)teamHero.maxHp); | 
 |  |  |             bossBattleObject.buffMgr.onBuffChanged -= OnBuffChanged; | 
 |  |  |             bossBattleObject.buffMgr.onBuffChanged += OnBuffChanged; | 
 |  |  |         } | 
 |  |  |         else | 
 |  |  |         { | 
 |  |  | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         txtBattleRound.text = string.Format("{0}/{1}", battleField.round, battleField.turnMax); | 
 |  |  |  | 
 |  |  |         OnBuffChanged(); | 
 |  |  |  | 
 |  |  |         totalDamageDisplayer.SetActive(false); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private void OnBuffChanged() | 
 |  |  |     { | 
 |  |  |         var buffList = new List<HB428_tagSCBuffRefresh>(); | 
 |  |  |         if (null != bossBattleObject) | 
 |  |  |         { | 
 |  |  |             buffList = bossBattleObject.buffMgr.GetBuffList(); | 
 |  |  |         } | 
 |  |  |         RefreshBuff(buffList); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private void RefreshHP() | 
 |  |  | 
 |  |  |  | 
 |  |  |     private void OnDamageTaken(BattleDmgInfo info) | 
 |  |  |     { | 
 |  |  |         if (info.battleFieldGuid != battleField.guid) | 
 |  |  |             return; | 
 |  |  |  | 
 |  |  |         if (info.hurtObj.ObjID == bossBattleObject.ObjID) | 
 |  |  |         { | 
 |  |  |             // Update the boss's health bar |