private static void OnLogin(LoginEventArgs e)
        {
            if (e.Mobile is PlayerMobile pm && Gareth.CheckQuestStatus(pm, HumilityQuestStatus.RewardPending))
            {
                var quest = new HumilityProofGump
                {
                    Owner   = pm,
                    Quester = null
                };

                pm.SendGump(new MondainQuestGump(quest));
            }
        }
        public override void GiveRewards()
        {
            base.GiveRewards();

            Gareth.AddQuestStatus(Owner, HumilityQuestStatus.RewardPending);

            var quest = new HumilityProofGump
            {
                Owner   = Owner,
                Quester = null
            };

            Owner.SendGump(new MondainQuestGump(quest));
        }
示例#3
0
        public override void OnTalk(PlayerMobile player)
        {
            if (TheQuestionsQuest.CooldownTable.ContainsKey(player))
            {
                SayTo(player, 1075787, 1150); // I feel that thou hast yet more to learn about Humility... Please ponder these things further, and visit me again on the 'morrow.
                return;
            }

            if (QuestHelper.GetQuest(player, typeof(TheQuestionsQuest)) is TheQuestionsQuest q && !q.Completed)
            {
                SayTo(player, 1080107, 0x3B2); // I'm sorry, I have nothing for you at this time.
                return;
            }

            if (CheckQuestStatus(player, HumilityQuestStatus.RewardPending))
            {
                return;
            }

            if (CheckQuestStatus(player, HumilityQuestStatus.RewardRefused))
            {
                var quest = new HumilityProofGump
                {
                    Owner   = player,
                    Quester = this
                };

                player.SendGump(new MondainQuestGump(quest, MondainQuestGump.Section.Complete, false, true));

                return;
            }

            if (CheckQuestStatus(player, HumilityQuestStatus.RewardAccepted))
            {
                SayTo(player, 1075898, 0x3B2); // Worry not, noble one! We shall never forget thy deeds!
                return;
            }

            if (CheckQuestStatus(player, HumilityQuestStatus.Finished))
            {
                SayTo(player, 1075899, 0x3B2); // Hail, friend!
                return;
            }

            base.OnTalk(player);
        }