| | |
| | | [SerializeField] Button m_Goto;
|
| | | [SerializeField] Button m_KillRecord;
|
| | | [SerializeField] Transform m_SurpassLevel;
|
| | | [SerializeField] RectTransform m_NoDamageTip;
|
| | | [SerializeField] ToggleButton m_Subscribe;
|
| | |
|
| | | WorldBossModel model { get { return ModelCenter.Instance.GetModel<WorldBossModel>(); } }
|
| | | MapModel mapModel { get { return ModelCenter.Instance.GetModel<MapModel>(); } }
|
| | | FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel<FindPreciousModel>(); } }
|
| | | DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
| | | BossHomeModel bossHomeModel { get { return ModelCenter.Instance.GetModel<BossHomeModel>(); } }
|
| | |
| | | var bosses = new List<int>();
|
| | | bosses.AddRange(model.GetWorldBosses());
|
| | |
|
| | | model.selectedBoss = model.GetLatestUnLockBoss();
|
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(model.selectedBoss);
|
| | | model.selectedBoss = model.GetRecommendBoss();
|
| | |
|
| | | m_BossIntroduce.Display(model.selectedBoss, true);
|
| | | m_Bosses.Init(bosses);
|
| | | m_Bosses.MoveToCenter(bosses.IndexOf(model.selectedBoss));
|
| | |
|
| | | var config = NPCConfig.Get(model.selectedBoss);
|
| | | var npcDropConfig = NPCDropItemConfig.Get(model.selectedBoss);
|
| | | m_SurpassLevel.gameObject.SetActive(npcDropConfig.MaxLV != 0 && PlayerDatas.Instance.baseData.LV > npcDropConfig.MaxLV);
|
| | | DisplayGotoKillButton(model.selectedBoss);
|
| | | DisplaySubscribe(model.selectedBoss);
|
| | | DisplayTip(model.selectedBoss);
|
| | | }
|
| | |
|
| | | private void ShowKillRecords()
|
| | |
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(model.selectedBoss);
|
| | | }
|
| | |
|
| | | private void OnBossSelected(int _bossId)
|
| | | private void OnBossSelected(int bossId)
|
| | | {
|
| | | m_BossIntroduce.Display(_bossId, false);
|
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(_bossId);
|
| | | var npcDropConfig = NPCDropItemConfig.Get(model.selectedBoss);
|
| | | m_SurpassLevel.gameObject.SetActive(npcDropConfig.MaxLV != 0 && PlayerDatas.Instance.baseData.LV > npcDropConfig.MaxLV);
|
| | | m_BossIntroduce.Display(bossId, false);
|
| | | DisplayGotoKillButton(bossId);
|
| | | DisplaySubscribe(bossId);
|
| | | DisplayTip(bossId);
|
| | | }
|
| | |
|
| | | private void OnBossWearyValue()
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | private void DisplayGotoKillButton(int bossId)
|
| | | {
|
| | | var isUnLocked = model.IsBossUnLocked(bossId);
|
| | | m_Goto.gameObject.SetActive(isUnLocked);
|
| | | }
|
| | |
|
| | | private void DisplaySubscribe(int bossId)
|
| | | {
|
| | | var isUnLocked = model.IsBossUnLocked(bossId);
|
| | | m_Subscribe.gameObject.SetActive(isUnLocked);
|
| | | if (isUnLocked)
|
| | | {
|
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(bossId);
|
| | | }
|
| | | }
|
| | |
|
| | | private void DisplayTip(int bossId)
|
| | | {
|
| | | var realmLevel = PlayerDatas.Instance.baseData.realmLevel;
|
| | | var config = NPCConfig.Get(bossId);
|
| | |
|
| | | if (config.Realm > realmLevel)
|
| | | {
|
| | | m_NoDamageTip.gameObject.SetActive(true);
|
| | | m_SurpassLevel.gameObject.SetActive(false);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_NoDamageTip.gameObject.SetActive(false);
|
| | | var dropConfig = NPCDropItemConfig.Get(bossId);
|
| | | var noDrop = dropConfig == null || (dropConfig.MaxLV != 0 && PlayerDatas.Instance.baseData.LV > dropConfig.MaxLV);
|
| | | m_SurpassLevel.gameObject.SetActive(noDrop);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | }
|