Esempio n. 1
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(IreFairyIre)) == null)
            {
                return;
            }

            if (Step == 3 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;

                if (gArgs.Target == fairyDragonflyHandler)
                {
                    SendSystemMessage("You slay the creature and pluck a whip from the Ire Fairy trainer's hands.");
                    GiveItem(gArgs.Target, player, dragonflyWhip);
                    Step = 4;
                    return;
                }
            }

            if (Step == 5 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == colm.Name && gArgs.Item.Id_nb == dragonflyWhip.Id_nb)
                {
                    colm.SayTo(player, "A whip?! This is outrageous! I see they were just trying to torture him. These Ire Fairies are truly malicious creatures. I hope you wipe them out one day Vinde. Here, take this as a sign of my [appreciation] for the return of the little one.");
                    RemoveItem(colm, player, dragonflyWhip);
                    Step = 6;
                    return;
                }
            }
        }
Esempio n. 2
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Nuisances)) == null)
            {
                return;
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == dalikor.Name && gArgs.Item.Id_nb == fullMagicBox.Id_nb)
                {
                    RemoveItem(dalikor, m_questPlayer, fullMagicBox);

                    dalikor.TurnTo(m_questPlayer);
                    dalikor.SayTo(m_questPlayer, "Hm...It's quite heavy. Let me take a peek inside.");
                    SendEmoteMessage(m_questPlayer, "Dalikor opens the top of the wooden box carefully. Once he spies the creatures inside, he closes the lid quickly.");

                    m_questPlayer.Out.SendEmoteAnimation(dalikor, eEmote.Yes);
                    Step = 3;
                    return;
                }
            }
        }
Esempio n. 3
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(StolenEggs)) == null)
            {
                return;
            }

            if (Step == 3 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;

                if (gArgs.Target == askefruerTrainer)
                {
                    SendSystemMessage(player, LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.StolenEggs.Notify.Text1", askefruerTrainer.GetName(0, true)));
                    SendSystemMessage(LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.StolenEggs.Notify.Text2"));
                    GiveItem(gArgs.Target, player, trainerWhip);
                    Step = 4;
                    return;
                }
            }

            if (Step == 5 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == njiedi.Name && gArgs.Item.Id_nb == trainerWhip.Id_nb)
                {
                    njiedi.SayTo(player, LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.StolenEggs.Notify.Text3", player.Name));
                    RemoveItem(njiedi, player, trainerWhip);
                    Step = 6;
                    return;
                }
            }
        }
Esempio n. 4
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(GreenerPastures)) == null)
            {
                return;
            }


            if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 4)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == farmerAsma.Name && gArgs.Item.Id_nb == farmerAsmasMap.Id_nb)
                    {
                        RemoveItem(farmerAsma, m_questPlayer, farmerAsmasMap);

                        farmerAsma.TurnTo(m_questPlayer);
                        farmerAsma.SayTo(m_questPlayer, "Thank you for you help. I can only offer you a small bit of coin as a reward for your assistance, but I am grateful for your advice.");

                        FinishQuest();
                        return;
                    }
                }
            }
        }
Esempio n. 5
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(GodelevasNeed)) == null)
            {
                return;
            }

            if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 2)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == godelevaDowden.Name && gArgs.Item.Id_nb == fullWoodenBucket.Id_nb)
                    {
                        RemoveItem(godelevaDowden, QuestPlayer, fullWoodenBucket);

                        godelevaDowden.TurnTo(QuestPlayer);
                        godelevaDowden.SayTo(QuestPlayer, "Ah, great! This is a good and full bucket! Thank you friend! Here is a little something for you. A traveler gave it to me, but it's not much use to me now. It will serve you better. Now, I'm off to clean. Be safe friend!");

                        FinishQuest();
                    }
                }
            }
        }
Esempio n. 6
0
        /// <summary>
        /// This method checks if a player is qualified for this quest
        /// </summary>
        /// <returns>true if qualified, false if not</returns>
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null)
            {
                return;
            }

            if (e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == Taran.Name && gArgs.Item.Id_nb == SmallBoxforTaran.Id_nb)
                {
                    Taran.SayTo(player, "Ah, the box I've been waiting for from Nyra. Thank you friend. If you'll wait just one second, I have a letter I'd like for you to take back to [her].");
                    RemoveItem(Taran, m_questPlayer, SmallBoxforTaran);
                    Step = 2;
                    return;
                }
                else if (gArgs.Target.Name == Nyra.Name && gArgs.Item.Id_nb == LettertoNyra.Id_nb)
                {
                    Nyra.SayTo(player, "Excellent! I was hoping he would like it. It was a small box of oranges. I know he loves them, and my parents have a small orange tree grove. Well, I think it's time I gave you [something].");
                    RemoveItem(Nyra, m_questPlayer, LettertoNyra);
                    Step = 4;
                    return;
                }
            }
        }
