ZURSULUS L2

Path to become a Scavenger

ID
417
Название
Path to become a Scavenger
start_npcs_json
[30524]
npc_ids_json
[20403,20508,20777,27058,30316,30517,30519,30524,30525,30538,30556,30557,31958]
constants_json
{"RAUT":30316,"SHARI":30517,"MION":30519,"PIPPI":30524,"BRONK":30525,"ZIMENF":30538,"TOMA":30556,"TORAI":30557,"YASHENI":31958,"HUNTER_TARANTULA":20403,"PLUNDER_TARANTULA":20508,"HUNTER_BEAR":20777,"HONEY_BEAR":27058,"RING_OF_RAVEN":1642,"PIPPI_LETTER":1643,"RAUT_TELEPORT_SCROLL":1644,"SUCCUBUS_UNDIES":1645,"MION_LETTER":1646,"BRONK_INGOT":1647,"SHARI_AXE":1648,"ZIMENF_POTION":1649,"BRONK_PAY":1650,"SHARI_PAY":1651,"ZIMENF_PAY":1652,"BEAR_PICTURE":1653,"TARANTULA_PICTURE":1654,"HONEY_JAR":1655,"BEAD":1656,"BEAD_PARCEL_1":1657,"BEAD_PARCEL_2":8543}
Статус разбора
metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
Источник
game/data/scripts/quests/Q00417_PathOfTheScavenger/Q00417_PathOfTheScavenger.java

NPC квеста

IDНазваниеСтарт квестаУровень
20403Hunter TarantulaНет16
20508Plunder TarantulaНет17
20777Hunter BearНет14
27058Honey BearНет17
30316RautНет70
30517ShariНет70
30519MionНет70
30524PippiДа70
30525BronkНет70
30538ZimenfНет70
30556TomaНет70
30557ToraiНет70
31958YasheniНет70

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

else if (player.getLevel() < 19)

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

giveItems(player, PIPPI_LETTER, 1);
giveItems(player, ZIMENF_POTION - random, 1);
giveItems(player, ZIMENF_POTION - random, 1);
giveItems(player, MION_LETTER, 1);
giveItems(player, BEAD_PARCEL_1, 1);
giveItems(player, BEAD_PARCEL_2, 1);
giveItems(player, RAUT_TELEPORT_SCROLL, 1);
giveItems(player, SUCCUBUS_UNDIES, 1);
giveItems(player, RING_OF_RAVEN, 1);
addExpAndSp(player, 3200, 7080);
giveItems(player, MION_LETTER, 1);
giveItems(player, SHARI_PAY, 1);
giveItems(player, BRONK_PAY, 1);
giveItems(player, ZIMENF_PAY, 1);
giveItems(player, BEAR_PICTURE, 1);
giveItems(player, TARANTULA_PICTURE, 1);
giveItems(player, RING_OF_RAVEN, 1);
addExpAndSp(player, 3200, 7080);
giveItems(player, HONEY_JAR, 1);
giveItems(player, BEAD, 1);

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

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

