示例#1
0
    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;
        }
    }
示例#2
0
        //当任务改变时,注意都是瞬间动作
        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);
        }
示例#3
0
        //当任务改变时,注意都是瞬间动作
        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);
        }
示例#4
0
 public void OnClickAchievement()
 {
     m_State = eMissionState.Achievement;
     InitItem();
 }
示例#5
0
 public void OnClickWeekly()
 {
     m_State = eMissionState.Weekly;
     InitItem();
 }
示例#6
0
 public void OnClickDaily()
 {
     m_State = eMissionState.Daily;
     InitItem();
 }