Esempio n. 7
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Nuisances)) == null)
            {
                return;
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == masterFrederick.Name && gArgs.Item.Id_nb == fullMagicBox.Id_nb)
                {
                    RemoveItem(masterFrederick, QuestPlayer, fullMagicBox);

                    masterFrederick.TurnTo(QuestPlayer);
                    masterFrederick.SayTo(QuestPlayer, "Ah, it is quite heavy, let me take a peek.");
                    SendEmoteMessage(QuestPlayer, "Master Frederick opens the box carefully. When he sees the contents, he quickly closes it and turns his attention back to you.");

                    QuestPlayer.Out.SendEmoteAnimation(masterFrederick, eEmote.Yes);
                    Step = 3;
                    return;
                }
            }
        }
Esempio n. 8
0
        /// <summary>
        /// This method needs to be implemented in each task.
        /// It is the core of the task. The global event hook of the GamePlayer.
        /// This method will be called whenever a GamePlayer with this task
        /// fires ANY event!
        /// </summary>
        /// <param name="e">The event type</param>
        /// <param name="sender">The sender of the event</param>
        /// <param name="args">The event arguments</param>
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            // Filter only the events from task owner
            if (sender != m_taskPlayer)
            {
                return;
            }

            if (CheckTaskExpired())
            {
                return;
            }

            GamePlayer player = (GamePlayer)sender;

            if (e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs  = (GiveItemEventArgs)args;
                GameLiving        target = gArgs.Target as GameLiving;
                InventoryItem     item   = gArgs.Item;

                if (player.Task.RecieverName == target.Name && item.Name == player.Task.ItemName)
                {
                    player.Inventory.RemoveItem(item);
                    InventoryLogging.LogInventoryAction(player, target, eInventoryActionType.Quest, item.Template, item.Count);
                    FinishTask();
                }
            }
        }
Esempio n. 9
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Nuisances)) == null)
            {
                return;
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == addrir.Name && gArgs.Item.Id_nb == fullMagicBox.Id_nb)
                {
                    RemoveItem(addrir, QuestPlayer, fullMagicBox);

                    addrir.TurnTo(QuestPlayer);
                    addrir.SayTo(QuestPlayer, "Ah, it is quite heavy, let me take a peek.");
                    SendEmoteMessage(QuestPlayer, "Addrir takes the box from you and carefully opens the lid. When he sees what is inside, he closes the lid quickly.");

                    QuestPlayer.Out.SendEmoteAnimation(addrir, eEmote.Yes);
                    Step = 3;
                    return;
                }
            }
        }
Esempio n. 10
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(HuntForArachneida)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name == "bloated spider")
                {
                    if (Util.Chance(50))
                    {
                        SendSystemMessage("You were able to slay a bloated spider, but her fang was broken during combat.!");
                    }
                    else
                    {
                        SendSystemMessage("You were able to slay a bloated spider, and take her fang!");
                        GiveItem(gArgs.Target, player, bloatedFang);
                        Step = 2;
                    }
                    return;
                }
            }
            if (Step == 2 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name == arachneida.Name)
                {
                    SendSystemMessage("You strike down Arachneida, now use the fang to retrieve her chitin!");
                    Step = 3;
                    return;
                }
            }
            else if (Step >= 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == kealan.Name && (gArgs.Item.Id_nb == bloatedFang.Id_nb || gArgs.Item.Id_nb == spiderChitin.Id_nb))
                {
                    kealan.TurnTo(m_questPlayer);
                    if (Step == 4)
                    {
                        kealan.SayTo(player, "Very well now hand me over the rest and you will revieve your reward...");
                        RemoveItem(kealan, player, gArgs.Item.Template);
                        Step = 5;
                    }
                    else if (Step == 5)
                    {
                        RemoveItem(kealan, player, gArgs.Item.Template);
                        FinishQuest();
                    }
                    return;
                }
            }
        }
