public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            RequiredItem = await _context.RequiredItem
                           .Include(r => r.ItemType).FirstOrDefaultAsync(m => m.ID == id);

            if (RequiredItem == null)
            {
                return(NotFound());
            }
            if (RequiredItem.Attachment == null)
            {
                return(NotFound());
            }
            ContentDisposition cd = new ContentDisposition
            {
                FileName = RequiredItem.AttachmentFileName,
                Inline   = true
            };

            Response.Headers.Add("Content-Disposition", cd.ToString());
            return(File(RequiredItem.Attachment, RequiredItem.AttachmentContentType));
        }
    void CreateRequiredItemIndicator(RequiredItem requiredItem)
    {
        var createImage = Instantiate(img) as GameObject;

        createImage.transform.position = new  Vector3(createImage.transform.position.x + offset, createImage.transform.position.y, 0f);
        offset += 30;
        createImage.transform.SetParent(Canvas.transform, false);
        requiredItem.image_obj = createImage.GetComponent <Image>();
    }
Beispiel #3
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }
            RequiredItem originalItem = await _context.RequiredItem.FirstOrDefaultAsync(m => m.ID == RequiredItem.ID);

            if (originalItem != null && Request.Form.Files.Count == 0)
            {
                RequiredItem.Attachment            = originalItem.Attachment;
                RequiredItem.AttachmentFileName    = originalItem.AttachmentFileName;
                RequiredItem.AttachmentContentType = originalItem.AttachmentContentType;
            }
            _context.Entry(originalItem).State = EntityState.Detached;  // detach from original item so you can attach to new one
            if (Request.Form.Files.Count > 0)
            {
                Stream s = Request.Form.Files[0].OpenReadStream();
                if (s.Length < 20 * 1024 * 1024)
                {
                    byte[] buffer = new byte[s.Length];
                    s.Read(buffer, 0, (int)s.Length);
                    s.Close();
                    RequiredItem.Attachment            = buffer;
                    RequiredItem.AttachmentFileName    = Request.Form.Files[0].FileName;
                    RequiredItem.AttachmentContentType = Request.Form.Files[0].ContentType;
                }
                else
                {
                    s.Close();
                    ModelState.AddModelError(string.Empty, "The attachment is too large.  The maximum size is 20MB.");
                    return(Page());
                }
            }

            _context.Attach(RequiredItem).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RequiredItemExists(RequiredItem.ID))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(RedirectToPage("../AssessmentTypes/Details", new { id = RequiredItem.AssessmentTypeID }));
        }
Beispiel #4
0
        public override ModelTreeNode AddItem()
        {
            var item = new RequiredItem();
            var node = new RequiredItemTreeNode()
            {
                Model = item
            };

            Nodes.Add(node);

            return(node);
        }
 public IActionResult OnGet(int?AssessmentTypeID)
 {
     if (AssessmentTypeID == null)
     {
         return(NotFound());
     }
     ViewData["ItemTypeID"]       = new SelectList(_context.ItemType, "ID", "Name");
     ViewData["AssessmentTypeID"] = (int)AssessmentTypeID;
     RequiredItem                  = new RequiredItem();
     RequiredItem.ItemTypeID       = 1;
     RequiredItem.AssessmentTypeID = (int)AssessmentTypeID;
     return(Page());
 }
        public bool TestForItemClass(RequiredItem name)
        {
            // check if ANY item from a given special class is currently equipped as active
            // possible arguments: RequiredItem.Sword, RequiredItem.Axe, RequiredItem.Spear, RequiredItem.Staff
            switch (name)
            {
            case RequiredItem.None:
                return(true);

            case RequiredItem.Sword:
                foreach (Item item in activeItems)
                {
                    if (item.IsSword)
                    {
                        return(true);
                    }
                }
                break;

            case RequiredItem.Axe:
                foreach (Item item in activeItems)
                {
                    if (item.IsAxe)
                    {
                        return(true);
                    }
                }
                break;

            case RequiredItem.Spear:
                foreach (Item item in activeItems)
                {
                    if (item.IsSpear)
                    {
                        return(true);
                    }
                }
                break;

            case RequiredItem.Staff:
                foreach (Item item in activeItems)
                {
                    if (item.IsStaff)
                    {
                        return(true);
                    }
                }
                break;
            }
            return(false);
        }
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            RequiredItem = await _context.RequiredItem
                           .Include(r => r.ItemType).FirstOrDefaultAsync(m => m.ID == id);

            if (RequiredItem == null)
            {
                return(NotFound());
            }
            ViewData["AssessmentTypeID"] = RequiredItem.AssessmentTypeID;
            return(Page());
        }
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            RequiredItem = await _context.RequiredItem.FindAsync(id);

            int parentID = RequiredItem.AssessmentTypeID;

            if (RequiredItem != null)
            {
                _context.RequiredItem.Remove(RequiredItem);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("../AssessmentTypes/Details", new { id = parentID }));
        }
 public override bool ShouldCreateInDb()
 {
     return((RequiredItem != null && ExistingItem == null) ||
            (RequiredItem != null && !RequiredItem.Equals(ExistingItem)));
 }
Beispiel #10
0
 public void AddRequiredItem(RequiredItem item)
 {
     requiredItems.Add(item);
 }
Beispiel #11
0
    public virtual void OnCollisionEnter2D(Collision2D collision)
    {
        int   questIndex = 0;
        Quest quest      = giveableQuests[currentQuest];

        if (CheckDependentQuests(collision.gameObject.GetComponent <CiscoTesting>(), quest, questIndex))
        {
            //Enable first dialog talk
            if (collision.gameObject.CompareTag("Player") && quest.questData.questState < QuestState.completed)
            {
                characterDialogs[currentQuest].EnableDialog();
                if (!gaveQuest)
                {
                    for (int i = 0; i < giveableQuests.Count; i++)
                    {
                        GiveQuest(collision.gameObject.GetComponent <CiscoTesting>(), currentQuest);
                    }
                }
            }
            //Quest is completed and we need to go to the npc to end the quest
            else
            {
                for (int i = 0; i < giveableQuests.Count; i++)
                {
                    if (quest.questData.questState == QuestState.completed)
                    {
                        //Complete the quest and enable the quest completion dialog
                        collision.gameObject.GetComponent <PlayerQuestSystem>().SetQuestStatus(quest.questID, QuestState.done);
                        gaveQuest = false;
                        currentQuest++;
                        dialogSystemController.GetComponent <AudioSource>().Play();

                        if (quest.reward != null)
                        {
                            if (collision.gameObject.GetComponent <CiscoTesting>().items.ContainsKey(quest.reward))
                            {
                                collision.gameObject.GetComponent <CiscoTesting>().items[quest.reward]++;
                            }
                            else
                            {
                                collision.gameObject.GetComponent <CiscoTesting>().items.Add(quest.reward, 1);
                            }
                            Debug.Log("Gave a reward of " + quest.reward.Name);
                        }
                        //normal thanks dialog
                        afterQuestDialogs[currentQuest - 1].EnableDialog();

                        for (int j = 0; j < quest.questData.requiredItems.Count; j++)
                        {
                            RequiredItem item = quest.questData.requiredItems[j];
                            collision.gameObject.GetComponent <CiscoTesting>().RemoveItems(item.item, item.requiredAmount);
                        }
                        Debug.Log("Finished Quest");
                    }
                }
            }
        }
        else
        {
            cantGiveQuestDialog.EnableDialog();
        }
    }