コード例 #1
0
ファイル: Quest.cs プロジェクト: Mixi59/Stump
        public Quest(Character owner, QuestStepTemplate step)
        {
            m_record = new QuestRecord()
            {
                Finished = false,
                QuestId  = step.QuestId,
                StepId   = step.Id,
            };

            CurrentStep = new QuestStep(this, step);
        }
コード例 #2
0
ファイル: QuestStep.cs プロジェクト: Mixi59/Stump
        public QuestStep(Quest quest, QuestStepTemplate template)
        {
            Quest      = quest;
            Template   = template;
            Objectives = template.Objectives.Select(x => x.GenerateObjective()).ToArray();

            foreach (var objective in Objectives)
            {
                if (!objective.Finished)
                {
                    objective.Completed += OnObjectiveCompleted;
                    objective.EnableObjective();
                }
            }
        }
コード例 #3
0
ファイル: Quest.cs プロジェクト: Mixi59/Stump
 public void ChangeQuestStep(QuestStepTemplate step)
 {
     CurrentStep?.CancelQuest();
     CurrentStep = new QuestStep(this, step);
 }