Fixes for quest 341, 380 and 383.

Source: f7fc3cd95f
This commit is contained in:
MobiusDevelopment
2020-01-14 19:09:38 +00:00
parent 86552032d8
commit b1a5ff9dba
6 changed files with 24 additions and 8 deletions

View File

@@ -87,7 +87,7 @@ public class Q00341_HuntingForWildBeasts extends Quest
@Override @Override
public String onTalk(Npc npc, PlayerInstance player) public String onTalk(Npc npc, PlayerInstance player)
{ {
final QuestState qs = getQuestState(player, false); final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player); String htmltext = getNoQuestMsg(player);
switch (qs.getState()) switch (qs.getState())

View File

@@ -19,6 +19,7 @@ package quests.Q00380_BringOutTheFlavorOfIngredients;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.ItemChanceHolder; import org.l2jmobius.gameserver.model.holders.ItemChanceHolder;
@@ -193,9 +194,16 @@ public class Q00380_BringOutTheFlavorOfIngredients extends Quest
if ((qs != null) && (qs.getCond() < 4)) if ((qs != null) && (qs.getCond() < 4))
{ {
final ItemChanceHolder item = MONSTER_CHANCES.get(npc.getId()); final ItemChanceHolder item = MONSTER_CHANCES.get(npc.getId());
if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), true)) if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), false))
{ {
qs.setCond(qs.getCond() + 1, true); 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, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
} }
} }
return super.onKill(npc, killer, isSummon); return super.onKill(npc, killer, isSummon);

View File

@@ -139,7 +139,7 @@ public class Q00383_TreasureHunt extends Quest
{ {
if (hasQuestItems(player, THIEF_KEY)) if (hasQuestItems(player, THIEF_KEY))
{ {
takeItems(player, THIEF_KEY, -1); takeItems(player, THIEF_KEY, 1);
qs.exitQuest(true, true); qs.exitQuest(true, true);
htmltext = event; htmltext = event;

View File

@@ -87,7 +87,7 @@ public class Q00341_HuntingForWildBeasts extends Quest
@Override @Override
public String onTalk(Npc npc, PlayerInstance player) public String onTalk(Npc npc, PlayerInstance player)
{ {
final QuestState qs = getQuestState(player, false); final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player); String htmltext = getNoQuestMsg(player);
switch (qs.getState()) switch (qs.getState())

View File

@@ -19,6 +19,7 @@ package quests.Q00380_BringOutTheFlavorOfIngredients;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.ItemChanceHolder; import org.l2jmobius.gameserver.model.holders.ItemChanceHolder;
@@ -193,9 +194,16 @@ public class Q00380_BringOutTheFlavorOfIngredients extends Quest
if ((qs != null) && (qs.getCond() < 4)) if ((qs != null) && (qs.getCond() < 4))
{ {
final ItemChanceHolder item = MONSTER_CHANCES.get(npc.getId()); final ItemChanceHolder item = MONSTER_CHANCES.get(npc.getId());
if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), true)) if (giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, item.getCount(), item.getChance(), false))
{ {
qs.setCond(qs.getCond() + 1, true); 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, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
} }
} }
return super.onKill(npc, killer, isSummon); return super.onKill(npc, killer, isSummon);

View File

@@ -139,7 +139,7 @@ public class Q00383_TreasureHunt extends Quest
{ {
if (hasQuestItems(player, THIEF_KEY)) if (hasQuestItems(player, THIEF_KEY))
{ {
takeItems(player, THIEF_KEY, -1); takeItems(player, THIEF_KEY, 1);
qs.exitQuest(true, true); qs.exitQuest(true, true);
htmltext = event; htmltext = event;