Esempio n. 11
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(BuildingABetterBow)) == null)
            {
                return;
            }

            if (e == GameLivingEvent.EnemyKilled)
            {
                if (Step == 2)
                {
                    EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                    if (gArgs.Target.Name == "skeleton")
                    {
                        if (Util.Chance(50))
                        {
                            player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "You select a well-preserved bone from the \nremains and place it in your pack. \nYour journal has been updated.");
                            GiveItem(gArgs.Target, player, wellPreservedBones);
                            Step = 3;
                        }

                        return;
                    }
                }
                else if (Step == 3)
                {
                    EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                    if (gArgs.Target.Name == "skeleton")
                    {
                        if (Util.Chance(50))
                        {
                            player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "You select a well-preserved bone from the \nremains and place it in your pack. \nYour journal has been updated.");
                            ReplaceItem(player, wellPreservedBones, twoWellPreservedBones);
                            Step = 4;
                        }

                        return;
                    }
                }
            }
            else if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 4)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == elvarIronhand.Name && gArgs.Item.Id_nb == twoWellPreservedBones.Id_nb)
                    {
                        RemoveItem(elvarIronhand, QuestPlayer, twoWellPreservedBones);

                        elvarIronhand.TurnTo(QuestPlayer);
                        elvarIronhand.SayTo(QuestPlayer, "Hmm...These look a bit more brittle than I was expecting.  I suspect I may end up using horn for the final prototype, after all.  No matter, I'm sure I'll end up making several bows before I start demonstrating the new [technique].");
                        Step = 5;
                    }
                }
            }
        }
Esempio n. 12
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(ImportantDelivery)) == null)
            {
                return;
            }

            if (Step == 3 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == rumdor.Name && gArgs.Item.Id_nb == ticketToTirnamBeo.Id_nb)
                {
                    rumdor.SayTo(player, LanguageMgr.GetTranslation(player.Client, "Hib.ImportantDelivery.Notify.RentingHorse", player.Name));
                    Step = 4;
                    return;
                }
            }

            if (Step >= 3 && Step <= 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == aethic.Name && gArgs.Item.Id_nb == sackOfSupplies.Id_nb)
                {
                    aethic.SayTo(player, LanguageMgr.GetTranslation(player.Client, "Hib.ImportantDelivery.Notify.Supplies", player.Name));
                    RemoveItem(aethic, player, sackOfSupplies);
                    Step = 5;
                    return;
                }
            }

            if (Step == 6 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == truichon.Name && gArgs.Item.Id_nb == ticketToArdee.Id_nb)
                {
                    Step = 7;
                    return;
                }
            }

            if (Step >= 6 && Step <= 7 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == freagus.Name && gArgs.Item.Id_nb == crateOfVegetables.Id_nb)
                {
                    freagus.SayTo(player, LanguageMgr.GetTranslation(player.Client, "Hib.ImportantDelivery.Notify.Vegetables"));
                    RemoveItem(freagus, player, crateOfVegetables);
                    Step = 8;
                    return;
                }
            }
        }
Esempio n. 13
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(ImportantDelivery)) == null)
            {
                return;
            }

            if (Step == 3 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == gularg.Name && gArgs.Item.Id_nb == ticketToHaggerfel.Id_nb)
                {
                    Step = 4;
                    return;
                }
            }

            if (Step >= 3 && Step <= 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == abohas.Name && gArgs.Item.Id_nb == sackOfSupplies.Id_nb)
                {
                    abohas.SayTo(player, "Oh, I see. Yes, from Dalikor. We've been waiting for these supplies for a while. It's good to have them. I don't suppose you're up for one more [errand], are you?");
                    RemoveItem(abohas, player, sackOfSupplies);
                    Step = 5;
                    return;
                }
            }

            if (Step == 6 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == yolafson.Name && gArgs.Item.Id_nb == ticketToVasudheim.Id_nb)
                {
                    Step = 7;
                    return;
                }
            }

            if (Step >= 6 && Step <= 7 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == harlfug.Name && gArgs.Item.Id_nb == crateOfVegetables.Id_nb)
                {
                    harlfug.SayTo(player, "Ah, the vegetables I've been waiting for from Abohas. Thank you for delivering them to me. I couldn't find anyone to look after my stable so I could go and get them. Let me see, I think a [reward] is in order for your hard work.");
                    RemoveItem(harlfug, player, crateOfVegetables);
                    Step = 8;
                    return;
                }
            }
        }
