2022-07-04 11:17:39 +00:00
|
|
|
|
using System;
|
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
|
|
namespace MMO
|
|
|
|
|
|
{
|
|
|
|
|
|
public class MMOUIGuide : MMOUIBase
|
|
|
|
|
|
{
|
|
|
|
|
|
public Action DelGuideOver;
|
|
|
|
|
|
|
|
|
|
|
|
private List<MMOGuideStep> mSteps;
|
|
|
|
|
|
private int mCurrentIndex = 0;
|
|
|
|
|
|
|
|
|
|
|
|
protected override void OnInit()
|
|
|
|
|
|
{
|
|
|
|
|
|
base.OnInit();
|
|
|
|
|
|
|
|
|
|
|
|
mSteps = MMOUIManager.GetChildList<MMOGuideStep>(transform);
|
|
|
|
|
|
for (int i = 0; i < mSteps.Count; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
mSteps[i].DelExcute = OnStepExcute;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public override void OnOpen()
|
|
|
|
|
|
{
|
|
|
|
|
|
base.OnOpen();
|
|
|
|
|
|
|
2022-09-09 14:35:49 +00:00
|
|
|
|
mCurrentIndex = 0;
|
|
|
|
|
|
|
|
|
|
|
|
ShowStep();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void OnStepExcute()
|
|
|
|
|
|
{
|
|
|
|
|
|
int tExcuteIndex = mCurrentIndex;
|
|
|
|
|
|
mSteps[mCurrentIndex].gameObject.SetActive(false);
|
|
|
|
|
|
mCurrentIndex++;
|
|
|
|
|
|
if (mCurrentIndex < mSteps.Count)
|
|
|
|
|
|
{
|
2022-09-09 14:35:49 +00:00
|
|
|
|
ShowStep();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
MMOUserData.Instance.FinishGuide();
|
|
|
|
|
|
Close();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
ExcuteByIndex(tExcuteIndex);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-09-09 14:35:49 +00:00
|
|
|
|
private void ShowStep()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (mSteps[mCurrentIndex].DelayTime > 0)
|
|
|
|
|
|
{
|
|
|
|
|
|
Invoke("DelayShowStep", mSteps[mCurrentIndex].DelayTime);
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
DelayShowStep();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void DelayShowStep()
|
|
|
|
|
|
{
|
|
|
|
|
|
mSteps[mCurrentIndex].gameObject.SetActive(true);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-07-04 11:17:39 +00:00
|
|
|
|
private void ExcuteByIndex(int pIndex)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (pIndex == 0)
|
|
|
|
|
|
{
|
2022-09-09 14:35:49 +00:00
|
|
|
|
MMOModule.Instance.Enter(MMOUserData.Instance.Diamond, MMOUserData.Instance.GameLevel);
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
|
|
|
|
|
else if (pIndex == 1)
|
|
|
|
|
|
{
|
2022-09-09 14:35:49 +00:00
|
|
|
|
MMOModule.Instance.UIMgr.GetUI<MMOUIMain>().OpenDaily();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
|
|
|
|
|
else if (pIndex == 2)
|
|
|
|
|
|
{
|
2022-09-09 14:35:49 +00:00
|
|
|
|
MMOModule.Instance.UIMgr.GetUI<MMOUIDailyClaim>().Claim();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
2022-09-09 14:35:49 +00:00
|
|
|
|
else if (pIndex == 4)
|
2022-07-04 11:17:39 +00:00
|
|
|
|
{
|
|
|
|
|
|
MMOModule.Instance.UIMgr.CloseUI<MMOUIMain>();
|
2022-09-09 14:35:49 +00:00
|
|
|
|
MMOModule.Instance.UIMgr.CloseUI<MMOUITop>();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
}
|
2022-09-09 14:35:49 +00:00
|
|
|
|
else if (pIndex == 5)
|
2022-07-04 11:17:39 +00:00
|
|
|
|
{
|
2022-09-09 14:35:49 +00:00
|
|
|
|
Close();
|
2022-07-04 11:17:39 +00:00
|
|
|
|
DelGuideOver?.Invoke();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|