void UpdateNotify(eMissionState state) { QuestManager.Instance.CheckComplete(); switch (state) { case eMissionState.none: m_NotifyDaily.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Daily)); m_NotifyWeekly.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Weekly)); m_NotifyAchievement.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Achievement)); break; case eMissionState.Daily: m_NotifyDaily.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Daily)); break; case eMissionState.Weekly: m_NotifyWeekly.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Weekly)); break; case eMissionState.Achievement: m_NotifyAchievement.SetActive(QuestManager.Instance.Data.Exists(q => q.IsComplete && q.IsRewarded == false && q.Info.Type == eQuestType.Achievement)); break; } }
//当任务改变时,注意都是瞬间动作 public bool OnMissionChange(int missionId, eMissionState state) { if (!GameSetting.Instance.EnableNewFunctionTip) { return(false); } EventDispatcher.Instance.DispatchEvent(new Event_RefreshFuctionOnState()); var __list2 = s_newFunctionList; var __listCount2 = __list2.Count; for (var __i2 = 0; __i2 < __listCount2; ++__i2) { var table = __list2[__i2]; { //判断任务状态,必须是未完成状态 var temp = (eMissionState)table.State; if (missionId != table.TaskID || temp != state) { continue; } //判断等级 if (table.Level > 0) { if (PlayerDataManager.Instance.GetLevel() < table.Level) { continue; } } //判断职业 if (table.Career > 0) { if ((table.Career & (1 << PlayerDataManager.Instance.GetRoleId())) <= 0) { continue; } } if (ObjManager.Instance.MyPlayer.Dead) { return(false); } if (2 == table.GuideRule) { if (-1 != table.UIID) { GameUtils.GotoUiTab(table.UIID, 0); } } else { if (-1 == table.Flag) { return(false); } UIManager.Instance.OpenDefaultFrame(); EventDispatcher.Instance.DispatchEvent(new Close_UI_Event(UIConfig.MessageBox)); //开启该新功能 EventDispatcher.Instance.DispatchEvent(new UIEvent_PlayMainUIBtnAnimEvent(table.Name, () => { //StartCoroutine(StartGuideCoroutine(table.Flag)); UIManager.Instance.ShowUI(UIConfig.MainUI); if (0 != table.Flag) { //硬编码,0表示不引导 GuideManager.Instance.StartGuide(table.Flag); } //StartGuide(table.Flag); })); } //屏蔽输入 //EventDispatcher.Instance.DispatchEvent(new UI_BlockMainUIInputEvent(2)); //延迟开启引导 //StartCoroutine(StartGuideCoroutine(table.Flag)); return(true); } } return(false); }
//当任务改变时,注意都是瞬间动作 public bool OnMissionChange(int missionId, eMissionState state) { if (!GameSetting.Instance.EnableNewFunctionTip) { return(false); } foreach (var kv in s_newFunctionList) { var table = kv.Value; { //判断任务状态,必须是未完成状态 var temp = (eMissionState)table.State; if (missionId != table.TaskID || temp != state) { continue; } //判断等级 if (table.Level > 0) { if (PlayerDataManager.Instance.GetLevel() < table.Level) { continue; } } //判断职业 if (table.Career > 0) { if ((table.Career & (1 << PlayerDataManager.Instance.GetRoleId())) <= 0) { continue; } } if (ObjManager.Instance.MyPlayer.Dead) { return(false); } if (table.GuideRule == 3) { continue; } if (2 == table.GuideRule) { if (-1 != table.UIID) { GameUtils.GotoUiTab(table.UIID, 0); } } else { if (-1 == table.StepId) { //0表示不显示新功能开启动画 return(false); } UIManager.Instance.OpenDefaultFrame(); EventDispatcher.Instance.DispatchEvent(new Close_UI_Event(UIConfig.MessageBox)); //开启该新功能 EventDispatcher.Instance.DispatchEvent(new UIEvent_OpenNewFunctionEvent(table.Name, () => { //StartCoroutine(StartGuideCoroutine(table.Flag)); UIManager.Instance.ShowUI(UIConfig.MainUI); GuideManager.Instance.StartGuide(table.StepId); //StartGuide(table.Flag); })); } //屏蔽输入 //EventDispatcher.Instance.DispatchEvent(new UI_BlockMainUIInputEvent(2)); //延迟开启引导 //StartCoroutine(StartGuideCoroutine(table.Flag)); return(true); } } return(false); }
public void OnClickAchievement() { m_State = eMissionState.Achievement; InitItem(); }
public void OnClickWeekly() { m_State = eMissionState.Weekly; InitItem(); }
public void OnClickDaily() { m_State = eMissionState.Daily; InitItem(); }