| | |
| | | DailyQuestActionTimer.Instance.RefreshDailyQuestState += RefreshDailyQuestState;
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
|
| | | GA_Hero.OnEnterOrExitArea += OnEnterOrExitArea;
|
| | | PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += OnRefreshFairyInfo;
|
| | | GAMgr.Instance.OnFightNpcRequest += OnFightNpcUpdate;
|
| | | GAMgr.Instance.OnFightNpcRelease += OnFightNpcUpdate;
|
| | | }
|
| | |
| | | GAMgr.Instance.OnFightNpcRelease -= OnFightNpcUpdate;
|
| | | }
|
| | |
|
| | | private void OnRefreshFairyInfo()
|
| | | {
|
| | | RecheckGrabBoss();
|
| | | }
|
| | |
|
| | | private void OnEnterOrExitArea(MapArea.E_Type type, bool arg1)
|
| | | {
|
| | | if (type == MapArea.E_Type.Boss)
|
| | |
| | | if (!(StageManager.Instance.CurrentStage is DungeonStage))
|
| | | {
|
| | | grabBossHintOpen = false;
|
| | | fairyGrabBossDict.Clear();
|
| | | ClearGrabBossInfo();
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | {
|
| | | RecheckGrabBoss();
|
| | | }
|
| | | }
|
| | |
|
| | | void ClearGrabBossInfo()
|
| | | {
|
| | | fairyGrabBossDict.Clear();
|
| | | bossProgressDict.Clear();
|
| | | }
|
| | |
|
| | | public void RecheckGrabBoss()
|
| | |
| | | var grabBossLine = GeneralConfig.Instance.fairyGrabBossMapLines.ContainsKey(mapId) ?
|
| | | GeneralConfig.Instance.fairyGrabBossMapLines[mapId] : 1;
|
| | | if (PlayerDatas.Instance.baseData.FBID != grabBossLine - 1)
|
| | | {
|
| | | CloseGrabBossHint();
|
| | | return;
|
| | | }
|
| | | if (!PlayerDatas.Instance.fairyData.HasFairy)
|
| | | {
|
| | | CloseGrabBossHint();
|
| | | return;
|
| | |
| | |
|
| | | private void RefreshDailyQuestState()
|
| | | {
|
| | | if (!InActivityTime)
|
| | | {
|
| | | ClearGrabBossInfo();
|
| | | }
|
| | | RecheckGrabBoss();
|
| | | if (stateUpdate != null)
|
| | | {
|