Ejemplo n.º 1
0
        public bool Run(params object[] args)
        {
            NWPlaceable container = Object.OBJECT_SELF;

            container.IsUseable = false;

            NWPlayer      oPC     = (_.GetLastOpenedBy());
            int           questID = container.GetLocalInt("QUEST_ID");
            PCQuestStatus status  = DataService.Single <PCQuestStatus>(x => x.PlayerID == oPC.GlobalID && x.QuestID == questID);

            oPC.FloatingText("Please place the items you would like to turn in for this quest into the container. If you want to cancel this process, move away from the container.");

            string text = "Required Items: \n\n";

            var itemProgress = DataService.Where <PCQuestItemProgress>(x => x.PCQuestStatusID == status.ID);

            foreach (PCQuestItemProgress item in itemProgress)
            {
                ItemVO tempItemModel = QuestService.GetTempItemInformation(item.Resref, item.Remaining);
                text += tempItemModel.Quantity + "x " + tempItemModel.Name + "\n";
            }

            oPC.SendMessage(text);
            return(true);
        }
Ejemplo n.º 2
0
        public QuestItemReward(string resref, int quantity, bool isSelectable)
        {
            _resref      = resref;
            _quantity    = quantity;
            IsSelectable = isSelectable;

            var itemVO = QuestService.GetTempItemInformation(resref, quantity);

            if (_quantity > 1)
            {
                MenuName = _quantity + "x " + itemVO.Name;
            }
            else
            {
                MenuName = itemVO.Name;
            }
        }
Ejemplo n.º 3
0
        public void Main()
        {
            NWPlaceable container = _.OBJECT_SELF;

            container.IsUseable = false;

            NWPlayer      oPC     = (_.GetLastOpenedBy());
            int           questID = container.GetLocalInt("QUEST_ID");
            PCQuestStatus status  = DataService.PCQuestStatus.GetByPlayerAndQuestID(oPC.GlobalID, questID);

            oPC.FloatingText("Please place the items you would like to turn in for this quest into the container. If you want to cancel this process, move away from the container.");

            string text = "Required Items: \n\n";

            var itemProgress = DataService.PCQuestItemProgress.GetAllByPCQuestStatusID(status.ID);

            foreach (PCQuestItemProgress item in itemProgress)
            {
                ItemVO tempItemModel = QuestService.GetTempItemInformation(item.Resref, item.Remaining);
                text += tempItemModel.Quantity + "x " + tempItemModel.Name + "\n";
            }

            oPC.SendMessage(text);
        }
Ejemplo n.º 4
0
        public override void Initialize()
        {
            int questID = GetPC().GetLocalInt("QST_REWARD_SELECTION_QUEST_ID");

            GetPC().DeleteLocalInt("QST_REWARD_SELECTION_QUEST_ID");
            Quest quest       = QuestService.GetQuestByID(questID);
            var   rewardItems = DataService.QuestRewardItem.GetAllByQuestID(quest.ID).ToList();

            Model model = GetDialogCustomData <Model>();

            model.QuestID = questID;

            foreach (QuestRewardItem reward in rewardItems)
            {
                ItemVO tempItem   = QuestService.GetTempItemInformation(reward.Resref, reward.Quantity);
                string rewardName = tempItem.Name;
                if (tempItem.Quantity > 1)
                {
                    rewardName += " x" + tempItem.Quantity;
                }

                AddResponseToPage("MainPage", rewardName, true, tempItem);
            }
        }