Esempio n. 14
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(ImportantDelivery)) == null)
            {
                return;
            }

            if (Step == 3 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == vuloch.Name && gArgs.Item.Id_nb == ticketToLudlow.Id_nb)
                {
                    Step = 4;
                    return;
                }
            }

            if (Step >= 3 && Step <= 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == dunan.Name && gArgs.Item.Id_nb == sackOfSupplies.Id_nb)
                {
                    dunan.SayTo(player, "Oh, I see. Yes, from Master Frederick. We've been waiting for these supplies for a while. It's good to have them. I don't suppose you're up for one more [errand], are you?");
                    RemoveItem(dunan, player, sackOfSupplies);
                    Step = 5;
                    return;
                }
            }

            if (Step == 6 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == yaren.Name && gArgs.Item.Id_nb == ticketToBombard.Id_nb)
                {
                    Step = 7;
                    return;
                }
            }

            if (Step >= 6 && Step <= 7 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == bombard.Name && gArgs.Item.Id_nb == crateOfVegetables.Id_nb)
                {
                    bombard.SayTo(player, "Ah, the vegetables I've been waiting for from Dunan. Thank you for delivering them to me. I couldn't find anyone to look after my stable so I could go and get them. Let me see, I think a [reward] is in order for your hard work.");
                    RemoveItem(bombard, player, crateOfVegetables);
                    Step = 8;
                    return;
                }
            }
        }
Esempio n. 15
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null)
            {
                return;
            }

            if (player.IsDoingQuest(typeof(BoarStew)) == null)
            {
                return;
            }

            if (e == GameLivingEvent.EnemyKilled)
            {
                if (Step == 1)
                {
                    EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                    if ((gArgs.Target.Name == "Huge Boar") || (gArgs.Target.Name == "huge boar"))
                    {
                        if (Util.Chance(50))
                        {
                            player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "You receive the Huge Boar Carcass from the huge boar! \nYour journal has been updated.");
                            boarCarcass.Name = gArgs.Target.GetName(1, true) + " carcass ";
                            GiveItem(player, boarCarcass);
                            Step = 2;
                        }

                        return;
                    }
                }
            }

            else if (e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                switch (Step)
                {
                case 2:
                    if (gArgs.Target.Name == masterGerol.Name && gArgs.Item.Id_nb == boarCarcass.Id_nb)
                    {
                        RemoveItem(masterGerol, player, boarCarcass);
                        masterGerol.SayTo(player, "Wow, this has got to be the largest boar I have seen yet! Here, have some coins for payment of your task, as well as the knowledge you are helping out the health of Albion.");
                        FinishQuest();
                    }

                    return;
                }
            }
        }
Esempio n. 16
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(AndrewsSkins)) == null)
            {
                return;
            }


            if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 1)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == georNadren.Name && gArgs.Item.Id_nb == bundleOfBearSkins.Id_nb)
                    {
                        RemoveItem(georNadren, m_questPlayer, bundleOfBearSkins);

                        georNadren.TurnTo(m_questPlayer);
                        georNadren.SayTo(m_questPlayer, "Ah!  These must be the skins I've been waiting for from Andrew.  My, my, these are very high quality.  He's a very skilled hunter indeed, with a fine eye for good pelts.  Excellent!  I have but one more [errand] I need for you to run for me.");

                        Step = 2;
                        return;
                    }
                }
                else if (Step == 3)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == georNadren.Name && gArgs.Item.Id_nb == spoolOfLeatherworkingThread.Id_nb)
                    {
                        RemoveItem(georNadren, m_questPlayer, spoolOfLeatherworkingThread);

                        georNadren.TurnTo(m_questPlayer);
                        georNadren.SayTo(m_questPlayer, "Excellent!  Why, there is enough here to make several suits of armor.  Thank you friend!  Now, I think you need to return to Andrew in Cotswold and let him know I received the skins.  Thank you again, and good journeys to you " + m_questPlayer.Name + ".");

                        m_questPlayer.GainExperience(GameLiving.eXPSource.Quest, 40, true);
                        long money = Money.GetMoney(0, 0, 0, 2, Util.Random(50));
                        m_questPlayer.AddMoney(money, "You are awarded 2 silver and some copper!");
                        InventoryLogging.LogInventoryAction("(QUEST;" + Name + ")", m_questPlayer, eInventoryActionType.Quest, money);

                        Step = 4;
                        return;
                    }
                }
            }
        }
