Merged with released L2J-Unity files.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<html><body>Karla:<br>
|
||||
I can tell you came from the Whispering Woods. How do I know? Um, I can feel Karaphon's power inside you.<br>
|
||||
Haha, just kidding. There was a leaf stuck on you, that's all. You are quite guillible, aren't you? Anyway, what brings you here?
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33933-02.html">"I'm running errands for Dolkin."</button>
|
||||
<html><body>Karla:<br>
|
||||
I can tell you came from the Whispering Woods. How do I know? Um, I can feel Karaphon's power inside you.<br>
|
||||
Haha, I'm kidding. There was a leaf stuck on you, that's all. You're quite gullible, aren't you? Anyway, what brings you here?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33933-02.html">"I'm running errands for Dolkin."</button>
|
||||
</body></html>
|
@@ -1,4 +1,4 @@
|
||||
<html><body>Karla:<br>
|
||||
Ah... Dolkin, that old dwarf again!<br>
|
||||
He's always taking advantage of nice kids like you. You brought his report, right? I will pay you for your troubles. Give me report.
|
||||
<html><body>Karla:<br>
|
||||
Ah...Dolkin, that old dwarf again!<br>
|
||||
He's always taking advantage of nice kids like you. You brought his report, right? I will pay you for your troubles. Give me the report.
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-00.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-00.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
There's a secret deep in this forest.<br>
|
||||
(This quest can only be performed by Ertheia who are between Lv. 17 and 25.)
|
||||
</body></html>
|
@@ -1,4 +1,4 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Want to hear some good news? There is a very interesting creature living deep within the Whispering Woods. It looks like the Treant, but it's got a special characteristic all its own. How about it? Aren't you curious? If you help me, of course I'll give you something good in return!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33954-02.html">"Okay, I'll help."</button>
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Want to hear some good news? There's a very interesting creature living deep within the Whispering Woods. It looks like the Treant, but it's got a special characteristic all its own. How about it? Aren't you curious? If you help me, of course I'll give you something good in return!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33954-02.htm">"Okay, I'll help."</button>
|
||||
</body></html>
|
@@ -1,6 +1,5 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
The creature in question is called <font color="LEVEL">Karaphon!</font> Its leaves are like scales, making them very tough.<br1>
|
||||
The truth is, a Treant's leaves are also very good, but they can't compare to the leaves of a Karaphon.<br>
|
||||
Bring me back its leaves and I'll give you something just as good. Will you go?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KaraphonHabitat enter_instance">"Fine, fine."</button>
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
The creature in question is called <font color="LEVEL">Karaphon</font>! Its leaves are like scales, making them very tough. The truth is, a Treant's leaves are also very good, but they can't compare to the leaves of a Karaphon.<br>
|
||||
Bring me back its leaves and I'll give you something just as good. Will you go?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KaraphonHabitat enter_instance">"Fine, fine."</button>
|
||||
</body></html>
|
@@ -1,6 +1,4 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Oh, you've managed to come back in one piece!<br>
|
||||
No no, don't look at me like that. I'm just relieved that you came back safely. I wasn't worried, if that's what you're thinking. Hm Hm.<br>
|
||||
But, there is still something you need to do for me. I can continue to do research here thanks to <font color="LEVEL">Karla</font>, and she asks that I create a strong armor for a fox in return..<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33954-04.html">"Armor for a fox ?"</button>
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Did you get scared and run away? Can you muster up the courage to go back?
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KaraphonHabitat enter_instance">"I'm not afraid."</button>
|
||||
</body></html>
|
@@ -1,5 +1,6 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Hey, you wanna do me a favor? I need to get <font color="LEVEL">Karla</font> the monthly progress update on my research. Why don't you stop by and drop it off for me?<br>
|
||||
It's research about fox armor. She's been looking for one ever since her fox died that day. She doesn't like to talk about it, but you can tell it eats away at her.<br>
|
||||
Well, run along now! She'll see to it that you don't walk away empty-handed.
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Oh, you've managed to come back in one piece!<br>
|
||||
No no, don't look at me like that. I'm just relieved that you came back safely. I wasn't worried, if that's what you're thinking. Hm hm.<br>
|
||||
But, there's still something you need to do for me. I can continue to do research here thanks to <font color="LEVEL">Karla</font>, and she asks that I create a strong armor for a fox in return..<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10745_TheSecretIngredients 33954-05.html">"Armor for a fox?"</button>
|
||||
</body></html>
|
5
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-05.html
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-05.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
Hey, you wanna do me a favor? I need to get <font color="LEVEL">Karla</font> the monthly progress update on my research. Why don't you stop by and drop it off for me?<br>
|
||||
It's research about fox armor. She's been looking for one ever since her fox died that day. She doesn't like to talk about it, but you can tell it eats away at her.<br>
|
||||
Well, run along now! She'll see to it that you don't walk away empty-handed.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-06.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q10745_TheSecretIngredients/33954-06.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Maestro Dolkin:<br>
|
||||
You should leave now if you're going to take that <font color="LEVEL">report</font> to <font color="LEVEL">Karla</font>.
|
||||
</body></html>
|
@@ -1,205 +1,188 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.Q10745_TheSecretIngredients;
|
||||
|
||||
import com.l2jmobius.gameserver.enums.Race;
|
||||
import com.l2jmobius.gameserver.model.Location;
|
||||
import com.l2jmobius.gameserver.model.actor.L2Npc;
|
||||
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jmobius.gameserver.model.holders.ItemHolder;
|
||||
import com.l2jmobius.gameserver.model.quest.Quest;
|
||||
import com.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import com.l2jmobius.gameserver.network.NpcStringId;
|
||||
import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
|
||||
|
||||
/**
|
||||
* @author Neanrakyr
|
||||
*/
|
||||
public class Q10745_TheSecretIngredients extends Quest
|
||||
{
|
||||
// Npcs
|
||||
private static final int DOLKIN = 33954;
|
||||
private static final int DOLKIN_INSTANCE = 34002;
|
||||
private static final int KARLA = 33933;
|
||||
// Monsters
|
||||
private static final int KARAPHON = 23459;
|
||||
private static final int KEEN_HONEYBEE = 23460;
|
||||
private static final int KEEN_GROWLER = 23461;
|
||||
// Locations
|
||||
private static final Location DOLKIN_INSTANCE_SPAWN = new Location(-82407, 246018, -14158);
|
||||
// Items
|
||||
private static final ItemHolder SECRET_INGREDIENTS = new ItemHolder(39533, 1);
|
||||
private static final ItemHolder DOLKIN_REPORT = new ItemHolder(39534, 1);
|
||||
private static final ItemHolder FAERON_SUPPORT_BOX = new ItemHolder(40262, 1);
|
||||
private static final ItemHolder FAERON_SUPPORT_BOX_MAGE = new ItemHolder(40263, 1);
|
||||
// Level Condition
|
||||
private static final int MIN_LEVEL = 17;
|
||||
private static final int MAX_LEVEL = 25;
|
||||
|
||||
public Q10745_TheSecretIngredients()
|
||||
{
|
||||
super(10745, Q10745_TheSecretIngredients.class.getSimpleName(), "The Secret Ingredients");
|
||||
addStartNpc(DOLKIN);
|
||||
addTalkId(DOLKIN, DOLKIN_INSTANCE, KARLA);
|
||||
addKillId(KARAPHON, KEEN_HONEYBEE, KEEN_GROWLER);
|
||||
registerQuestItems(SECRET_INGREDIENTS.getId(), DOLKIN_REPORT.getId());
|
||||
addCondLevel(MIN_LEVEL, MAX_LEVEL, "no_quest.html");
|
||||
addCondRace(Race.ERTHEIA, "no_quest.html");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
String htmltext = null;
|
||||
switch (event)
|
||||
{
|
||||
case "33954-02.html":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "33954-04.html":
|
||||
{
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
qs.setCond(3);
|
||||
takeItem(player, SECRET_INGREDIENTS);
|
||||
giveItems(player, DOLKIN_REPORT);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33933-02.html":
|
||||
{
|
||||
if (qs.isCond(3))
|
||||
{
|
||||
giveAdena(player, 48000, true);
|
||||
addExpAndSp(player, 241076, 5);
|
||||
if (player.isMageClass())
|
||||
{
|
||||
giveItems(player, FAERON_SUPPORT_BOX_MAGE);
|
||||
}
|
||||
else
|
||||
{
|
||||
giveItems(player, FAERON_SUPPORT_BOX);
|
||||
}
|
||||
showOnScreenMsg(player, NpcStringId.CHECK_YOUR_EQUIPMENT_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "spawn_dolkin":
|
||||
{
|
||||
showOnScreenMsg(player, NpcStringId.TALK_TO_DOLKIN_AND_LEAVE_THE_KARAPHON_HABITAT, ExShowScreenMessage.TOP_CENTER, 4500);
|
||||
addSpawn(DOLKIN_INSTANCE, DOLKIN_INSTANCE_SPAWN, false, 0, false, player.getInstanceId());
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = qs.isCompleted() ? getAlreadyCompletedMsg(player) : getNoQuestMsg(player);
|
||||
|
||||
switch (npc.getId())
|
||||
{
|
||||
case DOLKIN:
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
htmltext = "33954-01.htm";
|
||||
}
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "33954-03.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case KARLA:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 3:
|
||||
{
|
||||
htmltext = "33933-01.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
case DOLKIN_INSTANCE:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
htmltext = "34002.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(killer, false);
|
||||
|
||||
if ((qs != null) && qs.isCond(1))
|
||||
{
|
||||
switch (npc.getId())
|
||||
{
|
||||
case KARAPHON:
|
||||
{
|
||||
qs.set("KARAPHON", 1);
|
||||
break;
|
||||
}
|
||||
case KEEN_HONEYBEE:
|
||||
{
|
||||
qs.set("KEEN_HONEYBEE", 1);
|
||||
break;
|
||||
}
|
||||
case KEEN_GROWLER:
|
||||
{
|
||||
qs.set("KEEN_GROWLER", 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ((qs.get("KARAPHON") != null) && (qs.get("KEEN_HONEYBEE") != null) && (qs.get("KEEN_GROWLER") != null))
|
||||
{
|
||||
giveItems(killer, SECRET_INGREDIENTS);
|
||||
qs.setCond(2, true);
|
||||
startQuestTimer("spawn_dolkin", 5000, npc, killer);
|
||||
}
|
||||
}
|
||||
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.Q10745_TheSecretIngredients;
|
||||
|
||||
import com.l2jmobius.gameserver.enums.Race;
|
||||
import com.l2jmobius.gameserver.model.actor.L2Npc;
|
||||
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jmobius.gameserver.model.holders.ItemHolder;
|
||||
import com.l2jmobius.gameserver.model.quest.Quest;
|
||||
import com.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import com.l2jmobius.gameserver.network.NpcStringId;
|
||||
import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
|
||||
|
||||
/**
|
||||
* The Secret Ingredients (10745)
|
||||
* @author Sdw
|
||||
*/
|
||||
public final class Q10745_TheSecretIngredients extends Quest
|
||||
{
|
||||
// Npc's
|
||||
private static final int DOLKIN = 33954;
|
||||
private static final int KARLA = 33933;
|
||||
private static final int DOLKIN_INSTANCE = 34002;
|
||||
// Mobs
|
||||
private static final int KARAPHON = 23459;
|
||||
private static final int KEEN_HONEYBEE = 23460;
|
||||
private static final int KEEN_GROWLER = 23461;
|
||||
// Items
|
||||
private static final ItemHolder DOLKIN_REPORT = new ItemHolder(39534, 1);
|
||||
private static final ItemHolder SECRET_INGREDIENTS = new ItemHolder(39533, 1);
|
||||
private static final ItemHolder FAERON_SUPPORT_BOX_MAGE = new ItemHolder(40263, 1);
|
||||
private static final ItemHolder FAERON_SUPPORT_BOX = new ItemHolder(40262, 1);
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 17;
|
||||
private static final int MAX_LEVEL = 25;
|
||||
|
||||
public Q10745_TheSecretIngredients()
|
||||
{
|
||||
super(10745);
|
||||
addStartNpc(DOLKIN);
|
||||
addTalkId(DOLKIN, KARLA);
|
||||
addKillId(KARAPHON, KEEN_HONEYBEE, KEEN_GROWLER);
|
||||
|
||||
addCondRace(Race.ERTHEIA, "");
|
||||
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33954-00.htm");
|
||||
registerQuestItems(SECRET_INGREDIENTS.getId(), DOLKIN_REPORT.getId());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
String htmltext = event;
|
||||
switch (event)
|
||||
{
|
||||
case "33954-02.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
break;
|
||||
}
|
||||
case "33954-05.html":
|
||||
{
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
takeItem(player, SECRET_INGREDIENTS);
|
||||
giveItems(player, DOLKIN_REPORT);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33933-02.html":
|
||||
{
|
||||
if (qs.isCond(3))
|
||||
{
|
||||
giveAdena(player, 48000, true);
|
||||
addExpAndSp(player, 241076, 5);
|
||||
if (player.isMageClass())
|
||||
{
|
||||
giveItems(player, FAERON_SUPPORT_BOX_MAGE);
|
||||
}
|
||||
else
|
||||
{
|
||||
giveItems(player, FAERON_SUPPORT_BOX);
|
||||
}
|
||||
showOnScreenMsg(player, NpcStringId.CHECK_YOUR_EQUIPMENT_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 10000);
|
||||
qs.exitQuest(false, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "SPAWN_DOLKIN":
|
||||
{
|
||||
showOnScreenMsg(player, NpcStringId.TALK_TO_DOLKIN_AND_LEAVE_THE_KARAPHON_HABITAT, ExShowScreenMessage.TOP_CENTER, 5000);
|
||||
addSpawn(DOLKIN_INSTANCE, npc.getLocation(), false, 0, false, player.getInstanceId());
|
||||
htmltext = null;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
htmltext = null;
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = qs.isCompleted() ? getAlreadyCompletedMsg(player) : getNoQuestMsg(player);
|
||||
|
||||
switch (npc.getId())
|
||||
{
|
||||
case DOLKIN:
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
htmltext = "33954-01.htm";
|
||||
}
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "33954-03.html";
|
||||
}
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "33954-04.html";
|
||||
}
|
||||
else if (qs.isCond(3))
|
||||
{
|
||||
htmltext = "33954-06.html";
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case KARLA:
|
||||
{
|
||||
if (qs.isCond(3))
|
||||
{
|
||||
htmltext = "33933-01.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(killer, false);
|
||||
if (qs != null)
|
||||
{
|
||||
int killedMobs = qs.getMemoStateEx(0);
|
||||
if (npc.getId() == KARAPHON)
|
||||
{
|
||||
giveItems(killer, SECRET_INGREDIENTS);
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
if ((++killedMobs) == 3)
|
||||
{
|
||||
startQuestTimer("SPAWN_DOLKIN", 5000, npc, killer);
|
||||
}
|
||||
else
|
||||
{
|
||||
qs.setMemoStateEx(0, killedMobs);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
}
|
@@ -1 +0,0 @@
|
||||
<html><body>You either don't meet this NPC's minimum quest requirements, or your level is too low to start this quest.</body></html>
|
Reference in New Issue
Block a user