This commit is contained in:
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-01.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-01.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
It's ready. Now give me the soy sauce that I gave you earlier.<br>
|
||||
<a action="bypass -h Quest Q00625_TheFinestIngredientsPart2 31521-04.htm">"Here's your Pot of Soy Sauce."</a>
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-02.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-02.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
What happened to the pot of soy sauce I gave you?<br>
|
||||
I need it to flavor the food I'm making to lure that creature out!
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-03.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-03.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
Hey! I know my food is wonderful, but if you eat too much of it and get fat, how will you carry out such a dangerous assignment?<br>
|
||||
(Only a character of level 73 or above may undertake this quest.)
|
||||
</body></html>
|
6
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-04.htm
vendored
Normal file
6
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-04.htm
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
All right, now find the Icicle Emperor Bumbalump, or whatever you want to call him, and put out this food and wait.<br>
|
||||
He loves to eat, and won't be able to resist such a scrumptious meal from a world-class chef!<br>
|
||||
You must hurry! Kill that filthy creature and bring me his meat!<br>
|
||||
One more thing... He's quite a messy eater, and sometimes the table gets broken. If that happens, wait until he fixes the table.
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-05.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-05.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
Once I get that yeti's meat, I'll put that arrogant Donath in his place!<br>
|
||||
Stop fooling around! Take the food I gave you and lure Bumbalump out. Understand?
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-06.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-06.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
Where's the Special Yeti Meat?<br>
|
||||
I don't want anything else! As I said, all I need is the special meat from Bumbalump! Get it?!!
|
||||
</body></html>
|
5
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-07.html
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-07.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
So, you slaughtered him?<br>
|
||||
Did you bring the meat?<br>
|
||||
<a action="bypass -h Quest Q00625_TheFinestIngredientsPart2 31521-08.html">"Here's your meat."</a>
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-08.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-08.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
Here is your pay. Many people were impressed by the dish I made. Whenever you have a chance, please stop by and help me again.
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-09.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31521-09.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Chef Jeremy:<br>
|
||||
Where are my ingredients?<br>
|
||||
Unless you bring them to me at once, I won't have enough time to create a new dish!
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-01.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-01.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Yeti's Table:<br>
|
||||
This is where Icicle Emperor Bumbalump eats his prey.<br>
|
||||
<a action="bypass -h Quest Q00625_TheFinestIngredientsPart2 31542-02.html">Place Bumbalump's dish on table.</a>
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-02.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-02.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Yeti's Table:<br>
|
||||
Something smells delicious.<br>
|
||||
Clank! Clank! Clank! Someone is approaching.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-03.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-03.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Yeti's Table:<br>
|
||||
Icicle Emperor Bumbalump has been summoned.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-04.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-04.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Yeti's Table:<br>
|
||||
Place the bait you got from Chef Jeremy on the table now.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-05.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00625_TheFinestIngredientsPart2/31542-05.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Yeti's Table:<br>
|
||||
This is the table the Icicle Emperor Bumbalump eats on.
|
||||
</body></html>
|
@@ -0,0 +1,287 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2014 L2J DataPack
|
||||
*
|
||||
* This file is part of L2J DataPack.
|
||||
*
|
||||
* L2J DataPack is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* L2J DataPack is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package quests.Q00625_TheFinestIngredientsPart2;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SpawnTable;
|
||||
import com.l2jserver.gameserver.model.Location;
|
||||
import com.l2jserver.gameserver.model.actor.L2Npc;
|
||||
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jserver.gameserver.model.holders.ItemHolder;
|
||||
import com.l2jserver.gameserver.model.quest.Quest;
|
||||
import com.l2jserver.gameserver.model.quest.QuestState;
|
||||
import com.l2jserver.gameserver.network.NpcStringId;
|
||||
import com.l2jserver.gameserver.network.clientpackets.Say2;
|
||||
import com.l2jserver.gameserver.network.serverpackets.NpcSay;
|
||||
import com.l2jserver.gameserver.util.Util;
|
||||
|
||||
/**
|
||||
* The Finest Ingredients Part - 2 (625)
|
||||
* @author Janiko
|
||||
*/
|
||||
public final class Q00625_TheFinestIngredientsPart2 extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int JEREMY = 31521;
|
||||
private static final int YETIS_TABLE = 31542;
|
||||
// Monster
|
||||
private static final int ICICLE_EMPEROR_BUMBALUMP = 25296;
|
||||
// Required Item
|
||||
private static final ItemHolder SOY_SOURCE_JAR = new ItemHolder(7205, 1);
|
||||
// Quest Items
|
||||
private static final ItemHolder FOOD_FOR_BUMBALUMP = new ItemHolder(7209, 1);
|
||||
private static final ItemHolder SPECIAL_YETI_MEAT = new ItemHolder(7210, 1);
|
||||
// Rewards
|
||||
private static final ItemHolder GREATER_DYE_OF_STR_1 = new ItemHolder(4589, 5);
|
||||
private static final ItemHolder GREATER_DYE_OF_STR_2 = new ItemHolder(4590, 5);
|
||||
private static final ItemHolder GREATER_DYE_OF_CON_1 = new ItemHolder(4591, 5);
|
||||
private static final ItemHolder GREATER_DYE_OF_CON_2 = new ItemHolder(4592, 5);
|
||||
private static final ItemHolder GREATER_DYE_OF_DEX_1 = new ItemHolder(4593, 5);
|
||||
private static final ItemHolder GREATER_DYE_OF_DEX_2 = new ItemHolder(4594, 5);
|
||||
// Location
|
||||
private static final Location ICICLE_EMPEROR_BUMBALUMP_LOC = new Location(158240, -121536, -2222);
|
||||
// Misc
|
||||
private static final int MIN_LVL = 73;
|
||||
|
||||
public Q00625_TheFinestIngredientsPart2()
|
||||
{
|
||||
super(625, Q00625_TheFinestIngredientsPart2.class.getSimpleName(), "The Finest Ingredients - Part 2");
|
||||
addStartNpc(JEREMY);
|
||||
addTalkId(JEREMY, YETIS_TABLE);
|
||||
addSpawnId(ICICLE_EMPEROR_BUMBALUMP);
|
||||
addKillId(ICICLE_EMPEROR_BUMBALUMP);
|
||||
registerQuestItems(FOOD_FOR_BUMBALUMP.getId(), SPECIAL_YETI_MEAT.getId());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
String htmltext = null;
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "31521-04.htm":
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
qs.startQuest();
|
||||
takeItem(player, SOY_SOURCE_JAR);
|
||||
giveItems(player, FOOD_FOR_BUMBALUMP);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "31521-08.html":
|
||||
{
|
||||
if (qs.isCond(3))
|
||||
{
|
||||
if (hasItem(player, SPECIAL_YETI_MEAT))
|
||||
{
|
||||
int random = getRandom(1000);
|
||||
if (random < 167)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_STR_1);
|
||||
|
||||
}
|
||||
else if (random < 334)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_STR_2);
|
||||
}
|
||||
else if (random < 501)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_CON_1);
|
||||
}
|
||||
else if (random < 668)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_CON_2);
|
||||
}
|
||||
else if (random < 835)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_DEX_1);
|
||||
}
|
||||
else if (random < 1000)
|
||||
{
|
||||
rewardItems(player, GREATER_DYE_OF_DEX_2);
|
||||
}
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31521-09.html";
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "31542-02.html":
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
if (hasItem(player, FOOD_FOR_BUMBALUMP))
|
||||
{
|
||||
if (!isBumbalumpSpawned())
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
takeItem(player, FOOD_FOR_BUMBALUMP);
|
||||
L2Npc umpaloopa = addSpawn(ICICLE_EMPEROR_BUMBALUMP, ICICLE_EMPEROR_BUMBALUMP_LOC);
|
||||
umpaloopa.setSummoner(player);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31542-03.html";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31542-04.html";
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "NPC_TALK":
|
||||
{
|
||||
if (isBumbalumpSpawned())
|
||||
{
|
||||
npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getTemplate().getDisplayId(), NpcStringId.OOOH));
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance talker)
|
||||
{
|
||||
final QuestState qs = getQuestState(talker, true);
|
||||
String htmltext = getNoQuestMsg(talker);
|
||||
switch (npc.getId())
|
||||
{
|
||||
case JEREMY:
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
if (talker.getLevel() >= MIN_LVL)
|
||||
{
|
||||
htmltext = (hasItem(talker, SOY_SOURCE_JAR)) ? "31521-01.htm" : "31521-02.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31521-03.htm";
|
||||
}
|
||||
}
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
htmltext = "31521-05.html";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "31521-06.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "31521-07.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (qs.isCompleted())
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(talker);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case YETIS_TABLE:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if (hasItem(talker, FOOD_FOR_BUMBALUMP))
|
||||
{
|
||||
htmltext = "31542-01.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
if (!isBumbalumpSpawned())
|
||||
{
|
||||
L2Npc umpaloopa = addSpawn(ICICLE_EMPEROR_BUMBALUMP, ICICLE_EMPEROR_BUMBALUMP_LOC);
|
||||
umpaloopa.setSummoner(talker);
|
||||
htmltext = "31542-02.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31542-03.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "31542-05.html";
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(L2Npc npc)
|
||||
{
|
||||
startQuestTimer("NPC_TALK", 1000 * 1200, npc, null);
|
||||
// npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getTemplate().getDisplayId(), NpcStringId.I_SMELL_SOMETHING_DELICIOUS)); //TODO: St3eT: Find proper NpcStringId
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getRandomPartyMemberState(killer, 1, 2, npc);
|
||||
if ((qs != null) && Util.checkIfInRange(1500, npc, killer, true))
|
||||
{
|
||||
if (npc.getSummoner() == killer)
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
giveItems(qs.getPlayer(), SPECIAL_YETI_MEAT);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
private static boolean isBumbalumpSpawned()
|
||||
{
|
||||
return SpawnTable.getInstance().getFirstSpawn(ICICLE_EMPEROR_BUMBALUMP) != null;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user