/// <summary> /// 下一段对话 /// </summary> public virtual TDBaseTalkFragment Next() { if (IsLockNextTalk) { return(null); } if (!IsStartTalk) { return(null); } if (IsInOption() && CurSelectOption.IsInv()) { return(CurTalkFragment()); } CurTalkIndex++; if (IsHave()) { var ret = CurTalkFragment(); Callback_OnNext?.Invoke(CurData, ret, CurTalkIndex); Callback_OnTalk?.Invoke(CurData, ret, CurTalkIndex); OnTalk(CurData, ret, CurTalkIndex); return(ret); } else { Stop(); return(null); } }
public void Next() { Index++; if (Index >= Group.Count) { Callback_OnEnd?.Invoke(); Index = -1; return; } Callback_OnNext?.Invoke(Group[Index], Index); }