From fe49869e2e3763b4cfa73bfe629825b584941934 Mon Sep 17 00:00:00 2001
From: Zoey76 <zoey_76@msn.com>
Date: Sat, 11 Jan 2020 21:53:55 -0300
Subject: [PATCH] Quest Fixes

Fixed Hunting for Wild Beasts (341) unable to start.
Fixed Bring Out the Flavor of Ingredients! (380) added condition for
quest status change.
Fixed Treasure Hunt (383) item removal in repeatable quest.
---
 .../Q00341_HuntingForWildBeasts.java                  | 10 +++++-----
 .../Q00380_BringOutTheFlavorOfIngredients.java        | 11 ++++++++---
 .../Q00383_TreasureHunt/Q00383_TreasureHunt.java      |  2 +-
 3 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/l2jserver/datapack/quests/Q00341_HuntingForWildBeasts/Q00341_HuntingForWildBeasts.java b/src/main/java/com/l2jserver/datapack/quests/Q00341_HuntingForWildBeasts/Q00341_HuntingForWildBeasts.java
index 7d9c469abb..58486438f2 100644
--- a/src/main/java/com/l2jserver/datapack/quests/Q00341_HuntingForWildBeasts/Q00341_HuntingForWildBeasts.java
+++ b/src/main/java/com/l2jserver/datapack/quests/Q00341_HuntingForWildBeasts/Q00341_HuntingForWildBeasts.java
@@ -89,9 +89,9 @@ public class Q00341_HuntingForWildBeasts extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = getQuestState(player, false);
+		final QuestState qs = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		switch (st.getState())
+		switch (qs.getState())
 		{
 			case State.CREATED:
 			{
@@ -100,10 +100,10 @@ public class Q00341_HuntingForWildBeasts extends Quest
 			}
 			case State.STARTED:
 			{
-				if (st.isCond(2) && (st.getQuestItemsCount(BEAR_SKIN) >= REQUIRED_COUNT))
+				if (qs.isCond(2) && (qs.getQuestItemsCount(BEAR_SKIN) >= REQUIRED_COUNT))
 				{
-					st.giveAdena(ADENA_COUNT, true);
-					st.exitQuest(true, true);
+					qs.giveAdena(ADENA_COUNT, true);
+					qs.exitQuest(true, true);
 					htmltext = "30078-05.html";
 				}
 				else
diff --git a/src/main/java/com/l2jserver/datapack/quests/Q00380_BringOutTheFlavorOfIngredients/Q00380_BringOutTheFlavorOfIngredients.java b/src/main/java/com/l2jserver/datapack/quests/Q00380_BringOutTheFlavorOfIngredients/Q00380_BringOutTheFlavorOfIngredients.java
index ab360d536a..79ded52963 100644
--- a/src/main/java/com/l2jserver/datapack/quests/Q00380_BringOutTheFlavorOfIngredients/Q00380_BringOutTheFlavorOfIngredients.java
+++ b/src/main/java/com/l2jserver/datapack/quests/Q00380_BringOutTheFlavorOfIngredients/Q00380_BringOutTheFlavorOfIngredients.java
@@ -18,6 +18,8 @@
  */
 package com.l2jserver.datapack.quests.Q00380_BringOutTheFlavorOfIngredients;
 
+import static com.l2jserver.gameserver.enums.audio.Sound.ITEMSOUND_QUEST_ITEMGET;
+
 import java.util.HashMap;
 import java.util.Map;
 
@@ -194,9 +196,12 @@ public final class Q00380_BringOutTheFlavorOfIngredients extends Quest
 		if ((qs != null) && (qs.getCond() < 4))
 		{
 			final ItemChanceHolder item = MONSTER_CHANCES.get(npc.getId());
-			if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), true))
-			{
-				qs.setCond(qs.getCond() + 1, true);
+			if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), false)) {
+				if ((getQuestItemsCount(killer, RITRON_FRUIT) >= 3) && (getQuestItemsCount(killer, MOON_FLOWER) >= 20) && (getQuestItemsCount(killer, LEECH_FLUIDS) >= 10)) {
+					qs.setCond(qs.getCond() + 1, true);
+				} else {
+					playSound(killer, ITEMSOUND_QUEST_ITEMGET);
+				}
 			}
 		}
 		return super.onKill(npc, killer, isSummon);
diff --git a/src/main/java/com/l2jserver/datapack/quests/Q00383_TreasureHunt/Q00383_TreasureHunt.java b/src/main/java/com/l2jserver/datapack/quests/Q00383_TreasureHunt/Q00383_TreasureHunt.java
index 98b328c63d..943c6f3e4c 100644
--- a/src/main/java/com/l2jserver/datapack/quests/Q00383_TreasureHunt/Q00383_TreasureHunt.java
+++ b/src/main/java/com/l2jserver/datapack/quests/Q00383_TreasureHunt/Q00383_TreasureHunt.java
@@ -141,7 +141,7 @@ public final class Q00383_TreasureHunt extends Quest
 				{
 					if (hasQuestItems(player, THIEF_KEY))
 					{
-						takeItems(player, THIEF_KEY, -1);
+						takeItems(player, THIEF_KEY, 1);
 						qs.exitQuest(true, true);
 						htmltext = event;
 						
-- 
GitLab