//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Tuesday, October 31, 2017 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; using TableConfig; using System; namespace Snxxz.UI { public class PersonalBossBriefInfoBehaviour : FindPreciousBossBriefInfoBehaviour { protected override int selectedBossId { get { return model.selectedBoss; } set { model.selectedBoss = value; } } protected override InteractorableState interactorableState { get { var selected = selectedBossId == bossId; var dieOrLocked = !model.IsBossUnLocked(bossId); if (!dieOrLocked) { return selected ? InteractorableState.NormalSelected : InteractorableState.NormalUnSelected; } else { return selected ? InteractorableState.DieOrLockedSelected : InteractorableState.DieOrLockedUnSelected; } } set { base.interactorableState = value; } } PersonalBossModel model { get { return ModelCenter.Instance.GetModel(); } } public override void Display(object _data) { base.Display(_data); var config = Config.Instance.Get(bossId); var npcConfig = Config.Instance.Get(bossId); DrawBossBaseInfo(config.PortraitID, npcConfig.charName, npcConfig.NPCLV, npcConfig.ClientRealm); UpdateBossPortrait(interactorableState); UpdateBossRebornCoolDown(true); OnSelected(bossId); model.bossSelectedEvent -= OnSelected; model.bossSelectedEvent += OnSelected; } public override void Dispose() { base.Dispose(); model.bossSelectedEvent -= OnSelected; } private void OnSelected(int _bossId) { UpdateBossNameLevelFont(interactorableState); } protected override void UpdateBossPortrait(InteractorableState _state) { } } }