Esempio n. 17
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Collection)) == null)
            {
                return;
            }

            if (Step >= 2 && Step <= 4 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;

                if (gArgs.Target.Name == generalNames[Step - 2])
                {
                    SendSystemMessage("You slay the creature and take it's wing.");
                    GiveItem(gArgs.Target, player, askefruerWings);
                    SendSystemMessage(player, generalNames[Step - 2] + " yells at you, \"A curse on you land-bound monster! I curse you for killing me!\"");
                    Step++;
                    return;
                }
            }

            if (Step >= 6 && Step <= 8 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == dalikor.Name && gArgs.Item.Id_nb == askefruerWings.Id_nb)
                {
                    if (Step == 6)
                    {
                        dalikor.SayTo(player, "This is a truly magnificent wing. It's sad, really, that it belonged to such an evil creature. Ah well. Please Eeinken, hand me the other wings.");
                    }
                    else if (Step == 7)
                    {
                        dalikor.SayTo(player, "Good job recruit. Now please, hand me the last wing.");
                    }
                    else if (Step == 8)
                    {
                        dalikor.SayTo(player, "Yes, the final wing. It appears as though you have finished the task at hand. I do not condone the needless killing of other beings, but I feel as though these Fallen Askefruer leave us little choice. But for your efforts, I have a [reward] for you.");
                    }

                    RemoveItem(dalikor, player, askefruerWings);
                    Step++;
                    return;
                }
            }
        }
Esempio n. 18
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Collection)) == null)
            {
                return;
            }

            if (Step >= 2 && Step <= 4 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;

                if (gArgs.Target.Name == generalNames[Step - 2])
                {
                    SendSystemMessage("You slay the creature and take it's wing.");
                    GiveItem(gArgs.Target, player, fairyGeneralWings);
                    SendSystemMessage(player, generalNames[Step - 2] + " yells at you, \"A curse on you land-bound monster! I curse you for killing me!\"");
                    Step++;
                    return;
                }
            }

            if (Step >= 6 && Step <= 8 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == masterFrederick.Name && gArgs.Item.Id_nb == fairyGeneralWings.Id_nb)
                {
                    if (Step == 6)
                    {
                        masterFrederick.SayTo(player, "Excellent. Please, hand me the second one now.");
                    }
                    else if (Step == 7)
                    {
                        masterFrederick.SayTo(player, "Yes, now please, hand me the third one.");
                    }
                    else if (Step == 8)
                    {
                        masterFrederick.SayTo(player, "Ah, the third wing. Yes, excellent job Vinde. Now, for your [reward]");
                    }

                    RemoveItem(masterFrederick, player, fairyGeneralWings);
                    Step++;
                    return;
                }
            }
        }
Esempio n. 19
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Rogue_50)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name == Oona.Name)
                {
                    m_questPlayer.Out.SendMessage("You collect Oona's Head", eChatType.CT_System, eChatLoc.CL_SystemWindow);
                    GiveItem(m_questPlayer, oona_head);
                    Step = 2;
                    return;
                }
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == Masrim.Name && gArgs.Item.Id_nb == oona_head.Id_nb)
                {
                    RemoveItem(Masrim, player, oona_head);
                    Masrim.SayTo(player, "Take this sealed pouch to Morlin Caan in Jordheim for your reward!");
                    GiveItem(player, sealed_pouch);
                    Step = 3;
                    return;
                }
            }

            if (Step == 3 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == MorlinCaan.Name && gArgs.Item.Id_nb == sealed_pouch.Id_nb)
                {
                    MorlinCaan.SayTo(player, "You have earned this Epic Armour!");
                    FinishQuest();
                    return;
                }
            }
        }
Esempio n. 20
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Seer_50)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name == Loken.Name)
                {
                    m_questPlayer.Out.SendMessage("You get a ball of flame", eChatType.CT_System, eChatLoc.CL_SystemWindow);
                    GiveItem(m_questPlayer, ball_of_flame);
                    Step = 2;
                    return;
                }
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == Inaksha.Name && gArgs.Item.Id_nb == ball_of_flame.Id_nb)
                {
                    RemoveItem(Inaksha, player, ball_of_flame);
                    Inaksha.SayTo(player, "So it seems Logan's [dead]");
                    Step = 3;
                    return;
                }
            }

            if (Step == 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == Miri.Name && gArgs.Item.Id_nb == sealed_pouch.Id_nb)
                {
                    Miri.SayTo(player, "You have earned this Epic Armour!");
                    FinishQuest();
                    return;
                }
            }
        }
