public QuestInformation(EzQuestModel model, EzCompletedQuestList currentCompletedQuestList) { Id = model.QuestModelId; Name = model.Name; ScreenName = model.Metadata; var action = QuestController.GetConsumeAction <ConsumeStaminaByUserIdRequest>( model, "Gs2Stamina:ConsumeStaminaByUserId" ); if (action != null) { consumeStamina = action.consumeValue; } if (currentCompletedQuestList == null) { currentCompletedQuestList = new EzCompletedQuestList { CompleteQuestNames = new List <string>() }; } var premiseQuestNames = new HashSet <string>(model.PremiseQuestNames); premiseQuestNames.ExceptWith(currentCompletedQuestList.CompleteQuestNames); open = premiseQuestNames.Count == 0; completed = currentCompletedQuestList.CompleteQuestNames.Contains(model.Name); }
public void Initialize( EzQuestModel questModel ) { _questModel = questModel; _quest = new Quest(questModel); }
public EzGetQuestResult( GetQuestModelResult result ) { if (result.item != null) { Item = new EzQuestModel(result.item); } }
/// <summary> /// /// </summary> /// <param name="quest"></param> /// <param name="action"></param> /// <typeparam name="T"></typeparam> /// <returns></returns> public static T GetConsumeAction <T>( EzQuestModel quest, string action ) { var item = quest.ConsumeActions.FirstOrDefault(consumeAction => consumeAction.Action == action); if (item == null) { return(default);
public bool SelectQuest(EzQuestModel quest) { if (_state == State.SelectQuest) { selectQuest = quest; _animator.SetTrigger(Trigger.SelectQuest.ToString()); return(true); } return(false); }
public void OnStartQuest(EzQuestModel quest, EzProgress progress) { Debug.Log("QuestDirector::OnStartQuest"); _currentProgress = progress; questMain.Initialize( new Quest(quest), progress ); questMain.onComplete.AddListener(OnCompleteQuest); questMain.onFailure.AddListener(OnFailureQuest); questMain.gameObject.SetActive(true); }
public EzGetProgressResult( GetProgressResult result ) { if (result.item != null) { Item = new EzProgress(result.item); } if (result.questGroup != null) { QuestGroup = new EzQuestGroupModel(result.questGroup); } if (result.quest != null) { Quest = new EzQuestModel(result.quest); } }
public void OnChoiceQuest(EzQuestModel questModel) { Debug.Log("QuestDirector::OnChoiceQuest"); _currentQuest = questModel; StartCoroutine( QuestController.StartQuest( _client, _session, _questSetting.questNamespaceName, _questSetting.questGroupName, questModel.Name, _questSetting.onIssueStartStampSheet, _questSetting.onError ) ); }
/// <summary> /// クエストを取得 /// </summary> /// <returns></returns> public IEnumerator CheckStaminaTask(EzQuestModel quest) { if (_animator) { { AsyncResult <EzGetStaminaResult> result = null; yield return(staminaController.GetStamina( r => result = r )); if (result.Error != null) { _animator.SetTrigger(Trigger.GetStaminaFailed.ToString()); yield break; } var action = QuestController.GetConsumeAction <ConsumeStaminaByUserIdRequest>( quest, "Gs2Stamina:ConsumeStaminaByUserId" ); if (action != null) { if (result.Result.Item.Value < action.ConsumeValue) { GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().onFewStamina.Invoke(); _animator.SetTrigger(Trigger.CheckStaminaFailed.ToString()); yield break; } } } GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().selectedQuestGroup = selectQuestGroup; GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().selectedQuest = selectQuest; GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().progress = null; GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().onStartQuest.Invoke( selectQuestGroup, selectQuest ); _animator.SetTrigger(Trigger.CheckStaminaSucceed.ToString()); } }
public void OnEndQuest(EzQuestModel quest, EzProgress progress) { Debug.Log("QuestDirector::OnEndQuest"); }
public void OnClickChoiceQuestButton(EzQuestModel quest) { onChoiceQuest.Invoke(quest); gameObject.SetActive(false); }
/// <summary> /// 選択する /// </summary> public void ClickToSelect(EzQuestModel quest) { _stateMachine.SelectQuest(quest); }
private void OnStartQuest(EzQuestGroupModel questGroup, EzQuestModel quest) { GameObject.Find("Gs2QuestInternalSetting").GetComponent <Gs2QuestInternalSetting>().onCloseSelectQuest.Invoke( this ); }
public Quest(EzQuestModel item) { _item = item; }