[30316-01.htm] Warehouse Keeper Raut: What? This takes the place of the debt? This is not even a tenth of what he borrowed from me! Hmm... If you do one favor for me on behalf of that sneak, then I will consider the debt repaid. What do you think? I'll do it! No! [30316-02.htm] Warehouse Keeper Raut: Good, I like your frankness. Actually, I have a nuisance of a nephew. One day the rascal was teased by his friends because he had bluffed that he could sell items to the monsters of Dragon Valley. And then the next day, he left with everything in the warehouse! Since he is the only child of my deceased brother, I have no choice but to find him. Please go and find him for me. Also, this is a scroll of return. Tell my nephew to use it so he can return immediately. I'm sorry there is only one. Well then, good luck on your journey. [30316-03.htm] Warehouse Keeper Raut: I'm sorry but you must do it. Do you know what that fraud Toma gave me when he said he would repay his debts? It is none other than the mark of the raider that you want. Now do you know why you must listen to my request? Then let me tell you what you need to do. I have a nuisance of a nephew. One day the rascal was teased by his friends because he had bluffed that he could sell items to the monsters of Dragon Valley. And then the next day, he left with everything in the warehouse! Since he is the only child of my deceased brother, I have no choice but to find him. Please go and find him for me. Also, this is a scroll of return. Tell my nephew to use it so he can return immediately. Well then, good luck on your journey. [30316-04.htm] Warehouse Keeper Raut: Torai said he was going to Dragon Valley. He speaks with an accent because he lives in the country, so you will be able to recognize him. I hope he is safe... Phew... Thank goodness. [30316-05.htm] Warehouse Keeper Raut: The rascal has already arrived. Thank you. Hey, that's my wife's prized possession, taken by Torai! Give that here! Phew! Anyway, since you did the job, I will keep my promise. Here is the mark of the scavenger. Take this to Warehouse Chief Moke to change profession to Scavenger. [30517-01.htm] Trader Shari: Oh, it's finally arrived! Thank you, thank you! Here is your payment. Please tell Mion I'm very grateful! [30517-02.htm] Trader Shari: Oh, it's finally arrived! Thank you a! Here is the payment... (Tsk, tsk...poor fool, to be victimized by Mion!) What's that? Was that out loud? Oh, I was just talking to myself, friend -- just...figuring out some shelving issues... [30517-03.htm] Trader Shari: Give the payment to Mion, please. Be sure to say how grateful I am. Well, you'd best be on your way. Good day! [30519-01.htm] Trader Mion: You're looking for my brother? But he wanders around here and there ... so it is very difficult to find him. More than that, he has made some kind of Teleport Device, so it is even harder to find him!! Well, how about this? If you help me with my work, I will see if I can find out where he is ... Say you will help with the work [30519-02.htm] Trader Mion: Good! Then please take this potion to Priest of the Earth Zimenf and bring back the payment for it as well. Thank you in advance! [30519-03.htm] Trader Mion: Good! Then please take this weapon to Trader Shari. And you must bring back the payment for it! Thank you in advance! [30519-04.htm] Trader Mion: Good. Then please take this Lump of Iron to Head Blacksmith Bronk at the blacksmith's shop. And you must bring back the payment for it! Thank you in advance! [30519-05.htm] Trader Mion: Please go quickly! Our shop is famous for its quick deliveries! Don't worry about finding my brother, just hurry on! All right! No! [30519-06.htm] Trader Mion: All right, now! Well, don't just stand there ... go on! [30519-07.htm] Trader Mion: Excuse me! Do you know how hard it is to find my brother? Isn't it proper to do something in return to help? Humph ... you're too much ... Well, have it your way! Look for him all your life! See if you can find him, humph! Humph! [30519-08.htm] Trader Mion: Do you have a problem? Didn't I tell you? It. is. very. difficult. to. find. my. brother. Well, now that you know, off to your deliveries! All right! No! [30519-09.htm] Trader Mion: Look here, now I almost know where my brother is! You can't pretend not to know me now, right? If you'd have waited a bit longer, you could have found my brother!! Truly, I am so sorry! [30519-10.htm] Dwarf Goods Trader Mion: Hmph! I thought I'd be able to boss you around for free thanks to my brother, but you're just as lazy as he is! It would be easier for me to just do it myself... My brother said that he was going to the northern coast to see the vast ocean. Heh...I imagine you'll find it a little tough to track him down, though! Well, good luck... [30519-11.htm] Trader Mion: Good! Now please deliver this item! Oh yes! Don't forget to bring back the payment! (It is quite hard to order someone around.) Ah ... Nothing, nothing! Go on! [30519-12.htm] Trader Mion: Wow, thank you so much! But finding my brother ... is taking longer than I thought! Oh dear. Until then, please help me with my work! What? Will you help me? All right! [30519-13.htm] Dwarf Goods Trader Mion: You say that you forgot? How lazy and careless! My brother went to the northern coast to see the vast ocean. Don't forget this time! [30519-14.htm] Trader Mion: You must hurry and become a Scavenger! Good luck! [30519-15.htm] Dwarf Goods Trader Mion: Say, I heard some news about my brother. It seems that he went to the northern coast to see the vast ocean for himself. Heh...you may find it a little difficult to track him down, though. Good luck, I guess. [30524-01.htm] Collector Pippi: You wish to become a Scavenger? How commendable of you! There should be more bright youngsters like yourself, but they are all too rare ... What good is an Artisan anyway? All you do is work your back off under someone else all your life. When would you even touch a stuffed money pouch? Tsk, tsk ... Compared to that, if you become a Scavenger you can enjoy a successful life in your later years, just like me, if you're willing to put up with just a little trouble in your youth. You have made an excellent choice. Well then, shall I tell you how to become a Scavenger? Say you want to become a Scavenger [30524-02.htm] Collector Pippi: Excuse me. Your shoelace is untied! Look down at shoelace [30524-02a.htm] Collector Pippi: What? But you are already a Scavenger! You haven't forgotten the most important thing, have you? That's right! Tithe! Don't forget! [30524-03.htm] Collector Pippi: That's a lie! Come back after your nose stops running, eh? (Only characters who are level 19 or above may undertake this quest.) [30524-04.htm] Collector Pippi: What's the most important thing when you become a Scavenger? That's it! Tithe! Don't forget! [30524-05.htm] Collector Pippi: Well, I will tell you ... I don't know anything about the test. But really, I don't think that the test is important. The one really important thing, if you ask me, is tithing. Do you know how much money the guild spends on managing just one member? From guild uniforms to insurance and information fees, to giving good information to guild members ... a lot of money is needed. To obtain those funds, the most important thing is tithing, giving ten percent of what you earn ... Ah ... How to become a Scavenger? Only Master Toma can confirm it. His sister Trader Mion knows where he is, so ask her. I'll write you a Letter of Introduction. [30524-06.htm] Collector Pippi: If you want to know where Master Toma is, go to Trader Mion! Didn't I give you a Letter of Introduction? [30524-07.htm] Collector Pippi: Haven't you become a Scavenger yet? Try working a little harder! [30524-08.htm] Dwarven Collector Pippi: How about an Orc Shaman instead of a Scavenger? Go to the Orc Village. [30525-01.htm] Head Blacksmith Bronk: Oh! I was waiting for you. Now I can make the item. Here is the payment. Please tell Mion that I am grateful! [30525-02.htm] Head Blacksmith Bronk: Oh! I was waiting for you. Now I can make the item. Here is the payment. (Foolish fellow. You're being tricked by Mion ...) Hmm? No, I didn't say anything ... just tell Mion that I said thank you! [30525-03.htm] Head Blacksmith Bronk: Go along and take the money to Mion. [30538-01.htm] Priest of the Earth Zimenf: Thank you. Now I can prepare for the ritual, I say! I sincerely, truly thank you!! I must hurry to prepare the ritual. I say, the high priest will scold me if I am late. Take this. It is the payment for the item, I say. Please tell Mion that I am grateful. Karna Mafra! [30538-02.htm] Priest of the Earth Zimenf: I sincerely truly thank you!! Now I can prepare for the ritual, I say! I sincerely, truly thank you!! I must hurry to prepare the ritual. I say, the high priest will scold me if I am late. (I see Mion is sending you on errands with her brother as bait ... hee hee hee ...) What? Oh, nothing. I was just talking to myself. Please tell Mion thank you. Karna Mafra! [30538-03.htm] Priest of the Earth Zimenf: Please thank Mion for the item. And I say, be careful in taking the payment that I gave you. Karna Mafra ... [30556-01.htm] Master Toma: Who are you? Oh, a letter from Mion? Hmm... So you want to be a Scavenger? Do just as I say. This body yearns for something sweet. What do you think? My friend says that if you kill a hunter bear, you can obtain an amazing honey. Please bring me just five Honey Jars. Knock down the Honey Bear and rummage through with Spoil and bring back the honey. First of all, find the hunter bear. The Honey Bear appears sometimes after killing a hunter bear. Where is the hunter bear, you ask? Then listen well to what I have to say. If you go straight up toward the north at the west entrance of the Abandoned Coal Mines, there is a place where two divided coastlines meet. There are a lot of the bears there. Take a look at the Map for more details. [30556-02.htm] Master Toma: Shut up and bring me five Honey Jars at once! You're such an idiot! First you must kill the hunter bear. The Honey Bear will appear afterwards. Conquer the Honey Bear and search him with the spoil. Then you'll find the Honey Jars. You can find many hunter bears at the place where two divided coastlines meet, at the west entrance of the Abandoned Coal Mines. It's on the Map. [30556-03.htm] Master Toma: Oh, mmm... mmm... Truly delicious ... This time, hunt some monsters. Go after the hunter tarantula or plunder tarantula and bring me the beads they're holding. Bring back at least twenty. And don't forget to take it out with spoil. [30556-04.htm] Master Toma: Stop speaking to me. You must bring at least 20 beads. I am truly disappointed. Go back and catch hunter tarantulas or plunder tarantulas and poke around with a sweeper and quickly bring them to me. [30556-05a.htm] Master Toma: A shining bead... Well done! You can complete the test by taking this to my friend. I owe so many of my friends... How will you choose one? Well, would you prefer one that is close or far away? "The one farthest away." "The closest one." [30556-05b.htm] Master Toma: A shining bead... Well done! You can finish the test by taking this to my friend Raut, a Warehouse Keeper in the Town of Gludin. Tell him I'm paying him back for the time he paid for my drinks. Good luck! [30556-06a.htm] Master Toma: Take it to Raut, A Warehouse Keeper in the Town of Gludin. Hurry! [30556-06b.htm] Master Toma: A shining bead... Well done! You can finish the test by taking this to my friend Yasheni, a Warehouse Chief in the Town of Schuttgart. Good luck! [30556-06c.htm] Master Toma: Take it to Yasheni, the Warehouse Chief in the Town of Schuttgart. Hurry up! [30556-07.htm] Master Toma: Scavenger-to-be, good luck! [30557-01.htm] Torai: Oh my, I 'most died trying to sell these. I tried to sell breast covers to the purty ladies in the valley but they showed their teeth and follered me, sos I ran until my feet sweat. Now I wanna go home ... Gives teleport scroll [30557-02.htm] Torai: Ooh ... Did my uncle send it? Uncle- I've been bad. I'll be a good boy when I go back. Thank you. I picked it up 'round here, please take it. It is my 'preciation. Gratefully receive gift [30557-03.htm] Torai: Good wishes, then! I'm off ... [31958-01.htm] Warehouse Chief Yasheni: Oh, so Master Toma sent you... He really sends strange things to pay his food bill! I'm quite disappointed in him! These small marbles are useless to me! OK. Get going. Look at him awkwardly [31958-02.htm] Warehouse Chief Yasheni: Ah ha! That must be it! If Master Toma sent you, then that must be it! You came here to become a Scavenger, right? If you've met Toma and carried out his work, then I think I can trust you. Here, I'll give you this. Take it to Warehouse Chief Alder over there. He'll test your talent and transfer you to the Scavenger class.
Исходник условий и наград (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.Q00417_PathOfTheScavenger;

import org.l2jmobius.gameserver.entity.actor.Npc;
import org.l2jmobius.gameserver.entity.actor.Player;
import org.l2jmobius.gameserver.entity.actor.enums.player.PlayerClass;
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 Q00417_PathOfTheScavenger extends Quest
{
	// NPCs
	private static final int RAUT = 30316;
	private static final int SHARI = 30517;
	private static final int MION = 30519;
	private static final int PIPPI = 30524;
	private static final int BRONK = 30525;
	private static final int ZIMENF = 30538;
	private static final int TOMA = 30556;
	private static final int TORAI = 30557;
	private static final int YASHENI = 31958;
	
	// Monsters
	private static final int HUNTER_TARANTULA = 20403;
	private static final int PLUNDER_TARANTULA = 20508;
	private static final int HUNTER_BEAR = 20777;
	private static final int HONEY_BEAR = 27058;
	
	// Items
	private static final int RING_OF_RAVEN = 1642;
	private static final int PIPPI_LETTER = 1643;
	private static final int RAUT_TELEPORT_SCROLL = 1644;
	private static final int SUCCUBUS_UNDIES = 1645;
	private static final int MION_LETTER = 1646;
	private static final int BRONK_INGOT = 1647;
	private static final int SHARI_AXE = 1648;
	private static final int ZIMENF_POTION = 1649;
	private static final int BRONK_PAY = 1650;
	private static final int SHARI_PAY = 1651;
	private static final int ZIMENF_PAY = 1652;
	private static final int BEAR_PICTURE = 1653;
	private static final int TARANTULA_PICTURE = 1654;
	private static final int HONEY_JAR = 1655;
	private static final int BEAD = 1656;
	private static final int BEAD_PARCEL_1 = 1657;
	private static final int BEAD_PARCEL_2 = 8543;
	
	public Q00417_PathOfTheScavenger()
	{
		super(417, "Path to become a Scavenger");
		registerQuestItems(PIPPI_LETTER, RAUT_TELEPORT_SCROLL, SUCCUBUS_UNDIES, MION_LETTER, BRONK_INGOT, SHARI_AXE, ZIMENF_POTION, BRONK_PAY, SHARI_PAY, ZIMENF_PAY, BEAR_PICTURE, TARANTULA_PICTURE, HONEY_JAR, BEAD, BEAD_PARCEL_1, BEAD_PARCEL_2);
		addStartNpc(PIPPI);
		addTalkId(RAUT, SHARI, MION, PIPPI, BRONK, ZIMENF, TOMA, TORAI, YASHENI);
		addKillId(HUNTER_TARANTULA, PLUNDER_TARANTULA, HUNTER_BEAR, HONEY_BEAR);
	}
	
	@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 "30524-05.htm":
			{
				if (player.getPlayerClass() != PlayerClass.DWARVEN_FIGHTER)
				{
					htmltext = (player.getPlayerClass() == PlayerClass.SCAVENGER) ? "30524-02a.htm" : "30524-08.htm";
				}
				else if (player.getLevel() < 19)
				{
					htmltext = "30524-02.htm";
				}
				else if (hasQuestItems(player, RING_OF_RAVEN))
				{
					htmltext = "30524-04.htm";
				}
				else
				{
					st.startQuest();
					giveItems(player, PIPPI_LETTER, 1);
				}
				break;
			}
			case "30519_1":
			{
				final int random = getRandom(3);
				htmltext = "30519-0" + (random + 2) + ".htm";
				st.setCond(2, true);
				takeItems(player, PIPPI_LETTER, -1);
				giveItems(player, ZIMENF_POTION - random, 1);
				break;
			}
			case "30519_2":
			{
				final int random = getRandom(3);
				htmltext = "30519-0" + (random + 2) + ".htm";
				takeItems(player, BRONK_PAY, -1);
				takeItems(player, SHARI_PAY, -1);
				takeItems(player, ZIMENF_PAY, -1);
				giveItems(player, ZIMENF_POTION - random, 1);
				break;
			}
			case "30519-07.htm":
			{
				st.set("id", String.valueOf(st.getInt("id") + 1));
				break;
			}
			case "30519-09.htm":
			{
				final int id = st.getInt("id");
				if ((id / 10) < 2)
				{
					htmltext = "30519-07.htm";
					st.set("id", String.valueOf(id + 1));
				}
				else if ((id / 10) == 2)
				{
					st.set("id", String.valueOf(id + 1));
				}
				else if ((id / 10) >= 3)
				{
					htmltext = "30519-10.htm";
					st.setCond(4, true);
					takeItems(player, SHARI_AXE, -1);
					takeItems(player, ZIMENF_POTION, -1);
					takeItems(player, BRONK_INGOT, -1);
					giveItems(player, MION_LETTER, 1);
				}
				break;
			}
			case "30519-11.htm":
			{
				if (getRandomBoolean())
				{
					htmltext = "30519-06.htm";
				}
				break;
			}
			case "30556-05b.htm":
			{
				st.setCond(9, true);
				takeItems(player, BEAD, -1);
				takeItems(player, TARANTULA_PICTURE, 1);
				giveItems(player, BEAD_PARCEL_1, 1);
				break;
			}
			case "30556-06b.htm":
			{
				st.setCond(12, true);
				takeItems(player, BEAD, -1);
				takeItems(player, TARANTULA_PICTURE, 1);
				giveItems(player, BEAD_PARCEL_2, 1);
				break;
			}
			case "30316-02.htm":
			case "30316-03.htm":
			{
				st.setCond(10, true);
				takeItems(player, BEAD_PARCEL_1, 1);
				giveItems(player, RAUT_TELEPORT_SCROLL, 1);
				break;
			}
			case "30557-03.htm":
			{
				st.setCond(11, true);
				takeItems(player, RAUT_TELEPORT_SCROLL, 1);
				giveItems(player, SUCCUBUS_UNDIES, 1);
				break;
			}
			case "31958-02.htm":
			{
				takeItems(player, BEAD_PARCEL_2, 1);
				giveItems(player, RING_OF_RAVEN, 1);
				addExpAndSp(player, 3200, 7080);
				player.broadcastPacket(new SocialAction(player.getObjectId(), 3));
				st.exitQuest(true, true);
				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:
			{
				htmltext = "30524-01.htm";
				break;
			}
			case State.STARTED:
			{
				final int cond = st.getCond();
				switch (npc.getId())
				{
					case PIPPI:
					{
						if (cond == 1)
						{
							htmltext = "30524-06.htm";
						}
						else if (cond > 1)
						{
							htmltext = "30524-07.htm";
						}
						break;
					}
					case MION:
					{
						if (hasQuestItems(player, PIPPI_LETTER))
						{
							htmltext = "30519-01.htm";
						}
						else if (hasAtLeastOneQuestItem(player, BRONK_INGOT, SHARI_AXE, ZIMENF_POTION))
						{
							final int id = st.getInt("id");
							if ((id / 10) == 0)
							{
								htmltext = "30519-05.htm";
							}
							else
							{
								htmltext = "30519-08.htm";
							}
						}
						else if (hasAtLeastOneQuestItem(player, BRONK_PAY, SHARI_PAY, ZIMENF_PAY))
						{
							final int id = st.getInt("id");
							if (id < 50)
							{
								htmltext = "30519-12.htm";
							}
							else
							{
								htmltext = "30519-15.htm";
								st.setCond(4, true);
								takeItems(player, BRONK_PAY, -1);
								takeItems(player, SHARI_PAY, -1);
								takeItems(player, ZIMENF_PAY, -1);
								giveItems(player, MION_LETTER, 1);
							}
						}
						else if (cond == 4)
						{
							htmltext = "30519-13.htm";
						}
						else if (cond > 4)
						{
							htmltext = "30519-14.htm";
						}
						break;
					}
					case SHARI:
					{
						if (hasQuestItems(player, SHARI_AXE))
						{
							final int id = st.getInt("id");
							if (id < 20)
							{
								htmltext = "30517-01.htm";
							}
							else
							{
								htmltext = "30517-02.htm";
								st.setCond(3, true);
							}
							
							st.set("id", String.valueOf(id + 10));
							takeItems(player, SHARI_AXE, 1);
							giveItems(player, SHARI_PAY, 1);
						}
						else if (hasQuestItems(player, SHARI_PAY))
						{
							htmltext = "30517-03.htm";
						}
						break;
					}
					case BRONK:
					{
						if (hasQuestItems(player, BRONK_INGOT))
						{
							final int id = st.getInt("id");
							if (id < 20)
							{
								htmltext = "30525-01.htm";
							}
							else
							{
								htmltext = "30525-02.htm";
								st.setCond(3, true);
							}
							
							st.set("id", String.valueOf(id + 10));
							takeItems(player, BRONK_INGOT, 1);
							giveItems(player, BRONK_PAY, 1);
						}
						else if (hasQuestItems(player, BRONK_PAY))
						{
							htmltext = "30525-03.htm";
						}
						break;
					}
					case ZIMENF:
					{
						if (hasQuestItems(player, ZIMENF_POTION))
						{
							final int id = st.getInt("id");
							if (id < 20)
							{
								htmltext = "30538-01.htm";
							}
							else
							{
								htmltext = "30538-02.htm";
								st.setCond(3, true);
							}
							
							st.set("id", String.valueOf(id + 10));
							takeItems(player, ZIMENF_POTION, 1);
							giveItems(player, ZIMENF_PAY, 1);
						}
						else if (hasQuestItems(player, ZIMENF_PAY))
						{
							htmltext = "30538-03.htm";
						}
						break;
					}
					case TOMA:
					{
						if (cond == 4)
						{
							htmltext = "30556-01.htm";
							st.setCond(5, true);
							takeItems(player, MION_LETTER, 1);
							giveItems(player, BEAR_PICTURE, 1);
						}
						else if (cond == 5)
						{
							htmltext = "30556-02.htm";
						}
						else if (cond == 6)
						{
							htmltext = "30556-03.htm";
							st.setCond(7, true);
							takeItems(player, HONEY_JAR, -1);
							takeItems(player, BEAR_PICTURE, 1);
							giveItems(player, TARANTULA_PICTURE, 1);
						}
						else if (cond == 7)
						{
							htmltext = "30556-04.htm";
						}
						else if (cond == 8)
						{
							htmltext = "30556-05a.htm";
						}
						else if (cond == 9)
						{
							htmltext = "30556-06a.htm";
						}
						else if ((cond == 10) || (cond == 11))
						{
							htmltext = "30556-07.htm";
						}
						else if (cond == 12)
						{
							htmltext = "30556-06c.htm";
						}
						break;
					}
					case RAUT:
					{
						if (cond == 9)
						{
							htmltext = "30316-01.htm";
						}
						else if (cond == 10)
						{
							htmltext = "30316-04.htm";
						}
						else if (cond == 11)
						{
							htmltext = "30316-05.htm";
							takeItems(player, SUCCUBUS_UNDIES, 1);
							giveItems(player, RING_OF_RAVEN, 1);
							addExpAndSp(player, 3200, 7080);
							player.broadcastPacket(new SocialAction(player.getObjectId(), 3));
							st.exitQuest(true, true);
						}
						break;
					}
					case TORAI:
					{
						if (cond == 10)
						{
							htmltext = "30557-01.htm";
						}
						break;
					}
					case YASHENI:
					{
						if (cond == 12)
						{
							htmltext = "31958-01.htm";
						}
						break;
					}
				}
				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;
		}
		
		switch (npc.getId())
		{
			case HUNTER_BEAR:
			{
				if (st.isCond(5))
				{
					final int step = st.getInt("step");
					if (step > 20)
					{
						if (((step - 20) * 10) >= getRandom(100))
						{
							addSpawn(HONEY_BEAR, npc, false, 300000);
							st.unset("step");
						}
						else
						{
							st.set("step", String.valueOf(step + 1));
						}
					}
					else
					{
						st.set("step", String.valueOf(step + 1));
					}
				}
				break;
			}
			case HONEY_BEAR:
			{
				if (st.isCond(5) && (npc.asAttackable().getSpoilerObjectId() == player.getObjectId()))
				{
					if (getQuestItemsCount(player, HONEY_JAR) < 5)
					{
						giveItems(player, HONEY_JAR, 1);
						
						if (getQuestItemsCount(player, HONEY_JAR) >= 5)
						{
							st.setCond(6, true);
						}
						else
						{
							playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
						}
					}
				}
				break;
			}
			case HUNTER_TARANTULA:
			case PLUNDER_TARANTULA:
			{
				if (st.isCond(7) && (npc.asAttackable().getSpoilerObjectId() == player.getObjectId()) && (getRandom(100) < (npc.getId() == HUNTER_TARANTULA ? 33 : 60)))
				{
					if (getQuestItemsCount(player, BEAD) < 20)
					{
						giveItems(player, BEAD, 1);
						
						if (getQuestItemsCount(player, BEAD) >= 20)
						{
							st.setCond(8, true);
						}
						else
						{
							playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
						}
					}
				}
				break;
			}
		}
	}
}