ZURSULUS L2

Testimony of Fate

ID
219
Название
Testimony of Fate
start_npcs_json
[30476]
npc_ids_json
[20144,20157,20158,20192,20193,20202,20230,20232,20233,20234,20270,20554,20582,20600,27079,30114,30210,30358,30419,30463,30476,30613,30614,31845,31850]
constants_json
{"KAIRA":30476,"METHEUS":30614,"IXIA":30463,"ALDER_SPIRIT":30613,"ROA":30114,"NORMAN":30210,"THIFIELL":30358,"ARKENIA":30419,"BLOODY_PIXY":31845,"BLIGHT_TREANT":31850,"HANGMAN_TREE":20144,"MARSH_STAKATO":20157,"MEDUSA":20158,"TYRANT":20192,"TYRANT_KINGPIN":20193,"DEAD_SEEKER":20202,"MARSH_STAKATO_WORKER":20230,"MARSH_STAKATO_SOLDIER":20232,"MARSH_SPIDER":20233,"MARSH_STAKATO_DRONE":20234,"BREKA_ORC_OVERLORD":20270,"GRANDIS":20554,"LETO_LIZARDMAN_OVERLORD":20582,"KARUL_BUGBEAR":20600,"BLACK_WILLOW_LURKER":27079,"KAIRA_LETTER":3173,"METHEUS_FUNERAL_JAR":3174,"KASANDRA_REMAINS":3175,"HERBALISM_TEXTBOOK":3176,"IXIA_LIST":3177,"MEDUSA_ICHOR":3178,"MARSH_SPIDER_FLUIDS":3179,"DEAD_SEEKER_DUNG":3180,"TYRANT_BLOOD":3181,"NIGHTSHADE_ROOT":3182,"BELLADONNA":3183,"ALDER_SKULL_1":3184,"ALDER_SKULL_2":3185,"ALDER_RECEIPT":3186,"REVELATIONS_MANUSCRIPT":3187,"KAIRA_RECOMMENDATION":3189,"KAIRA_INSTRUCTIONS":3188,"PALUS_CHARM":3190,"THIFIELL_LETTER":3191,"ARKENIA_NOTE":3192,"PIXY_GARNET":3193,"GRANDIS_SKULL":3194,"KARUL_BUGBEAR_SKULL":3195,"BREKA_OVERLORD_SKULL":3196,"LETO_OVERLORD_SKULL":3197,"RED_FAIRY_DUST":3198,"BLIGHT_TREANT_SEED":3199,"BLACK_WILLOW_LEAF":3200,"BLIGHT_TREANT_SAP":3201,"ARKENIA_LETTER":3202,"MARK_OF_FATE":3172,"DIMENSIONAL_DIAMOND":7562}
Статус разбора
metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
Источник
game/data/scripts/quests/Q00219_TestimonyOfFate/Q00219_TestimonyOfFate.java

NPC квеста

IDНазваниеСтарт квестаУровень
20144Hangman TreeНет35
20157Marsh StakatoНет29
20158MedusaНет34
20192TyrantНет35
20193Tyrant KingpinНет36
20202Dead SeekerНет34
20230Marsh Stakato WorkerНет31
20232Marsh Stakato SoldierНет33
20233Marsh SpiderНет34
20234Marsh Stakato DroneНет35
20270Breka Orc OverlordНет35
20554GrandisНет40
20582Leto Lizardman OverlordНет40
20600Karul BugbearНет40
27079Black Willow LurkerНет39
30114RoaНет70
30210NormanНет70
30358ThifiellНет70
30419ArkeniaНет70
30463IxiaНет70
30476KairaДа70
30613Alders SpiritНет70
30614MetheusНет70
31845Bloody PixyНет80
31850Blight TreantНет80

Условия уровней: выражения из Java

if (player.getLevel() < 38)
else if ((player.getLevel() < 37) || (player.getPlayerClass().level() != 1))
if (player.getLevel() < 38)

Выдача предметов, адены и опыта: выражения из Java