Esempio n. 21
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(YdeniasCrush)) == null)
            {
                return;
            }


            if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 1)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == elvarTambor.Name && gArgs.Item.Id_nb == letterToElvar.Id_nb)
                    {
                        RemoveItem(elvarTambor, m_questPlayer, letterToElvar);

                        elvarTambor.TurnTo(m_questPlayer);
                        elvarTambor.SayTo(m_questPlayer, "Ah!  A letter from my Ydenia.  Thank you for delivering it to me.  I can't wait to see what she has to say.  I was just sitting here wondering if there was going to be someone who was traveling back to [Cotswold].");

                        Step = 2;
                        return;
                    }
                }

                if (Step == 3)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == ydeniaPhilpott.Name && gArgs.Item.Id_nb == letterToYdenia.Id_nb)
                    {
                        RemoveItem(ydeniaPhilpott, m_questPlayer, letterToYdenia);

                        ydeniaPhilpott.TurnTo(m_questPlayer);
                        ydeniaPhilpott.SayTo(m_questPlayer, "Thank you friend!  Here, I have [something] for you.");

                        Step = 4;
                        return;
                    }
                }
            }
        }
Esempio n. 22
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null)
            {
                return;
            }

            if (player.IsDoingQuest(typeof(MarlinsSalesPitch)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if ((gArgs.Target.Name.IndexOf("Tomb Raider Digger") >= 0) || (gArgs.Target.Name.IndexOf("Tomb Raider Scout") >= 0) || (gArgs.Target.Name.IndexOf("tomb raider digger") >= 0) || (gArgs.Target.Name.IndexOf("tomb raider scout") >= 0))
                {
                    if (Util.Chance(20))
                    {
                        SendSystemMessage("The tomb raider staggers away before falling over, lifeless.");

                        player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "The tomb raider scout drops a beautifully crafted drum as he falls to the ground. Your journal has been updated.");
                        GiveItem(player, drum);
                        Step = 2;
                    }

                    return;
                }
            }
            else if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == marlinThuler.Name && gArgs.Item.Id_nb == drum.Id_nb)
                {
                    RemoveItem(marlinThuler, player, drum);
                    marlinThuler.SayTo(player, "Hallelujah! You found my drum, thank you! I will never be able to fully repay you, but perhaps these coins will at least start to show my appreciation for your service.");
                    FinishQuest();
                    return;
                }
            }
        }
Esempio n. 23
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null)
            {
                return;
            }

            if (player.IsDoingQuest(typeof(Disenchanted)) == null)
            {
                return;
            }

            if (e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                switch (Step)
                {
                case 1:
                    if (gArgs.Target.Name == guardCynon.Name && gArgs.Item.Id_nb == enchantedHalberd.Id_nb)
                    {
                        RemoveItem(guardCynon, player, enchantedHalberd);
                        SendSystemMessage(player, "Guard Cynon accepts the polearm and inspects it closely, falling into a combat stance. Before he can swing the weapon, a disembodied voice strikes up a conversation with him. Cynon's eyes widen and his jaw drops.");
                        guardCynon.SayTo(player, "This halberd is talking to me! What kind of useless enchantment is this? I asked Palune to put a simple accuracy enchantment upon this weapon, not to make it [chatter] at me!");
                        Step = 2;
                    }

                    return;

                case 3:
                    if (gArgs.Target.Name == palune.Name && gArgs.Item.Id_nb == enchantedHalberd.Id_nb)
                    {
                        RemoveItem(palune, player, enchantedHalberd);
                        palune.SayTo(player, "Thank you. Oh, I see what I did wrong now. He's right, I'm sure it was talking to him nonstop when he tried to use it. I'll have to find the time to fix it and someone else to deliver it. Well, thank you for bringing it back, and here's your payment.");
                        FinishQuest();
                    }

                    return;
                }
            }
        }
Esempio n. 24
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(TraitorInMularn)) == null)
            {
                return;
            }

            if (Step == 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == dalikor.Name && gArgs.Item.Id_nb == askefruerPlans.Id_nb)
                {
                    RemoveItem(dalikor, QuestPlayer, askefruerPlans);

                    dalikor.TurnTo(QuestPlayer);
                    dalikor.SayTo(QuestPlayer, "Ah! The plans of the Askefruer. Ah, but they are in a language I do not understand. I will have to take this to the elders of Mularn for further study. Before I do that, though, I have [something] here for you.");
                    QuestPlayer.Out.SendEmoteAnimation(dalikor, eEmote.Ponder);
                    Step = 5;
                    return;
                }
            }
        }
