public void InitOutTutorial(TutorialSupport tutoObj) { if (IsHidePanel) { Show(null); } StopAllCoroutines(); TutoSupport = tutoObj; CurSortId = tutoObj.SortId + 1; Tutorial = _LowDataMgr.instance.GetLowDataFirstMainTutorial((uint)CurType, (byte)tutoObj.SortId);//무조건 첫번째것부터 뽑아온다 if (TutoSupport != null) { TargetPanel = TutoSupport.transform; BlockObj.SetActive(Tutorial.ProgressType == 0); //ReturnType = Tutorial.ProgressType == 0 ? PrevReturnType.Not : PrevReturnType.Close; DefaultData(); } }
void OnDisable() { if (!UIMgr.instance.IsActiveTutorial || !IsEnable || IsOnClick || SceneManager.instance._CurTutorial != TutoType || SceneManager.instance.IsClearTutorial(TutoType)) { return; } Quest.MainTutorialInfo info = _LowDataMgr.instance.GetLowDataFirstMainTutorial((uint)TutoType, (byte)SortId); if (info.ProgressType != 1) { return; } SceneManager.instance.CurTutorial = TutoType;//다음으로 넘김. UIBasePanel basePanel = UIMgr.GetUIBasePanel("UIPopup/TutorialPopup"); if (basePanel != null && !basePanel.IsHidePanel) { basePanel.Hide(); } }
public virtual bool OnSubTutorial() { if (SceneManager.instance.CurTutorial == TutorialType.ALL_CLEAR) { return(false); } if (TutoSupportList == null || TutoSupportList.Count <= 0) { TutoSupportList = UIHelper.FindComponents <TutorialSupport>(transform); for (int i = 0; i < TutoSupportList.Count; i++) { if (TutoSupportList[i].NextTuto != null) { continue; } for (int j = 0; j < TutoSupportList.Count; j++) { if (TutoSupportList[j].TutoType != TutoSupportList[i].TutoType) { continue; } else if (TutoSupportList[j].SortId != TutoSupportList[i].SortId + 1) { continue; } TutoSupportList[i].NextTuto = TutoSupportList[j]; break; } } } if (TutoSupportList.Count <= 0) { return(false); } int tutoType = 1; int arr = 0; while (tutoType < (int)TutorialType.MAX) { if (TutoSupportList.Count <= arr) { arr = 0; ++tutoType; } TutorialSupport support = TutoSupportList[arr++]; if (support.TutoType != SceneManager.instance.CurTutorial) { if (!support.ChangeTutoType() || support.TutoType != SceneManager.instance.CurTutorial) { continue; } } Quest.MainTutorialInfo tutoLowData = _LowDataMgr.instance.GetLowDataFirstMainTutorial((uint)support.TutoType, 1); if (tutoLowData == null || NetData.instance.UserLevel < tutoLowData.OpenLevel) { continue; } if (support.OnTutoSupportStart()) { return(true); } } return(false); }
void NextGuide() { //Debug.LogError(string.Format("type={0}, ID={1}, count={2}", uiMgr.CurTutorial, Tutorial != null ? Tutorial.ID : 0, SubTalkList.Count)); if (Tutorial.GuideCount <= GuideTalkCount) { for (int i = 0; i < GuideObj.Length; i++) { GuideObj[i].SetActive(false); } //AniRunTime = -1; if (TownState.TownActive) { if (0 < Tutorial.NextTutorial) { Quest.MainTutorialInfo tutoInfo = _LowDataMgr.instance.GetLowDataMainTutorial(Tutorial.NextTutorial); } else { SceneManager.instance.CurTutorial = CurType; TutorialType nextType = CurType + 1; StartNextTutorial(nextType); } } return; } string talk = null; switch (GuideTalkCount) { case 0: talk = Tutorial.GuideText1; break; case 1: talk = Tutorial.GuideText2; break; case 2: talk = Tutorial.GuideText3; break; case 3: talk = Tutorial.GuideText4; break; case 4: talk = Tutorial.GuideText5; break; } if (talk.Contains("\\\\\n")) { talk = talk.Replace("\\\\\n", "\n"); } else if (talk.Contains("\\\\n")) { talk = talk.Replace("\\\\n", "\n"); } else if (talk.Contains("\\\n")) { talk = talk.Replace("\\\n", "\n"); } else if (talk.Contains("\\n")) { talk = talk.Replace("\\n", "\n"); } if (talk.Contains("{0}")) { uint id = 0; uint charId = NetData.instance.GetUserInfo()._userCharIndex; if (charId == 13000) { id = 672; } else { id = 671; } talk = string.Format(talk, _LowDataMgr.instance.GetStringCommon(id)); } GuideObj[0].SetActive(Tutorial.GuideType == 0); //우 GuideObj[1].SetActive(Tutorial.GuideType == 1); //좌 GuideText[Tutorial.GuideType].text = talk; ++GuideTalkCount; TouchEvent.collider.enabled = GuideTalkCount < Tutorial.GuideCount; if (Tutorial.GuideCount <= GuideTalkCount) { SetTarget(); } }