Exemple #1
0
        /// <summary>
        /// Retrieves the requested quest step.
        /// </summary>
        /// <param name="questStepKey">Unique identifier of the quest step.</param>
        /// <returns>An awaitable task that returns the requested <see cref="QuestStepDto"/>.</returns>
        public async Task <QuestStepDto> GetQuestStepAsync(Guid questStepKey)
        {
            // Get quest step
            var questStep = await questRepository.GetQuestStepAsync(questStepKey);

            // Get quest progression
            var hasQuestProgression = await questRepository.HasQuestProgresssionAsync(questStep.QuestKey);

            // Add progression to dto
            var retval = questStep.ToDto();

            retval.CanReorder = !hasQuestProgression;
            return(retval);
        }