Esempio n. 25
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(TraitorInMagMell)) == null)
            {
                return;
            }

            if (Step == 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == addrir.Name && gArgs.Item.Id_nb == sluaghPlans.Id_nb)
                {
                    RemoveItem(addrir, QuestPlayer, sluaghPlans);

                    addrir.TurnTo(QuestPlayer);
                    addrir.SayTo(QuestPlayer, "Ah! Their plans, but alas, I can not read their language. Hrm...I shall have to think on this. I'm sure there is someone I can find to translate this for me. But never mind that right now. I have a [reward] for you for your hard work and bravery.");
                    QuestPlayer.Out.SendEmoteAnimation(addrir, eEmote.Ponder);
                    Step = 5;
                    return;
                }
            }
        }
Esempio n. 26
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(Church_50)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs != null && gArgs.Target != null && Blythe != null)
                {
                    if (gArgs.Target.Name == Blythe.Name)
                    {
                        QuestPlayer.Out.SendMessage("As you search the dead body of sister Blythe, you find a sacred " + statue_of_arawn.Name + ", bring it to " + Roben.Name + " has proof of your success.", eChatType.CT_System, eChatLoc.CL_SystemWindow);
                        GiveItem(QuestPlayer, statue_of_arawn);
                        Step = 2;
                        return;
                    }
                }
            }

            if (Step == 2 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == Roben.Name && gArgs.Item.Id_nb == statue_of_arawn.Id_nb)
                {
                    Roben.SayTo(player, "You have earned this Epic Armor, wear it with honor!");

                    FinishQuest();
                    return;
                }
            }
        }
Esempio n. 27
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(TraitorInCotswold)) == null)
            {
                return;
            }

            if (Step == 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == masterFrederick.Name && gArgs.Item.Id_nb == fairyPlans.Id_nb)
                {
                    RemoveItem(masterFrederick, QuestPlayer, fairyPlans);

                    masterFrederick.TurnTo(QuestPlayer);
                    masterFrederick.SayTo(QuestPlayer, "This is a very small parchment. Hrm...Let me see if I can make out the words.");
                    QuestPlayer.Out.SendEmoteAnimation(masterFrederick, eEmote.Ponder);
                    Step = 5;
                    return;
                }
            }
        }
Esempio n. 28
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null)
            {
                return;
            }

            if (player.IsDoingQuest(typeof(ArgussArrows)) == null)
            {
                return;
            }

            if (Step == 1 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name.IndexOf("young cutpurse") >= 0)
                {
                    if (Util.Chance(50))
                    {
                        player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "You receive a Bunch of Ludlow Magical Wood from the young cutpurse! \nYour journal has been updated.");
                        GiveItem(player, magicalWood);
                        Step = 2;
                    }

                    return;
                }
            }
            else if (Step == 2 && e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (gArgs.Target.Name.IndexOf("young cutpurse") >= 0)
                {
                    if (Util.Chance(50))
                    {
                        player.Out.SendDialogBox(eDialogCode.SimpleWarning, 0x00, 0x00, 0x00, 0x00, eDialogType.Ok, true, "You receive a Bunch of Ludlow Magical Wood from the young cutpurse! \nYour journal has been updated.");
                        GiveItem(player, magicalWood);
                        Step = 3;
                    }

                    return;
                }
            }
            else if (Step == 3 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == argusBowman.Name && gArgs.Item.Id_nb == magicalWood.Id_nb)
                {
                    RemoveItem(argusBowman, player, magicalWood);
                    argusBowman.SayTo(player, "Excellent! Did you get anymore wood?");
                    Step = 4;
                    return;
                }
            }
            else if (Step == 4 && e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == argusBowman.Name && gArgs.Item.Id_nb == magicalWood.Id_nb)
                {
                    RemoveItem(argusBowman, player, magicalWood);
                    argusBowman.SayTo(player, "Excellent! This will do nicely. Now wait, I have a [reward] for you somewhere around here.");
                    Step = 5;
                    return;
                }
            }
        }
