예제 #1
0
    private void BindReference()
    {
        Transform root = this.transform;

        for (int i = 0; i < GameConst.COUNT_QUEST; i++)
        {
            var button = transform.Find(String.Format("Quests/BtnQuest ({0})", i + 1)).GetComponent <ExButton>();
            var title  = transform.Find(String.Format("Quests/BtnQuest ({0})/Text", i + 1)).GetComponent <Text>();
            m_QuestButtons.Add(new QuestButton
            {
                index  = i,
                botton = button,
                title  = title,
            });
        }
        m_ViewInformation = root.Find("QuestInformation").GetComponent <QuestInfoView>();
        for (int i = 1; i <= 2; i++)
        {
            Text txt = root.Find(String.Format("PlayerQuests/Quest ({0})/Text", i)).GetComponent <Text>();
            m_TxtPlayerQuests.Add(txt);
        }
    }
예제 #2
0
        public async Task <ActionResult <QuestInfoView> > Get(int id)
        {
            Quest quest = await _db.Quests
                          .Include(x => x.QuestGiver)
                          .Include(x => x.QuestEnding)
                          .Include(x => x.QuestChains)
                          .ThenInclude(x => x.Chain)
                          .Include(x => x.QuestPlayers)
                          .ThenInclude(x => x.Player)
                          .Include(x => x.QuestItems)
                          .ThenInclude(x => x.Item)
                          .Include(x => x.QuestItems)
                          .ThenInclude(x => x.StartingNpc)
                          .FirstOrDefaultAsync(x => x.Id == id);

            if (quest == null)
            {
                return(NotFound());
            }

            var questView = new QuestInfoView
            {
                Quest = new Quest
                {
                    AmountToPrint    = quest.AmountToPrint,
                    ArtisticTextLink = quest.ArtisticTextLink,
                    Complexity       = quest.Complexity,
                    Description      = quest.Description,
                    Grade            = quest.Grade,
                    Id = quest.Id,
                    IsArtisticTextReady = quest.IsArtisticTextReady,
                    Name = quest.Name,
                    TechnicalDescriptionLink    = quest.TechnicalDescriptionLink,
                    IsTechnicalDescriptionReady = quest.IsTechnicalDescriptionReady,
                    IsPrinted     = quest.IsPrinted,
                    QuestEndingId = quest.QuestEndingId,
                    QuestGiverId  = quest.QuestGiverId,
                },
                QuestGiver = new Npc
                {
                    Description = quest.QuestGiver.Description,
                    Id          = quest.QuestGiver.Id,
                    Name        = quest.QuestGiver.Name,
                },
                QuestEnding = new Npc
                {
                    Description = quest.QuestEnding.Description,
                    Id          = quest.QuestEnding.Id,
                    Name        = quest.QuestEnding.Name,
                },
                Chains = quest.QuestChains.Select(x => x.Chain).Select(c => new Chain
                {
                    Id          = c.Id,
                    Name        = c.Name,
                    Description = c.Description,
                }).ToList(),
                Players = quest.QuestPlayers.Select(x => x.Player).Select(p => new Player
                {
                    Id          = p.Id,
                    Description = p.Description,
                    Name        = p.Name,
                }).ToList(),
                QuestItems = quest.QuestItems.Select(x => new QuestItem
                {
                    AmountNeeded             = x.AmountNeeded,
                    Id                       = x.Id,
                    IsReady                  = x.IsReady,
                    IsTechnicalDocumentReady = x.IsTechnicalDocumentReady,
                    TechnicalDocumentForNpc  = x.TechnicalDocumentForNpc,
                    StartingNpc              = new Npc
                    {
                        Id   = x.StartingNpcId,
                        Name = x.StartingNpc.Name,
                    },
                    Item = new Item
                    {
                        Id          = x.ItemId,
                        Name        = x.Item.Name,
                        PictureLink = x.Item.PictureLink,
                    },
                    Quest = new Quest
                    {
                        Id   = x.QuestId,
                        Name = x.Quest.Name,
                    },
                }).ToList(),
            };

            return(new ObjectResult(questView));
        }