Exemple #1
0
        /// <summary>
        /// Converts the domain model into an entity.
        /// </summary>
        /// <returns>The entity.</returns>
        /// <param name="quest">Quest.</param>
        internal static QuestEntity ToEntity(this Quest quest)
        {
            QuestEntity questEntity = new QuestEntity
            {
                Id   = quest.Id,
                Name = quest.Name
            };

            return(questEntity);
        }
 public void Initialize2(int questIndex, GameManager gm)
 {
     m_inturrptingCount = 0;
     m_questComplete = false;
     m_questIdx = questIndex;
     m_events = new List<QuestEntity>();
     m_gm = gm;
     _LoadQuest(questIndex);
     m_curEntity = null;
 }
Exemple #3
0
        /// <summary>
        /// Converts the entity into a domain model.
        /// </summary>
        /// <returns>The domain model.</returns>
        /// <param name="questEntity">Quest entity.</param>
        internal static Quest ToDomainModel(this QuestEntity questEntity)
        {
            Quest quest = new Quest
            {
                Id   = questEntity.Id,
                Name = questEntity.Name,
            };

            return(quest);
        }
Exemple #4
0
        public static void EnsurePopulated(IApplicationBuilder app)
        {
            QuestDbContext context = (QuestDbContext)app.ApplicationServices.GetService(typeof(QuestDbContext));

            context.Database.Migrate();

            if (!context.Companies.Any())
            {
                CompanyEntity[] companies = new CompanyEntity[]
                {
                    new CompanyEntity {
                        Name = "FearCorporation", Logo = "fear.jpg"
                    },
                    new CompanyEntity {
                        Name = "BlackBox", Logo = "box.jpg"
                    },
                };
                context.AddRange(companies);

                QuestEntity[] quests = new QuestEntity[]
                {
                    new QuestEntity {
                        Name        = "Escape from house", Company = companies[0], Address = "Dubno", Email = "*****@*****.**",
                        Description = "Very scary", FearLevel = 5, HardLevel = 5, MaxPlayers = 10, MinAge = 21, MinPlayers = 3, Phone = "066-85-26-406",
                        Raiting     = 8.5, WalkTime = TimeSpan.FromMinutes(180)
                    },
                    new QuestEntity {
                        Name        = "Find predmets in house", Company = companies[1], Address = "Rivne", Email = "*****@*****.**",
                        Description = "Find predmets", FearLevel = 1, HardLevel = 3, MaxPlayers = 5, MinAge = 14, MinPlayers = 1, Phone = "095-32-21-109",
                        Raiting     = 9.2, WalkTime = TimeSpan.FromMinutes(160)
                    },
                };
                context.AddRange(quests);

                ImageEntity[] images = new ImageEntity[]
                {
                    new ImageEntity {
                        Name = "Img1", Path = "1.jpg", Quest = quests[0]
                    },
                    new ImageEntity {
                        Name = "Img2", Path = "2.jpg", Quest = quests[0]
                    },
                    new ImageEntity {
                        Name = "Img3", Path = "3.jpg", Quest = quests[1]
                    },
                    new ImageEntity {
                        Name = "Img4", Path = "4.jpg", Quest = quests[1]
                    },
                };
                context.AddRange(images);
                context.SaveChanges();
            }
        }
Exemple #5
0
 public CompleteQuestEvent(PlayerEntity player, QuestEntity quest)
 {
     Player = player;
     Quest  = quest;
 }
    public bool ProceedEvent()
    {
        if( m_questComplete ) {
            LocalGameSession.GetSession().MarkQuestComplete(m_questIdx);
            m_gm.ExitGame();
            return false;
        }

        else {
            // no appropriate event found. try find some...
            if(m_curEntity == null) {
                m_curEntity = _FindNextAvailableEvent();
            }
            // if there is something found or ongoing, do it.
            if( m_curEntity != null ) {
                // if event is complete, test if quest is complete
                // if not find next one
                if( m_curEntity.IsCompleted ) {
                    if( m_curEntity.isEndEvent ) {
                        m_questComplete = true;
                    }
                    m_curEntity = null;
                    return false;
                } else {
                    m_curEntity.DoEvent();
                    return false;
                }
            }
        }

        return true;
    }
Exemple #7
0
        public async Task Delete(QuestEntity quest)
        {
            await _questRepository.Remove(quest);

            await _bus.RaiseEvent(new EntityDeletedEvent <QuestEntity>(quest)).ConfigureAwait(false);
        }
Exemple #8
0
        public async Task Add(QuestEntity quest)
        {
            await _questRepository.Add(quest);

            await _bus.RaiseEvent(new EntityInsertedEvent <QuestEntity>(quest)).ConfigureAwait(false);
        }
 public bool TryFindQuestForEntity(long entityId, out QuestEntity questEntity)
 {
     return(_questTracker.TryFindQuestForEntity(entityId, out questEntity));
 }