giveItems(player, KAIRA_LETTER, 1);
giveItems(player, DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
giveItems(player, ALDER_RECEIPT, 1);
giveItems(player, KAIRA_INSTRUCTIONS, 1);
giveItems(player, KAIRA_RECOMMENDATION, 1);
giveItems(player, ARKENIA_NOTE, 1);
giveItems(player, PIXY_GARNET, 1);
giveItems(player, BLIGHT_TREANT_SEED, 1);
giveItems(player, ARKENIA_LETTER, 1);
giveItems(player, KAIRA_RECOMMENDATION, 1);
giveItems(player, METHEUS_FUNERAL_JAR, 1);
giveItems(player, HERBALISM_TEXTBOOK, 1);
giveItems(player, ALDER_SKULL_1, 1);
giveItems(player, IXIA_LIST, 1);
giveItems(player, BELLADONNA, 1);
giveItems(player, ALDER_SKULL_2, 1);
giveItems(player, REVELATIONS_MANUSCRIPT, 1);
giveItems(player, PALUS_CHARM, 1);
giveItems(player, THIFIELL_LETTER, 1);
giveItems(player, MARK_OF_FATE, 1);
addExpAndSp(player, 68183, 1750);
giveItems(player, RED_FAIRY_DUST, 1);
giveItems(player, BLIGHT_TREANT_SAP, 1);
giveItems(player, KASANDRA_REMAINS, 1);
giveItems(player, DEAD_SEEKER_DUNG, 1);
giveItems(player, TYRANT_BLOOD, 1);
giveItems(player, MEDUSA_ICHOR, 1);
giveItems(player, NIGHTSHADE_ROOT, 1);
giveItems(player, MARSH_SPIDER_FLUIDS, 1);
giveItems(player, GRANDIS_SKULL, 1);
giveItems(player, LETO_OVERLORD_SKULL, 1);
giveItems(player, BREKA_OVERLORD_SKULL, 1);
giveItems(player, KARUL_BUGBEAR_SKULL, 1);
giveItems(player, BLACK_WILLOW_LEAF, 1);

Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.

Тексты квеста

[30114-01.htm] Magister Roa: What business would a Dark Elf have with me? "I was sent here by your ancestor, brother Alder." [30114-02.htm] Magister Roa: Brother Alder? My great, great grandfather? But how would a Dark Elf know about my ancestor? What could you possibly want to know about a person who has been dead for many years? "I just want to know the truth!" "Even though you cover it with your hands, the moon still shines." [30114-03.htm] Magister Roa: What? "Even though you cover it with your hands, the moon still shines." [30114-04.htm] Magister Roa: I heard those words from my grandmother when I was quite small... She beseeched me to remember it until my dying day, and to pass them on to my children. I didn't understand the meaning exactly, but I knew that it was something very important. She said that if someone comes to me and says those words, I must give this to them. I am not sure what it is, it seems to be some kind of a slip. If you look here, it says 'Gludin Warehouse'. It is yours. [30114-05.htm] Magister Roa: It appears to be a claim check for a warehouse. Perhaps my ancestor had something precious stored there? The slip says 'Gludin warehouse'. You had better go and have a look there. [30114-06.htm] Magister Roa: Is it true that my ancestor wrote a book that was banned by the Priests of Einhasad? Why would he be interested in forbidden knowledge? You must be careful. It is said that by merely reading the book your soul can become corrupted. [30210-01.htm] Warehouse Keeper Norman: I remember... I saw it in an Old Account Book... We Dwarves are very precise record keepers. It is recorded that when my predecessor first came here to the town's warehouse, a pale man in a priest gown left a scroll with him. It is the Steel Gate Guild's purpose to protect all deposited things completely, so we have kept the scroll safely secured for the last 200 years. Although your receipt is very old, there is no doubt that it was issued by our warehouse. One moment. I shall bring the deposited goods. Here you go! Some of the pages in this book are torn, but that was how it looked when it was deposited! [30210-02.htm] Warehouse Keeper Norman: I don't know what that document refers to, but please remember that it has been kept safe by our Steel Gate Guild for over 200 years. To us, credibility is the greatest virtue! [30358-01.htm] Tetrarch Thifiell: Welcome home, young brother. It seems like only yesterday when you came here after you finished training in the shrine of Shilen. My, haven't you grown! This document you have found is known as 'Kaysha's Revelation'. It contains the truth about Shilen! It contains the truth of the goddess, long thought lost! That document is essential to our suvival in the Age of Chaos. It will be the key to the opening of a new era. Now it is time for your Initiation Ceremony. You shall share the experience and knowledge that you have acquired in the Human world, as well as absorbing the accumulated knowledge of the ancestors. Take this letter and amulet to Shaman Arkenia of the Dark Elves Initiation Altar. She will help you complete the Initiation Ceremony of Shilen. [30358-02.htm] Tetrarch Thifiell: It is time for you to take the Initiation Ceremony of Shilen. Take the letter and charm that I gave you to Shaman Arkenia of the Dark Elves Initiation Altar. She will perform your ceremony. [30358-03.htm] Tetrarch Thifiell: The Book of Abyss is the living history of our past and future. It is where all our tribal knowledge and experience is recorded. To complete the Initiation Ceremony you must write your own phrase in the book. Good luck! [30358-04.htm] Tetrarch Thifiell: Brother of darkness, you now know the truth of abyss. My congratulations on your newfound awakening. You have glimpsed the dark fate our tribe must endure during the coming age of chaos. Do not be despondent, however! Your task now, like all of ours, is to concentrate on the mission before us. To that end, I now award you thisMark of Fate. You will need it if you ever transfer to a higher class. I'm sure you will be much changed when next we meet; I sense a powerful destiny ahead of you. May Shilen's power shield you always. [30419-01.htm] Arkenia: The Book of Abyss is an amazing scripture, a collection of all the knowledge and experiences of our race through the millenia. The time has come for you to contribute your part to our history. You must prepare and use a special ink for this process. Thus will begin the Initiation Ceremony of the Shilen Circle. Ask about the ink [30419-02.htm] Arkenia: To create the ink you must use to write in The Book of Abyss you will need to obtain two ingredients: Red Fairy Dust from the Bloody Pixy and Blight Treant Sap from blight treants. [30419-03.htm] Arkenia: To begin the Initiation Ceremony of the Shilen Circle you must create a very special ink. To create this ink you will need to obtain two ingredients: Red Fairy Dust from the Bloody Pixy and Blight Treant Sap from blight treants. [30419-04.htm] Arkenia: You have assembled the ingredients needed for making Scarlet Ink. The Initiation Ceremony of the Shilien Circle may begin. Begin the Initiation Ceremony [30419-05.htm] Arkenia: Purge your soul and absorb the knowledge and experience of your ancestors from the Book of Abyss. Add your contribution to our holy scripture. I, Arkenia, Shaman of the Abyss proclaim that you have been given the sacred knowledge of our ancestors. You are privy to the prophecies foretelling our dark, chaotic future and have been shown what our race must do to survive. Specific memories will fade from your mind, but the knowledge will be held in your heart for the right moment. Congratulations! The Initiation Ceremony of the Shilen Circle is complete. You have acheived a higher level. Now go back to Tetrarch Thifiell. [30419-06.htm] Arkenia: I congratulate you on completing the Initiation Ceremony of Shilen. Now take the letter that I gave you to Tetrarch Thifiell. [30463-01.htm] Master Ixia: Belladonna? Of course I can make it for you. But first I need a few things. I need Medusa Blood, Marsh Spider Fluids, Dead Seeker Dung, Tyrant's Blood, and Nightshade Root. Please bring 10 of each. You will find the Dead Seeker bat at the execution ground in Dion, Tyrant in the Wastelands of Gludio, and the Nightshade Root can be obtained from the stakatos of Cruma Marshlands. Here is a list. Once you have gathered all the materials, bring them back to me. [30463-02.htm] Master Ixia: Hurry and bring me the materials for making Belladonna! Ask again about the materials [30463-02a.htm] Master Ixia: I need 10 each of Medusa Blood, Marsh Spider Fluids, Dead Seeker Dung, Tyrant's Blood, and Nightshade Root. Dead Seeker bats can be found on the execution ground of Dion, Tyrant is in the Wastelands of Gludio, and Nightshade Root can be obtained from the stakatos of Cruma Marshlands. [30463-03.htm] Master Ixia: You have found all the materials. Please wait as I create the Belladonna for you. You must be very careful! Belladonna is a strong poison. Just one drop will kill even a mighty bull! Here it is. Put it to good use. [30463-04.htm] Master Ixia: I won't ask what the Belladonna is for. Don't underestimate its power, just one single drop will turn his body into a corpse and send his spirit back to Shilen. [30463-05.htm] Master Ixia: Magister Kaira tells me that you are in the midst of a trial to advance to a higher rank... Does the Belladonna that I made for you the other day have anything to do with that? Anyway, I wish you good luck. [30476-01.htm] Magister Kaira: Our task is to discover the hidden truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but we understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength. We believe that the more truth and hidden knowledge we uncover, the stronger we will become. If you wish to advance to a higher level, you must learn more knowledge and truth. Most important, you must accomplish your previous task and excel at the introductory level. (This quest may only be undertaken by a character of level 37 and above.) [30476-02.htm] Magister Kaira: Our mission is to discover hidden facts and truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength. We believe that the more truth and hidden knowledge we reveal, the stronger we will become. If you wish to advance to a higher level, you must strive for more knowledge and truth. (This quest may only be undertaken by a Dark Elven character.) [30476-03.htm] Magister Kaira: Our mission is to discover hidden facts and reveal forgotten truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but we understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength. The more we uncover the truth and reveal hidden knowledge, the stronger we will become. This is what we firmly believe. If you can discover the Forbidden Knowledge and thereby enrich our spiritual heritage, you will be acknowledged for your contribution and be given the approval to advance to the higher rank of Warrior or Magician. "I shall discover the Forbidden Knowledge." [30476-04.htm] Magister Kaira: At last there is news of 'Kaysha's Revelation', which was thought lost. While the Human religious reformation distorted many facts about the goddess Shilen, this revelation contains the truth about the goddess, written in the age of giants. If only we could recover it we would gain a better understanding of the goddess and the source of her power. No doubt the original scroll of the revelation has been destroyed, but a copy of the revelation has being handed down until this day. Have you heard about Hornius the Human scholar from the imperial era? It is said that he was murdered by believers of Einhasad while researching Kaysha's Revelation. It is rumored that one of his students made a copy of the revelation. The name of the pupil is Alder. He was once a monk assigned to the shrine. He saved himself from being burned at the stake by the Inquisition by swearing that he would convert to Einhasad. But according to the recently found memoirs of Alder, he was convinced that Kaysha's Revelation was an important historical document. He therefore secretly made a copy and hid it away. We must find it. Ask about brother Alder. [30476-05.htm] Magister Kaira: Legend says that the Remains of Alder rest here in this village, in the shrine of Einhasad. If we acquire the remains, we could summon the spirit of Alder and ask him where he hid his copy of the revelation. Recently brother Metheus contacted us and offered to hand over the remains. Go and meet Brother Metheus. He is in Einhasad's shrine in this village. [30476-05a.htm] Magister Kaira: Alder's Ash lies in the Einhasad Temple here in town. If you can obtain it, you can use the exorcism ritual to call the Alder's spirit from Purgatory and ask where the Revelations are kept. Not long ago, Brother Metheus contacted us and said that he could give the Alder's Ash to us. Go meet with Brother Metheus. You will find him in the local Einhasad Temple. And take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. [30476-06.htm] Magister Kaira: Go to Einhasad's shrine and meet Brother Metheus. He has offered to give us the remains of Alder. You must be careful and very discreet. [30476-07.htm] Magister Kaira: I had a feeling that he expected something in return. Well, we have no choice. Do whatever he asks that is within your power. The most important thing is that we acquire the revelation. [30476-08.htm] Magister Kaira: Belladonna? When it comes to poison, Master Ixia from the Dion Castle Town is the expert. You should consult her. By the way, this guy Metheus...he is more dangerous than I thought. I had no idea that his heart was so full of hatred and revenge. [30476-09.htm] Magister Kaira: At last you have brought Alder's Skull. With this we can perform the exorcism ritual and summon the spirit of Alder. Let us begin... In the name of Shilen, Master of hell, Queen of the dead, thou who hast crossed the waters of forgetfulness, spirit of Eldus Bricent... Cross the border of life and death and appear to us! [30476-10.htm] Magister Kaira: You must find the descendant of Alder named 'Roa' immediately! Tell him the secret that Alder's spirit whispered to you and find out where the revelation is hidden. [30476-11.htm] Magister Kaira: The complete copy of the revelation which was thought to be lost 200 years ago is in our hands at last! Good job, brother of darkness. Thanks to your efforts our tribe will have an even better understanding of the dark arts. In return for your efforts I will give you the opportunity to advance to a higher rank. I am sure that would be satisfactory to you. "Yes, that is my wish." [30476-12.htm] Magister Kaira: I shall write you a Recommendation letter. Take it to Tetrarch Thifiell in the Dark Elves' Village. You will be given 'Shilen's Initiation'. When you successfully complete this test, you will receive the 'Mark of Fate' from the Tetrarch. [30476-13.htm] Magister Kaira: Your ambition is admirable, but you are still unprepared to take 'Shilen's Initiation'. Come back after you have accumulated more experience, then I will write you the letter of Recommendation. [30476-14.htm] Magister Kaira: Your time has not yet come. You must prepare more to realize your ambitions. Come back after you have accumulated more experience, then I will write you the Recommendation letter you must have in order to take 'Shilen's Initiation'. [30476-15.htm] Magister Kaira: Good. Now you are ready! I will write a letter of Recommendation for you. Take this letter to Tetrarch Thifiel of the Dark Elven Village. You will be given 'Shilen's Initiation' and receive the Mark of Abyss. [30476-16.htm] Magister Kaira: You must go back to the Dark Elven Forest and meet Tetrarch Thifiell. Follow his instructions and take 'Shilen's Initiation'. You will then receive the 'Mark of Fate' which is essential for advancement. Please hurry! [30476-17.htm] Magister Kaira: I pray you pass 'Shilen's Initiation' and are advanced to a higher rank. May the eye of the abyss lead you. [30613-01.htm] Alder's Spirit: This is a copy of Kaysha's Revelation, ancient religious scriptures that I transcribed at great risk to my life. I will safeguard it for future generations. Although it is dark elves who now seek its secrets, I find it rewarding that such an old truth is again known to the world. You may obtain a written copy of the revelation from Gludin's warehouse. First you must obtain a bill from my daughter 'Roa' who lives in this village. Go to her and say 'The moon emits light though you hide it with your hand.' She will then give you the bill. [30614-01.htm] Brother Metheus: Come in, Dark Elf. Do you know why I've asked you here? Once I had a beloved sister. She was the only family I had left. She was executed during the rebellion of farmers because of her relationship with the Bishops. And this after she was excommunicated! The High Priest said that her soul would be damned and her body could not be buried in consecrated ground! Einhasad teaches forgiveness and mercy but I cannot suppress the furious sadness of my heart. I must have revenge on those who killed my sister! If you will help me avenge my sister, I will take the skull of Brother Alder from the crypt in the temple. There are 2 things with which I need your help. First, find the remains of my sister in the Execution Ground. Her body hangs from the branches of a tree. This is no normal tree, but a fearsome creature the undead call Hangman Tree. Once you retrieve my sister's remains, put them in this pot and bring them to me. [30614-02.htm] Brother Metheus: Go and find the remains of my sister on the Execution Ground. I cannot bear the thought of her body hanging from the branches of the Hangman Tree. Please bring my sister's body back to me! [30614-03.htm] Brother Metheus: Thank you so much. At last my sister can have a decent burial... If you could please help me with one more thing, I need you to bring me some 'Belladonna'. I have read that this poison can kill a bull with just one droplet! I intend to kill the Priest Criton who executed my sister with this same poison. Isn't it true that your race has some familiarity with poisons? Please fetch the Belladonna as soon as possible and I will give you the skull of Brother Alder. [30614-04.htm] Brother Metheus: Please bring me the 'Belladonna'. I intend to use it to avenge the death of my sister. I know that your race has some familiarity with poisons. From what I hear, there is a Dark Elf called 'Iksia' who is a real poison expert! If you will bring me Belladonna, you will receive the skull of Brother Alder you want so badly. [30614-05.htm] Brother Metheus: Thank you so much! At last my sister's death will be avenged! Although I shall surely be damned for it, I intend to personally see the beast get what he gave to my beloved sister. Here is the skull of Alder from the crypt of the temple as I promised. Take it. [30614-06.htm] Brother Metheus: After I bury my sister I shall avenge her death. You Dark Elves have been very useful to my preparations for this day, but I will take it from here. [31845-01.htm] Bloody Pixy: The Dark Elves created the guardian of darkness to overcome their numerous enemies during the battle of the Humans and Elves of Light. The father of Dark Elves, Tetrarch Thifiell, brought a treant from the Emerald Forest and planted it in the corpses of 66 Tree Elves, creating the first blight treant. His minions kidnapped the queen of red pixy from the Enchanted Valley and subjected her to a very cruel ritual. As a result, the first bloody pixy was born, a crimson spirit with a taste for blood... Ask about the Red Fairy Dust. [31845-02.htm] Bloody Pixy: I know what you want! You have come for the bloody Fairy Dust! Do you think I would just give it to you for free? If you do me a favor, I will give you what you seek. So listen closely! Our queen is a collector of bones. She seems most happy when she is arranging the skulls of strange animals. I admit, she is a little eccentric, but she is my queen! I will give you the Red Fairy Dust if you bring 10 skulls each, from the grandis, karul bugbear, Breka Orc Overlord, Leto Lizardman overlord! I swear on this jewel! Grandis can be found in Death Pass. Karul bugbears can be found in Hunters Valley. Breka orc overlords are located in Breka's Stronghold. And, Leto Lizardman overlords can usually be found on the Plains of the Lizardmen. [31845-03.htm] Bloody Pixy: I will give you the Red Fairy Dust if you bring 10 skulls each from the grandis, karull bugbear, Breka Orc Overlord, and the Leto Lizardman overlord! Didn't you hear me swear on the jewel? Pixies always keep their promises! Would you like me to tell you once more where you can find them?! Grandis can be found in Death Pass. Karul bugbears can be found in Hunters Valley. Breka orc overlords are located in Breka's Stronghold. And, Leto Lizardman overlords are usually found on the Plains of the Lizardmen. [31845-04.htm] Bloody Pixy: You have collected all the skulls! I am impressed! The queen will be happy, too! Here is your Red Fairy Dust as promised! And remember this is much more valuable than the normal Silver Fairy Dust. [31845-05.htm] Bloody Pixy: Do you realize the value of the dust I gave you? Fairy Dust made by bloody pixies is 10 times more valuable than the normal Silver Fairy Dust! [31850-01.htm] Blight Treant: .This. place. is. where. the. great. blight. treants. settled. 66. corpses. of. Elves. our. ancestors. rooted. over. their. bodies. and. grew. by. drinking. their. blood. The. King. of. the. black. willows. in. the. Swampland. cast. his. greedy. eyes. on. our. land. The. black. willow. lurker. in the Swampland. shall. never. be. forgiven. "I will destroy the Black Willow Lurker!" [31850-02.htm] Blight Treant: To. kill. the. black. willow. lurker in. the. Swampland. you. must. break. off. its. branches. dig. out. its. roots. cut. off. its. stems. burn. its. stump. .You. must. bring. a. black. willow. lurker. leaf. Bring. it. and. you. shall. have. your. sap. of. blight. treant.. .I. give. you. my. word. Take. this. seed. as. my. bond. [31850-03.htm] Blight Treant: To. kill. the. black. willow. lurker you. must. break. off. its. branches. dig. out. its. roots. cut. off. its. stems. burn. its. stump. .You. must. bring. a. black. willow. lurker. leaf. Bring. it. and. you. shall. have. your. sap. of. blight. treant.. I. give. you. my. word. Take. this. seed. as. my. bond. [31850-04.htm] Blight Treant: You. have. killed. the. black. willow. lurker!. It. will. never. covet. our. land. again. Thank. you. so. much. Here. is. the. sap. of. blight. treant. [31850-05.htm] Blight Treant: Sap. of. blight. treant. This. precious. liquid. is. very. powerful. You. must. treat. it. with. care.
Исходник условий и наград (Java)
/*
 * Copyright (c) 2013 L2jMobius
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
 * IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
package quests.Q00219_TestimonyOfFate;

import java.util.HashMap;
import java.util.Map;

import org.l2jmobius.gameserver.entity.actor.Npc;
import org.l2jmobius.gameserver.entity.actor.Player;
import org.l2jmobius.gameserver.entity.actor.enums.creature.Race;
import org.l2jmobius.gameserver.mechanics.script.Quest;
import org.l2jmobius.gameserver.mechanics.script.QuestSound;
import org.l2jmobius.gameserver.mechanics.script.QuestState;
import org.l2jmobius.gameserver.mechanics.script.State;
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;

public class Q00219_TestimonyOfFate extends Quest
{
	// NPCs
	private static final int KAIRA = 30476;
	private static final int METHEUS = 30614;
	private static final int IXIA = 30463;
	private static final int ALDER_SPIRIT = 30613;
	private static final int ROA = 30114;
	private static final int NORMAN = 30210;
	private static final int THIFIELL = 30358;
	private static final int ARKENIA = 30419;
	private static final int BLOODY_PIXY = 31845;
	private static final int BLIGHT_TREANT = 31850;
	
	// Monsters
	private static final int HANGMAN_TREE = 20144;
	private static final int MARSH_STAKATO = 20157;
	private static final int MEDUSA = 20158;
	private static final int TYRANT = 20192;
	private static final int TYRANT_KINGPIN = 20193;
	private static final int DEAD_SEEKER = 20202;
	private static final int MARSH_STAKATO_WORKER = 20230;
	private static final int MARSH_STAKATO_SOLDIER = 20232;
	private static final int MARSH_SPIDER = 20233;
	private static final int MARSH_STAKATO_DRONE = 20234;
	private static final int BREKA_ORC_OVERLORD = 20270;
	private static final int GRANDIS = 20554;
	private static final int LETO_LIZARDMAN_OVERLORD = 20582;
	private static final int KARUL_BUGBEAR = 20600;
	private static final int BLACK_WILLOW_LURKER = 27079;
	
	// Items
	private static final int KAIRA_LETTER = 3173;
	private static final int METHEUS_FUNERAL_JAR = 3174;
	private static final int KASANDRA_REMAINS = 3175;
	private static final int HERBALISM_TEXTBOOK = 3176;
	private static final int IXIA_LIST = 3177;
	private static final int MEDUSA_ICHOR = 3178;
	private static final int MARSH_SPIDER_FLUIDS = 3179;
	private static final int DEAD_SEEKER_DUNG = 3180;
	private static final int TYRANT_BLOOD = 3181;
	private static final int NIGHTSHADE_ROOT = 3182;
	private static final int BELLADONNA = 3183;
	private static final int ALDER_SKULL_1 = 3184;
	private static final int ALDER_SKULL_2 = 3185;
	private static final int ALDER_RECEIPT = 3186;
	private static final int REVELATIONS_MANUSCRIPT = 3187;
	private static final int KAIRA_RECOMMENDATION = 3189;
	private static final int KAIRA_INSTRUCTIONS = 3188;
	private static final int PALUS_CHARM = 3190;
	private static final int THIFIELL_LETTER = 3191;
	private static final int ARKENIA_NOTE = 3192;
	private static final int PIXY_GARNET = 3193;
	private static final int GRANDIS_SKULL = 3194;
	private static final int KARUL_BUGBEAR_SKULL = 3195;
	private static final int BREKA_OVERLORD_SKULL = 3196;
	private static final int LETO_OVERLORD_SKULL = 3197;
	private static final int RED_FAIRY_DUST = 3198;
	private static final int BLIGHT_TREANT_SEED = 3199;
	private static final int BLACK_WILLOW_LEAF = 3200;
	private static final int BLIGHT_TREANT_SAP = 3201;
	private static final int ARKENIA_LETTER = 3202;
	
	// Rewards
	private static final int MARK_OF_FATE = 3172;
	private static final int DIMENSIONAL_DIAMOND = 7562;
	
	// Cond 6 drop chances
	private static final Map<Integer, Integer> CHANCES = new HashMap<>();
	static
	{
		CHANCES.put(DEAD_SEEKER, 500000);
		CHANCES.put(TYRANT, 500000);
		CHANCES.put(TYRANT_KINGPIN, 600000);
		CHANCES.put(MEDUSA, 500000);
		CHANCES.put(MARSH_STAKATO, 400000);
		CHANCES.put(MARSH_STAKATO_WORKER, 300000);
		CHANCES.put(MARSH_STAKATO_SOLDIER, 500000);
		CHANCES.put(MARSH_STAKATO_DRONE, 600000);
		CHANCES.put(MARSH_SPIDER, 500000);
	}
	
	public Q00219_TestimonyOfFate()
	{
		super(219, "Testimony of Fate");
		registerQuestItems(KAIRA_LETTER, METHEUS_FUNERAL_JAR, KASANDRA_REMAINS, HERBALISM_TEXTBOOK, IXIA_LIST, MEDUSA_ICHOR, MARSH_SPIDER_FLUIDS, DEAD_SEEKER_DUNG, TYRANT_BLOOD, NIGHTSHADE_ROOT, BELLADONNA, ALDER_SKULL_1, ALDER_SKULL_2, ALDER_RECEIPT, REVELATIONS_MANUSCRIPT, KAIRA_RECOMMENDATION, KAIRA_INSTRUCTIONS, PALUS_CHARM, THIFIELL_LETTER, ARKENIA_NOTE, PIXY_GARNET, GRANDIS_SKULL, KARUL_BUGBEAR_SKULL, BREKA_OVERLORD_SKULL, LETO_OVERLORD_SKULL, RED_FAIRY_DUST, BLIGHT_TREANT_SEED, BLACK_WILLOW_LEAF, BLIGHT_TREANT_SAP, ARKENIA_LETTER);
		addStartNpc(KAIRA);
		addTalkId(KAIRA, METHEUS, IXIA, ALDER_SPIRIT, ROA, NORMAN, THIFIELL, ARKENIA, BLOODY_PIXY, BLIGHT_TREANT);
		addKillId(HANGMAN_TREE, MARSH_STAKATO, MEDUSA, TYRANT, TYRANT_KINGPIN, DEAD_SEEKER, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_SPIDER, MARSH_STAKATO_DRONE, BREKA_ORC_OVERLORD, GRANDIS, LETO_LIZARDMAN_OVERLORD, KARUL_BUGBEAR, BLACK_WILLOW_LURKER);
	}
	
	@Override
	public String onEvent(String event, Npc npc, Player player)
	{
		String htmltext = event;
		final QuestState st = getQuestState(player, false);
		if (st == null)
		{
			return htmltext;
		}
		
		switch (event)
		{
			case "30476-05.htm":
			{
				st.startQuest();
				giveItems(player, KAIRA_LETTER, 1);
				if (!player.getVariables().getBoolean("secondClassChange37", false))
				{
					htmltext = "30476-05a.htm";
					giveItems(player, DIMENSIONAL_DIAMOND, DF_REWARD_37.get(player.getRace().ordinal()));
					player.getVariables().set("secondClassChange37", true);
				}
				break;
			}
			case "30114-04.htm":
			{
				st.setCond(12, true);
				takeItems(player, ALDER_SKULL_2, 1);
				giveItems(player, ALDER_RECEIPT, 1);
				break;
			}
			case "30476-12.htm":
			{
				if (player.getLevel() < 38)
				{
					htmltext = "30476-13.htm";
					st.setCond(14, true);
					giveItems(player, KAIRA_INSTRUCTIONS, 1);
				}
				else
				{
					st.setCond(15, true);
					takeItems(player, REVELATIONS_MANUSCRIPT, 1);
					giveItems(player, KAIRA_RECOMMENDATION, 1);
				}
				break;
			}
			case "30419-02.htm":
			{
				st.setCond(17, true);
				takeItems(player, THIFIELL_LETTER, 1);
				giveItems(player, ARKENIA_NOTE, 1);
				break;
			}
			case "31845-02.htm":
			{
				playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
				giveItems(player, PIXY_GARNET, 1);
				break;
			}
			case "31850-02.htm":
			{
				playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
				giveItems(player, BLIGHT_TREANT_SEED, 1);
				break;
			}
			case "30419-05.htm":
			{
				st.setCond(18, true);
				takeItems(player, ARKENIA_NOTE, 1);
				takeItems(player, BLIGHT_TREANT_SAP, 1);
				takeItems(player, RED_FAIRY_DUST, 1);
				giveItems(player, ARKENIA_LETTER, 1);
				break;
			}
		}
		
		return htmltext;
	}
	
	@Override
	public String onTalk(Npc npc, Player player)
	{
		String htmltext = getNoQuestMsg(player);
		final QuestState st = getQuestState(player, true);
		
		switch (st.getState())
		{
			case State.CREATED:
			{
				if (player.getRace() != Race.DARK_ELF)
				{
					htmltext = "30476-02.htm";
				}
				else if ((player.getLevel() < 37) || (player.getPlayerClass().level() != 1))
				{
					htmltext = "30476-01.htm";
				}
				else
				{
					htmltext = "30476-03.htm";
				}
				break;
			}
			case State.STARTED:
			{
				final int cond = st.getCond();
				switch (npc.getId())
				{
					case KAIRA:
					{
						if (cond == 1)
						{
							htmltext = "30476-06.htm";
						}
						else if ((cond == 2) || (cond == 3))
						{
							htmltext = "30476-07.htm";
						}
						else if ((cond > 3) && (cond < 9))
						{
							htmltext = "30476-08.htm";
						}
						else if (cond == 9)
						{
							htmltext = "30476-09.htm";
							st.setCond(10, true);
							takeItems(player, ALDER_SKULL_1, 1);
							addSpawn(ALDER_SPIRIT, player, false, 0);
						}
						else if ((cond > 9) && (cond < 13))
						{
							htmltext = "30476-10.htm";
						}
						else if (cond == 13)
						{
							htmltext = "30476-11.htm";
						}
						else if (cond == 14)
						{
							if (player.getLevel() < 38)
							{
								htmltext = "30476-14.htm";
							}
							else
							{
								htmltext = "30476-12.htm";
								st.setCond(15, true);
								takeItems(player, KAIRA_INSTRUCTIONS, 1);
								takeItems(player, REVELATIONS_MANUSCRIPT, 1);
								giveItems(player, KAIRA_RECOMMENDATION, 1);
							}
						}
						else if (cond == 15)
						{
							htmltext = "30476-16.htm";
						}
						else if (cond > 15)
						{
							htmltext = "30476-17.htm";
						}
						break;
					}
					case METHEUS:
					{
						if (cond == 1)
						{
							htmltext = "30614-01.htm";
							st.setCond(2, true);
							takeItems(player, KAIRA_LETTER, 1);
							giveItems(player, METHEUS_FUNERAL_JAR, 1);
						}
						else if (cond == 2)
						{
							htmltext = "30614-02.htm";
						}
						else if (cond == 3)
						{
							htmltext = "30614-03.htm";
							st.setCond(4);
							st.setCond(5, true);
							takeItems(player, KASANDRA_REMAINS, 1);
							giveItems(player, HERBALISM_TEXTBOOK, 1);
						}
						else if ((cond > 3) && (cond < 8))
						{
							htmltext = "30614-04.htm";
						}
						else if (cond == 8)
						{
							htmltext = "30614-05.htm";
							st.setCond(9, true);
							takeItems(player, BELLADONNA, 1);
							giveItems(player, ALDER_SKULL_1, 1);
						}
						else if (cond > 8)
						{
							htmltext = "30614-06.htm";
						}
						break;
					}
					case IXIA:
					{
						if (cond == 5)
						{
							htmltext = "30463-01.htm";
							st.setCond(6, true);
							takeItems(player, HERBALISM_TEXTBOOK, 1);
							giveItems(player, IXIA_LIST, 1);
						}
						else if (cond == 6)
						{
							htmltext = "30463-02.htm";
						}
						else if (cond == 7)
						{
							htmltext = "30463-03.htm";
							st.setCond(8, true);
							takeItems(player, IXIA_LIST, 1);
							takeItems(player, DEAD_SEEKER_DUNG, -1);
							takeItems(player, MARSH_SPIDER_FLUIDS, -1);
							takeItems(player, MEDUSA_ICHOR, -1);
							takeItems(player, NIGHTSHADE_ROOT, -1);
							takeItems(player, TYRANT_BLOOD, -1);
							giveItems(player, BELLADONNA, 1);
						}
						else if (cond == 8)
						{
							htmltext = "30463-04.htm";
						}
						else if (cond > 8)
						{
							htmltext = "30463-05.htm";
						}
						break;
					}
					case ALDER_SPIRIT:
					{
						if (cond == 10)
						{
							htmltext = "30613-01.htm";
							st.setCond(11, true);
							giveItems(player, ALDER_SKULL_2, 1);
							npc.deleteMe();
						}
						break;
					}
					case ROA:
					{
						if (cond == 11)
						{
							htmltext = "30114-01.htm";
						}
						else if (cond == 12)
						{
							htmltext = "30114-05.htm";
						}
						else if (cond > 12)
						{
							htmltext = "30114-06.htm";
						}
						break;
					}
					case NORMAN:
					{
						if (cond == 12)
						{
							htmltext = "30210-01.htm";
							st.setCond(13, true);
							takeItems(player, ALDER_RECEIPT, 1);
							giveItems(player, REVELATIONS_MANUSCRIPT, 1);
						}
						else if (cond > 12)
						{
							htmltext = "30210-02.htm";
						}
						break;
					}
					case THIFIELL:
					{
						if (cond == 15)
						{
							htmltext = "30358-01.htm";
							st.setCond(16, true);
							takeItems(player, KAIRA_RECOMMENDATION, 1);
							giveItems(player, PALUS_CHARM, 1);
							giveItems(player, THIFIELL_LETTER, 1);
						}
						else if (cond == 16)
						{
							htmltext = "30358-02.htm";
						}
						else if (cond == 17)
						{
							htmltext = "30358-03.htm";
						}
						else if (cond == 18)
						{
							htmltext = "30358-04.htm";
							takeItems(player, PALUS_CHARM, 1);
							takeItems(player, ARKENIA_LETTER, 1);
							giveItems(player, MARK_OF_FATE, 1);
							addExpAndSp(player, 68183, 1750);
							player.broadcastPacket(new SocialAction(player.getObjectId(), 3));
							st.exitQuest(false, true);
						}
						break;
					}
					case ARKENIA:
					{
						if (cond == 16)
						{
							htmltext = "30419-01.htm";
						}
						else if (cond == 17)
						{
							htmltext = (hasQuestItems(player, BLIGHT_TREANT_SAP) && hasQuestItems(player, RED_FAIRY_DUST)) ? "30419-04.htm" : "30419-03.htm";
						}
						else if (cond == 18)
						{
							htmltext = "30419-06.htm";
						}
						break;
					}
					case BLOODY_PIXY:
					{
						if (cond == 17)
						{
							if (hasQuestItems(player, PIXY_GARNET))
							{
								if ((getQuestItemsCount(player, GRANDIS_SKULL) >= 10) && (getQuestItemsCount(player, KARUL_BUGBEAR_SKULL) >= 10) && (getQuestItemsCount(player, BREKA_OVERLORD_SKULL) >= 10) && (getQuestItemsCount(player, LETO_OVERLORD_SKULL) >= 10))
								{
									htmltext = "31845-04.htm";
									playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
									takeItems(player, BREKA_OVERLORD_SKULL, -1);
									takeItems(player, GRANDIS_SKULL, -1);
									takeItems(player, KARUL_BUGBEAR_SKULL, -1);
									takeItems(player, LETO_OVERLORD_SKULL, -1);
									takeItems(player, PIXY_GARNET, 1);
									giveItems(player, RED_FAIRY_DUST, 1);
								}
								else
								{
									htmltext = "31845-03.htm";
								}
							}
							else if (hasQuestItems(player, RED_FAIRY_DUST))
							{
								htmltext = "31845-05.htm";
							}
							else
							{
								htmltext = "31845-01.htm";
							}
						}
						else if (cond == 18)
						{
							htmltext = "31845-05.htm";
						}
						break;
					}
					case BLIGHT_TREANT:
					{
						if (cond == 17)
						{
							if (hasQuestItems(player, BLIGHT_TREANT_SEED))
							{
								if (hasQuestItems(player, BLACK_WILLOW_LEAF))
								{
									htmltext = "31850-04.htm";
									playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
									takeItems(player, BLACK_WILLOW_LEAF, 1);
									takeItems(player, BLIGHT_TREANT_SEED, 1);
									giveItems(player, BLIGHT_TREANT_SAP, 1);
								}
								else
								{
									htmltext = "31850-03.htm";
								}
							}
							else if (hasQuestItems(player, BLIGHT_TREANT_SAP))
							{
								htmltext = "31850-05.htm";
							}
							else
							{
								htmltext = "31850-01.htm";
							}
						}
						else if (cond == 18)
						{
							htmltext = "31850-05.htm";
						}
						break;
					}
				}
				break;
			}
			case State.COMPLETED:
			{
				htmltext = getAlreadyCompletedMsg(player);
				break;
			}
		}
		
		return htmltext;
	}
	
	@Override
	public void onKill(Npc npc, Player player, boolean isPet)
	{
		final QuestState st = getQuestState(player, false);
		if ((st == null) || !st.isStarted())
		{
			return;
		}
		
		final int npcId = npc.getId();
		
		switch (npcId)
		{
			case HANGMAN_TREE:
			{
				if (st.isCond(2))
				{
					st.setCond(3, true);
					takeItems(player, METHEUS_FUNERAL_JAR, 1);
					giveItems(player, KASANDRA_REMAINS, 1);
				}
				break;
			}
			case DEAD_SEEKER:
			{
				if (st.isCond(6) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) < 10) && (getRandom(1000000) < CHANCES.get(npcId)))
				{
					giveItems(player, DEAD_SEEKER_DUNG, 1);
					if ((getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, TYRANT_BLOOD) >= 10) && (getQuestItemsCount(player, MEDUSA_ICHOR) >= 10) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10))
					{
						st.setCond(7, true);
					}
					else
					{
						playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
					}
				}
				break;
			}
			case TYRANT:
			case TYRANT_KINGPIN:
			{
				if (st.isCond(6) && (getQuestItemsCount(player, TYRANT_BLOOD) < 10) && (getRandom(1000000) < CHANCES.get(npcId)))
				{
					giveItems(player, TYRANT_BLOOD, 1);
					if ((getQuestItemsCount(player, TYRANT_BLOOD) >= 10) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, MEDUSA_ICHOR) >= 10) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10))
					{
						st.setCond(7, true);
					}
					else
					{
						playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
					}
				}
				break;
			}
			case MEDUSA:
			{
				if (st.isCond(6) && (getQuestItemsCount(player, MEDUSA_ICHOR) < 10) && (getRandom(1000000) < CHANCES.get(npcId)))
				{
					giveItems(player, MEDUSA_ICHOR, 1);
					if ((getQuestItemsCount(player, MEDUSA_ICHOR) >= 10) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, TYRANT_BLOOD) >= 10) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10))
					{
						st.setCond(7, true);
					}
					else
					{
						playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
					}
				}
				break;
			}
			case MARSH_STAKATO:
			case MARSH_STAKATO_WORKER:
			case MARSH_STAKATO_SOLDIER:
			case MARSH_STAKATO_DRONE:
			{
				if (st.isCond(6) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) < 10) && (getRandom(1000000) < CHANCES.get(npcId)))
				{
					giveItems(player, NIGHTSHADE_ROOT, 1);
					if ((getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, TYRANT_BLOOD) >= 10) && (getQuestItemsCount(player, MEDUSA_ICHOR) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10))
					{
						st.setCond(7, true);
					}
					else
					{
						playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
					}
				}
				break;
			}
			case MARSH_SPIDER:
			{
				if (st.isCond(6) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) < 10) && (getRandom(1000000) < CHANCES.get(npcId)))
				{
					giveItems(player, MARSH_SPIDER_FLUIDS, 1);
					if ((getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, TYRANT_BLOOD) >= 10) && (getQuestItemsCount(player, MEDUSA_ICHOR) >= 10) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10))
					{
						st.setCond(7, true);
					}
					else
					{
						playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
					}
				}
				break;
			}
			case GRANDIS:
			{
				if (hasQuestItems(player, PIXY_GARNET) && (getQuestItemsCount(player, GRANDIS_SKULL) < 10))
				{
					giveItems(player, GRANDIS_SKULL, 1);
				}
				break;
			}
			case LETO_LIZARDMAN_OVERLORD:
			{
				if (hasQuestItems(player, PIXY_GARNET) && (getQuestItemsCount(player, LETO_OVERLORD_SKULL) < 10))
				{
					giveItems(player, LETO_OVERLORD_SKULL, 1);
				}
				break;
			}
			case BREKA_ORC_OVERLORD:
			{
				if (hasQuestItems(player, PIXY_GARNET) && (getQuestItemsCount(player, BREKA_OVERLORD_SKULL) < 10))
				{
					giveItems(player, BREKA_OVERLORD_SKULL, 1);
				}
				break;
			}
			case KARUL_BUGBEAR:
			{
				if (hasQuestItems(player, PIXY_GARNET) && (getQuestItemsCount(player, KARUL_BUGBEAR_SKULL) < 10))
				{
					giveItems(player, KARUL_BUGBEAR_SKULL, 1);
				}
				break;
			}
			case BLACK_WILLOW_LURKER:
			{
				if (hasQuestItems(player, BLIGHT_TREANT_SEED) && (getQuestItemsCount(player, BLACK_WILLOW_LEAF) < 1))
				{
					giveItems(player, BLACK_WILLOW_LEAF, 1);
				}
				break;
			}
		}
	}
}