/// <summary> /// 현재 단계 완료. /// 모든 단계 완료 여부 리턴. /// </summary> private bool CompleteProgressProcess() { // 모든 단계가 완료됨. var isCompleteAllProgress = _progressIndex >= QuestProgresses.Count - 1; if (!isCompleteAllProgress) { _subscribeQuestModule.OnNext(this); return(false); } NowProgressModel.CompleteProgress(); QuestState = QuestState.WaitForComplete; _subscribeQuestModule.OnNext(this); return(true); }
public bool CompleteQuest() { if (QuestState != QuestState.WaitForComplete) { return(false); } QuestState = QuestState.Complete; NowProgressModel.CompleteProgress(); _onCompleteQuestAction.CallSafe(); if (!_iterateQuest) { _subscribeQuestModule.DisposeSafe(); _onFinishQuestAction.CallSafe(); return(true); } IterationQuest(); return(QuestState == QuestState.WaitForComplete); }