예제 #1
0
        public override void OnSpeech(SpeechEventArgs e)
        {
            if (e.Mobile is PlayerMobile pm)
            {
                if (pm.AbyssEntry)
                {
                    pm.SendLocalizedMessage(1112697); // You enter a state of peaceful contemplation, focusing on the meaning of Singularity.
                    pm.PlaySound(249);
                }
                else if (!e.Handled && pm.InRange(Location, 2) && e.Speech.ToLower().Trim() == "unorus")
                {
                    e.Handled = true;
                    e.Mobile.PlaySound(0xF9);

                    var quest = QuestHelper.GetQuest <QuestOfSingularity>(pm);

                    if (HasDelay(pm) && pm.AccessLevel == AccessLevel.Player)
                    {
                        PrivateOverheadMessage(MessageType.Regular, 1150, 1112685, pm.NetState); // You need more time to contemplate the Book of Circles before trying again.
                        pm.PlaySound(249);
                    }
                    else if (quest == null)
                    {
                        quest = new QuestOfSingularity
                        {
                            Owner   = pm,
                            Quester = this
                        };

                        pm.SendGump(new MondainQuestGump(quest));
                    }
                    else if (quest.Completed)
                    {
                        pm.SendGump(new MondainQuestGump(quest, MondainQuestGump.Section.Complete, false, true));
                    }
                    else if (!pm.HasGump(typeof(QAndAGump)))
                    {
                        pm.SendGump(new QAndAGump(pm, quest));
                    }
                }
            }
        }
예제 #2
0
        public override void OnSpeech(SpeechEventArgs e)
        {
            Mobile       from = e.Mobile;
            PlayerMobile pm   = from as PlayerMobile;

            if (pm is PlayerMobile && !e.Handled && from.InRange(Location, 2) && e.Speech.ToLower().Trim() == "unorus")
            {
                e.Handled = true;
                e.Mobile.PlaySound(0xF9);

                QuestOfSingularity quest = GetSingularityQuest(pm);

                if (HasDelay(pm) && pm.AccessLevel == AccessLevel.Player)
                {
                    pm.SendLocalizedMessage(1112685); //You need more time to contemplate the Book of Circles before trying again.
                }
                else if (pm.AbyssEntry)
                {
                    pm.SendLocalizedMessage(1112697);  //You enter a state of peaceful contemplation, focusing on the meaning of Singularity.
                }
                else if (quest == null)
                {
                    quest = new QuestOfSingularity();

                    quest.Owner   = pm;
                    quest.Quester = this;

                    pm.SendGump(new MondainQuestGump(quest));
                }
                else if (quest.Completed)
                {
                    from.SendGump(new MondainQuestGump(quest, MondainQuestGump.Section.Complete, false, true));
                }
                else if (!pm.HasGump(typeof(QAndAGump)))
                {
                    pm.SendGump(new QAndAGump(pm, quest));
                }
            }
        }
예제 #3
0
        public override void OnSpeech(SpeechEventArgs e)
        {
            PlayerMobile pm = e.Mobile as PlayerMobile;

            if (pm.AbyssEntry)
            {
                pm.SendLocalizedMessage(1112697);  //You enter a state of peaceful contemplation, focusing on the meaning of Singularity.
            }
            else if (pm != null && !e.Handled && pm.InRange(Location, 2) && e.Speech.ToLower().Trim() == "unorus" && QuestHelper.CheckDoneOnce(pm, typeof(TheArisenQuest), null, false))
            {
                e.Handled = true;
                e.Mobile.PlaySound(0xF9);

                var quest = QuestHelper.GetQuest <QuestOfSingularity>(pm);

                if (HasDelay(pm) && pm.AccessLevel == AccessLevel.Player)
                {
                    pm.PublicOverheadMessage(MessageType.Regular, 0x47E, 1112685); // You need more time to contemplate the Book of Circles before trying again.
                }
                else if (quest == null)
                {
                    quest = new QuestOfSingularity();

                    quest.Owner   = pm;
                    quest.Quester = this;

                    pm.SendGump(new MondainQuestGump(quest));
                }
                else if (quest.Completed)
                {
                    pm.SendGump(new MondainQuestGump(quest, MondainQuestGump.Section.Complete, false, true));
                }
                else if (!pm.HasGump(typeof(QAndAGump)))
                {
                    pm.SendGump(new QAndAGump(pm, quest));
                }
            }
        }