Esempio n. 29
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(HeartOfSephucoth)) == null)
            {
                return;
            }

            if (e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (Step == 1)
                {
                    if (gArgs.Target.Name == "river sprite")
                    {
                        if (Util.Chance(25))
                        {
                            if (sephucoth == null)
                            {
                                sephucoth                 = new GameNPC();
                                sephucoth.Model           = 136;
                                sephucoth.Name            = "Sephucoth";
                                sephucoth.Realm           = eRealm.None;
                                sephucoth.CurrentRegionID = 1;

                                sephucoth.Size    = 55;
                                sephucoth.Level   = 7;
                                sephucoth.X       = 560836;
                                sephucoth.Y       = 527260;
                                sephucoth.Z       = 2082;
                                sephucoth.Heading = 1480;

                                StandardMobBrain brain = new StandardMobBrain(); // set a brain witch find a lot mob friend to attack the player
                                sephucoth.SetOwnBrain(brain);                    // so this mob must be abble to cast

                                sephucoth.RespawnInterval = 0;                   // don't respawn when killed

                                sephucoth.AddToWorld();
                            }
                        }
                    }
                    else if (gArgs.Target.Name == "Sephucoth")
                    {
                        GiveItem(gArgs.Target, player, sephucothsHeart);
                        if (sephucoth != null)
                        {
                            sephucoth = null;
                        }

                        Step = 2;
                    }
                }
                else if (Step == 3)
                {
                    if (gArgs.Target.Name == "large skeleton")
                    {
                        if (Util.Chance(50))
                        {
                            GiveItem(gArgs.Target, player, polishedBone);
                            Step = 4;
                        }
                    }
                }
            }
            else if (e == GamePlayerEvent.GiveItem)
            {
                GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                if (gArgs.Target.Name == eowylnAstos.Name)
                {
                    if (gArgs.Item.Id_nb == sephucothsHeart.Id_nb && Step == 2)
                    {
                        RemoveItem(eowylnAstos, QuestPlayer, sephucothsHeart);

                        eowylnAstos.TurnTo(QuestPlayer);
                        eowylnAstos.SayTo(QuestPlayer, "You have done well traveler! I will still require one final object to complete the pendant. Seek out a large skeleton and bring from it a piece of polished bone! Return this to me and I shall finish your pendant.");
                        Step = 3;
                    }
                    else if (gArgs.Item.Id_nb == polishedBone.Id_nb && Step == 4)
                    {
                        RemoveItem(eowylnAstos, QuestPlayer, polishedBone);

                        eowylnAstos.TurnTo(QuestPlayer);
                        eowylnAstos.SayTo(QuestPlayer, "Eowyln draws two items before her. Gathering her strength, she shouts.");

                        new RegionTimer(eowylnAstos, new RegionTimerCallback(BuildNecklace), 5000);
                    }
                }
            }
        }
Esempio n. 30
0
        public override void Notify(DOLEvent e, object sender, EventArgs args)
        {
            #region mobkilled

            GamePlayer player = sender as GamePlayer;

            if (player == null || player.IsDoingQuest(typeof(AidingGuardAlakyrr)) == null)
            {
                return;
            }

            if (e == GameLivingEvent.EnemyKilled)
            {
                EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
                if (Step == 2)
                {
                    if (gArgs.Target.Name == "tenebrous fighter")
                    {
                        SendReply(player, "A tenebrous shadow is released. Use the Enchanted Tenebrous Flask to capture the Tenebrous Essence.");
                        Step = 3;
                    }
                }
                if (Step == 4)
                {
                    if (gArgs.Target.Name == "tenebrous fighter")
                    {
                        SendReply(player, "A tenebrous shadow is released. Use the Quarter Full Tenebrous Flask to capture the Tenebrous Essence.");
                        Step = 5;
                    }
                }
                if (Step == 6)
                {
                    if (gArgs.Target.Name == "tenebrous fighter")
                    {
                        SendReply(player, "A tenebrous shadow is released. Use the Half Full Tenebrous Flask to capture the Tenebrous Essence.");
                        Step = 7;
                    }
                }
                if (Step == 8)
                {
                    if (gArgs.Target.Name == "tenebrous fighter")
                    {
                        SendReply(player, "A tenebrous shadow is released. Use the 3 Quarters Full Tenebrous Flask to capture the Tenebrous Essence.");
                        Step = 9;
                    }
                }
            }
            #endregion

            if (player == null || player.IsDoingQuest(typeof(AidingGuardAlakyrr)) == null)
            {
                return;
            }

            if (e == GamePlayerEvent.GiveItem)
            {
                if (Step == 11)
                {
                    GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
                    if (gArgs.Target.Name == GuardAlakyrr.Name && gArgs.Item.Id_nb == fullflaskoftenebrousessence.Id_nb)
                    {
                        RemoveItem(GuardAlakyrr, m_questPlayer, fullflaskoftenebrousessence);

                        GuardAlakyrr.TurnTo(m_questPlayer);
                        GuardAlakyrr.SayTo(m_questPlayer, "Thank you. This is a promising specimen for study. Please take this coin as a show of our appreciation. Blessings of Arawn be upon you.");

                        FinishQuest();
                    }
                }
            }
        }