This commit is contained in:
mobius
2015-01-01 20:02:50 +00:00
parent eeae660458
commit a6a3718849
17894 changed files with 2818932 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
<html><body>Magic Trader Gentler:<br>
Welcome. What can I do for you?<br>
Ah yes, I'd love to fulfill the high priest's request, but I don't think I can make that medicine. I sent <font color="LEVEL">Miki the Cat</font> looking for Moretti's Herbs, but I lost contact with him.<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30094-02.html">"Should I look for him?"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magic Trader Gentler:<br>
If you can find him for me, I'll give you a great reward.<br>
Actually, <font color="LEVEL">Miki the Cat</font> gets lost easily, so I got him a Map, but he forgot it.<br>
Last I heard from him he was at the <font color="LEVEL">entrance to Devil's Isle</font>. He went to get some other herbs, and hasn't been back. If you see him, give him this Map and bring me the herbs!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Trader Gentler:<br>
You forgot where the last message came from, didn't you? Miki the Cat was last seen at the <font color="LEVEL">entrance of Devil's Isle</font>. Start your search there! Good luck!
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magic Trader Gentler:<br>
You found him?<br>
I was right! He was wandering about. May I have the herbs?<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30094-06.html">"Here are the herbs."</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magic Trader Gentler:<br>
You found Miki the Cat but lost the herbs?<br>
Can you hunt an <font color="LEVEL">alligator from Alligator Island</font>, obtain the herbs and bring them back to me?
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Trader Gentler:<br>
Thank you. Now I can make the medicine. First grind this herb into a fine powder. Then, I need to add some Spirit Ore powder.<br>
Rats! I don't have any Spirit Ore left. I'm sorry. Can you get <font color="LEVEL">500 Spirit Ore</font> for me? If I don't grind it in soon, the medicine will lose potency. Can you help?
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magic Trader Gentler:<br>
Good, you brought back 500 Spirit Ore. Let me finish here.<br>
Let me have the ore.<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30094-09.html">"Here it is."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magic Trader Gentler:<br>
If you don't bring the Spirit Ore quickly, I'll lose the medicine. You'll have to pay for my loss! Go!
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Trader Gentler:<br>
What are you still doing here?<br>
You want payment?<br>
You should talk to <font color="LEVEL">Miki the Cat</font> about your payment. It's not my responsibility! By the terms of the Contract, he's responsible for all additional costs due to any delay in delivery!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magic Trader Gentler:<br>
The Contract says <font color="LEVEL">Miki the Cat</font> should pay for any additional expenses. Bother him, not me!
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Trader Gentler:<br>
What can I do for you? I think I told you to visit Miki the Cat.<br>
Hmm.. Did you meet him? Then, why did you come to me?<br>
Oh! You're smarter than I thought. I have to agree with that. However, I have no Adena to pay with.<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30094-12.html">Are you cheating me again?</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magic Trader Gentler:<br>
I'm not lying! Call the guards, you still won't get any.<br>
I'll make you a very valuable ornament instead. Just find the raw materials. I'll need <font color="LEVEL">1000 thread and 500 Suede</font>. I have the rest. You can't find this just anywhere, it fetches a high price!
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magic Trader Gentler:<br>
Now let me have them.<br>
Still don't trust me? It'll be worth it! What'll it be?<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30094-15.html">"Take them! But don't trick me again, or else!"</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magic Trader Gentler:<br>
I requested 1000 threads and 500 Suedes.
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Trader Gentler:<br>
Be patient! Still don't trust me? What kind of shape do you want? Please pick one.<br>
<a action="bypass -h Quest Q00032_AnObviousLie cat">Cat's Ear</a><br>
<a action="bypass -h Quest Q00032_AnObviousLie raccoon">Raccoon's Ear</a><br>
<a action="bypass -h Quest Q00032_AnObviousLie rabbit"> Rabbit's Ear</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Trader Gentler:<br>
I made this accessory to redeem my debts. They have now been paid. Goodbye.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Trader Gentler:<br>
I'm not that gullible. This isn't 1000 threads and 500 Suedes!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>High Priest Maximilian:<br>
By the grace of Einhasad, you're here! Would you help me?<br>
<a action="bypass -h Quest Q00032_AnObviousLie 30120-02.html">"What can I do?"</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>High Priest Maximilian:<br>
I asked <font color="LEVEL">Trader Gentler</font> of the Town of Giran to mix a batch of medicine for me, but he's having trouble acquiring some key ingredients. Help him find them.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>High Priest Maximilian:<br>
Nice to meet you, traveler. The grace of Einhasad has brought you here! I'm sorry you had to come here for nothing.<br>
(Only characters of level 45 or above may undertake this quest.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>High Priest Maximilian:<br>
Talk to <font color="LEVEL">Trader Gentler</font> of the Town of Giran for more information.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Miki the Cat:<br>
Meow~! Did Gentler send anything with you? Oh, I'm late! Meow~!<br>
<a action="bypass -h Quest Q00032_AnObviousLie 31706-02.html">"Here's the Map."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Miki the Cat:<br>
He did send me the Map! Meow~! Thank you for delivering it. I don't have any Moretti's Herb for him, I lost it while wandering around. I'll tell you where to get some, though. Will you get it for me? I'm sure Gentler will give you a proper reward. You can get them from <font color="LEVEL">alligators on Alligator Island</font>. They eat the herbs for digestion. Hunt alligators, get 20 herbs and go straight to Gentler when you're done.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Miki the Cat:<br>
Meow~! You can find the herb in the stomachs of alligators on <font color="LEVEL">Alligator Island</font>. Meow~! Gentler needs 20 of them. Meow~!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Miki the Cat:<br>
What now? Meow~!<br>
<a action="bypass -h Quest Q00032_AnObviousLie 31706-05.html">"I'd like my payment now."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Miki the Cat:<br>
What are you talking about?<br>
Are you saying <font color="LEVEL">Gentler</font> told you to get the payment for the Spirit Ore from me? I never signed such a Contract! Our agreement was that I would bring the herbs on time and he would pay for them.<br>
He probably thought he wouldn't see me again because I wander about so much. Go back to <font color="LEVEL">Gentler</font> and get the reward from him!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Miki the Cat:<br>
See Gentler for your reward. Meow~! Quickly, before he leaves! Meow~!
</body></html>

View File

@@ -0,0 +1,297 @@
/*
* 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.Q00032_AnObviousLie;
import java.util.HashMap;
import java.util.Map;
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;
/**
* An Obvious Lie (32).
* @author janiko
*/
public final class Q00032_AnObviousLie extends Quest
{
// NPCs
private static final int MAXIMILIAN = 30120;
private static final int GENTLER = 30094;
private static final int MIKI_THE_CAT = 31706;
// Monster
private static final int ALLIGATOR = 20135;
// Items
private static final int MAP_OF_GENTLER = 7165;
private static final ItemHolder MEDICINAL_HERB = new ItemHolder(7166, 20);
private static final ItemHolder SPIRIT_ORE = new ItemHolder(3031, 500);
private static final ItemHolder THREAD = new ItemHolder(1868, 1000);
private static final ItemHolder SUEDE = new ItemHolder(1866, 500);
// Misc
private static final int MIN_LVL = 45;
// Reward
private static final Map<String, Integer> EARS = new HashMap<>();
{
EARS.put("cat", 6843); // Cat Ears
EARS.put("raccoon", 7680); // Raccoon ears
EARS.put("rabbit", 7683); // Rabbit ears
}
public Q00032_AnObviousLie()
{
super(32, Q00032_AnObviousLie.class.getSimpleName(), "An Obvious Lie");
addStartNpc(MAXIMILIAN);
addTalkId(MAXIMILIAN, GENTLER, MIKI_THE_CAT);
addKillId(ALLIGATOR);
registerQuestItems(MAP_OF_GENTLER, MEDICINAL_HERB.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 "30120-02.html":
{
if (qs.isCreated())
{
qs.startQuest();
htmltext = event;
}
break;
}
case "30094-02.html":
{
if (qs.isCond(1))
{
giveItems(player, MAP_OF_GENTLER, 1);
qs.setCond(2, true);
htmltext = event;
}
break;
}
case "31706-02.html":
{
if (qs.isCond(2) && hasQuestItems(player, MAP_OF_GENTLER))
{
takeItems(player, MAP_OF_GENTLER, -1);
qs.setCond(3, true);
htmltext = event;
}
break;
}
case "30094-06.html":
{
if (qs.isCond(4) && hasItem(player, MEDICINAL_HERB))
{
takeItem(player, MEDICINAL_HERB);
qs.setCond(5, true);
htmltext = event;
}
break;
}
case "30094-09.html":
{
if (qs.isCond(5) && hasItem(player, SPIRIT_ORE))
{
takeItem(player, SPIRIT_ORE);
qs.setCond(6, true);
htmltext = event;
}
break;
}
case "30094-12.html":
{
if (qs.isCond(7))
{
qs.setCond(8, true);
htmltext = event;
}
break;
}
case "30094-15.html":
{
htmltext = event;
break;
}
case "31706-05.html":
{
if (qs.isCond(6))
{
qs.setCond(7, true);
htmltext = event;
}
break;
}
case "cat":
case "raccoon":
case "rabbit":
{
if (qs.isCond(8) && takeAllItems(player, THREAD, SUEDE))
{
giveItems(player, EARS.get(event), 1);
qs.exitQuest(false, true);
htmltext = "30094-16.html";
}
else
{
htmltext = "30094-17.html";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getRandomPartyMemberState(killer, 3, 3, npc);
if ((qs != null) && giveItemRandomly(qs.getPlayer(), npc, MEDICINAL_HERB.getId(), 1, MEDICINAL_HERB.getCount(), 1.0, true))
{
qs.setCond(4);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (qs == null)
{
return htmltext;
}
switch (npc.getId())
{
case MAXIMILIAN:
{
if (qs.isCreated())
{
htmltext = ((player.getLevel() >= MIN_LVL) ? "30120-01.htm" : "30120-03.htm");
}
else if (qs.isStarted())
{
if (qs.isCond(1))
{
htmltext = "30120-04.html";
}
}
else
{
htmltext = getAlreadyCompletedMsg(player);
}
break;
}
case GENTLER:
{
switch (qs.getCond())
{
case 1:
{
htmltext = "30094-01.html";
break;
}
case 2:
{
htmltext = "30094-03.html";
break;
}
case 4:
{
htmltext = (hasItem(player, MEDICINAL_HERB) ? "30094-04.html" : "30094-05.html");
break;
}
case 5:
{
htmltext = (hasItem(player, SPIRIT_ORE) ? "30094-07.html" : "30094-08.html");
break;
}
case 6:
{
htmltext = "30094-10.html";
break;
}
case 7:
{
htmltext = "30094-11.html";
break;
}
case 8:
{
if (hasAllItems(player, true, THREAD, SUEDE))
{
htmltext = "30094-13.html";
}
else
{
htmltext = "30094-14.html";
}
break;
}
}
break;
}
case MIKI_THE_CAT:
{
switch (qs.getCond())
{
case 2:
{
if (hasQuestItems(player, MAP_OF_GENTLER))
{
htmltext = "31706-01.html";
}
break;
}
case 3:
case 4:
case 5:
{
htmltext = "31706-03.html";
break;
}
case 6:
{
htmltext = "31706-04.html";
break;
}
case 7:
{
htmltext = "31706-06.html";
break;
}
}
break;
}
}
return htmltext;
}
}