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,8 @@
<html><body>Magister Iris:<br>
What can I do for you? Ah, Luis sent you! What's this about?<br>
Oh I see! Those vile Langk lizardmen are causing problems in the south. You've already dealt with them? Very impressive!<br>
The Langk lizardmen's sorcery has long been a mystery to us. Up to now we haven't given them much thought, since our magic has been more than enough to keep them in check. This new sorcery of theirs is something else, however. I must find out what they're up to. I'm glad to see you! Well, let me take a look at that... <br>
Hmm... This is no ordinary object! What could be the source of its mysterious power?... Who would have such a thing?... I can't say where it came from, but it's obvious that its sorcery bestows the power of a formidable entity into the bodies of Warriors... and I detect the scent of a dragon! I fear the Land Dragon has awakened from its slumber...<br>
Well, we've obviously got to deal with this thing. Hopefully it's not too late... But what ever shall we do? Its power is growing by the moment!... I'll bet Magister Rohmer of Gludio Castle knows what we should do.... But I can't just drop everything and run to him...<br>
<a action="bypass -h Quest Q00038_DragonFangs 30034-02.html">"I'll go and ask Magister Rohmer what we should do!"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Iris:<br>
Can you really do that for me? Thank you so much!<br>
Please take this letter to <font color="LEVEL">Magister Rohmer</font> in the <font color="LEVEL">Temple of Einhasad in the Town of Gludio</font>. Bring me his reply as soon as possible. You can find him if you follow the road in a northeast from here. Miss Richlin can get you there faster through the gate of time and space.<br>
This sorcery will only grow more dangerous over time. I'll make preparations until your return.<br>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Iris:<br>
What have you done with the <font color="LEVEL">tooth of sorcery</font>? You must have it with you when you meet Magister Rohmer, or he won't tell you anything! Please, bring it to me!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Iris:<br>
This is urgent! You must leave as soon as possible! Take my letter to Magister Rohmer at the temple in the Town of Gludio.
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Magister Iris:<br>
You're back! I've been waiting for you! We must hurry!<br>
Word has come from the guards that Langk lizardmen are attacking travelers again! They must be dealt with immediately! Please give me Magister Rohmer's reply!<br><br>
Just as I thought! We can do this, we just need to gather the ingredients we need to nullify their sorcery. We'll have this problem resolved soon! Will you help me finish the job?<br>
<a action="bypass -h Quest Q00038_DragonFangs 30034-06.html">"I'll help you finish the job."</a>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Magister Iris:<br>
Thank you so very much!<br>
I've found out that the Langk lizardmen use a <font color="LEVEL">dragon tooth</font> to perform their sorcery. I'm not sure whether or not it's actually a tooth from a dragon, but their sorcery is strong, and has evolved from ancient times. The document Magister Rohmer sent me is from that period.<br><br>
The document explains that only by using the same medium can its power be canceled. The more of this medium we possess, the more power we'll have over the sorcery. Unfortunately, I don't have enough dragon teeth yet. While you were away, I inventoried my supplies and have only 50 of them. We'll need some more if we're going to cancel that sorcery.<br><br>
Go to the <font color="LEVEL">Langk Lizardmen Dwellings</font>, get <font color="LEVEL">50 dragon teeth</font> and bring them to me. Only the <font color="LEVEL">shamans and leaders</font> have the teeth. You'd better get started! Good luck!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Iris:<br>
Where is the letter from Magister Rohmer? We can't do anything without it! Did you drop it? You must find it!
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Magister Iris:<br>
Great job! Exactly 50! You dealt with that challenge admirably! My compliments! The very survival of our world depends on Warriors like you!<br>
Well, I have all the ingredients I need, and I also know how to cancel the effects of their sorcery, all there is to do now is make it happen! You've worked very hard collecting the dragon teeth, I should do my part, right? Ha!<br>
Now, please give me the ingredients!<br>
<a action="bypass -h Quest Q00038_DragonFangs 30034-10.html">"Here are the dragon teeth."</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magister Iris:<br>
Come in! Have you completed your mission? I'm impressed! What? You haven't collected all of them yet?<br>
If we are to cancel the sorcery of the Langk lizardmen, you must bring me <font color="LEVEL">50 dragon teeth</font>. Get them from <font color="LEVEL">Langk Lizardman shamans and captains</font> that can be found in the <font color="LEVEL">deepest parts of the Langk Lizardmen Dwellings</font>.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magister Iris:<br>
Whew! What a relief! Thank you for your hard work. Please accept this gift from myself and the guards, a small token of our gratitude.<br>
We may not have driven the Langk lizardmen out completely, but they've lost their powerful sorcery, and no longer pose a mortal threat to us.<br>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Iris:<br>
Listen! You must collect <font color="LEVEL">50 dragon teeth</font> if I am to cancel the powerful effects of their sorcery. Take the teeth from <font color="LEVEL">Langk Lizardman captains and shamans</font>.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Rohmer:<br>
Let me read the letter from Magister Iris.<br>
It seems the Langk lizardmen in the south have obtained some very powerful sorcery. Take the notes I've collected in this letter back to Iris, she'll need them to complete her work.<br>
<a action="bypass -h Quest Q00038_DragonFangs 30344-02.html">"I'll take it."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Rohmer:<br>
Don't lose this letter, it's the only copy! It's very urgent, you must hurry!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Rohmer:<br>
Something's missing. The letter I gave you is useless without the sample I enclosed in it. You'd better bring it back.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magister Rohmer:<br>
Follow this road southwest to Gludin Village, you'll find <font color="LEVEL">Magister Iris</font> there.<br>
This sorcery grows stronger by the day, you should hurry!
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Guard Luis:<br>
I've been looking for someone like you.<br>
I trust you've seen the havoc wrought throughout Gludio Territory. It was enough to have Ol Mahum Stragglers and Turek Orcs bothering us. Now the lizardmen from the south!<br>
The <font color="LEVEL">highway of the southern shoreline</font> that leads to Giran has seen frequent attacks by <font color="LEVEL">Langk Lizardmen</font>. People are scared. Even the temple priests traveling to Gludin were attacked! We Gludio guards are already stretched thin.<br>
Will you help us?<br>
<a action="bypass -h Quest Q00038_DragonFangs 30386-03.htm">"I'll help!"</a>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Guard Luis:<br>
Your face is unfamiliar. You must be a traveler.<br>
I trust you've seen the havoc wrought throughout Gludio Territory? It was enough to have Ol Mahum stragglers and Turek Orcs bothering us... Now the lizardmen from the south!<br>
The <font color="LEVEL">highway of the southern shoreline</font> that leads to Giran has seen frequent attacks by <font color="LEVEL">Langk Lizardman</font>. People are scared. Even the temple priests traveling to Gludin were attacked! We Gludio guards are already stretched thin. We need more experienced help.<br>
(Only a character of level 19 or above may undertake this quest.)
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Guard Luis:<br>
Many thanks.<br>
The Langk Lizardman tribe used to keep to themselves on the southern shoreline, hunting and looting. Our scouts tell us that they've become organized and pose a serious threat!<br>
Some of their warriors are said to possess incredible new powers!<br>
We need your help clearing the southern shoreline road of Langk lizardmen. There are mainly <font color="LEVEL">Langk Lizardman sentinels</font> and <font color="LEVEL">Langk Lizardman lieutenants</font> threatening the roadway. Bring back 100 Feather Ornaments worn by Langk Lizardman Warriors as proof of your deed.<br>
Keep on the lookout for anything suspicious that might explain their sudden aggression. Good luck!
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Guard Luis:<br>
Thanks to your help, the southern shoreline road is much safer!<br>
Let me see the Feather Ornaments.<br>
Hmm... this one's odd. This is a very ominous tooth, not a normal Langk Lizardman decoration. There's something sinister here.<br>
Can you take this tooth to <font color="LEVEL">Magister Iris</font> of Einhasad Temple?<br>
<a action="bypass -h Quest Q00038_DragonFangs 30386-06.html">"Yes, I'll go."</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Guard Luis:<br>
Have you driven them off yet? The raids continue. Perhaps you should keep at it.<br>
(Collect 100 Feather Ornaments.)
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Guard Luis:<br>
Thank you!<br>
We're indebted to Magister Iris for her help. I'm guessing from the pattern engraved on the tooth that it's a magic symbol.<br>
Show it to her. She's at the Einhasad Temple next to the square in the northern part of the village.<br>
Now hurry!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Guard Luis:<br>
Are you done with the subjugation already? The attacks on the southern coast road continue... Could there be some kind of misunderstanding? You should work a bit harder. The safety of our residents is our utmost priority!<br>
(Collect 100 warrior's feather accessories.)
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Guard Luis:<br>
You haven't been to Magister Iris yet?<br>
This is very important. Please go quickly and show her the tooth.<br>
She's at the Einhasad temple in the square of the northern part of the village.
</body></html>

View File

@@ -0,0 +1,322 @@
/*
* 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.Q00038_DragonFangs;
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;
/**
* Dragon Fangs (38)
* @author Janiko
*/
public final class Q00038_DragonFangs extends Quest
{
// NPCs
private static final int IRIS = 30034;
private static final int MAGISTER_ROHMER = 30344;
private static final int GUARD_LUIS = 30386;
// Monsters
private static final int LIZARDMAN_SENTINEL = 21100;
private static final int LIZARDMAN_SHAMAN = 21101;
private static final int LIZARDMAN_LEADER = 20356;
private static final int LIZARDMAN_SUB_LEADER = 20357;
// Items
private static final ItemHolder FEATHER = new ItemHolder(7173, 100);
private static final int TOTEM_TOOTH_1ST = 7174;
private static final ItemHolder TOTEM_TOOTH_2ND = new ItemHolder(7175, 50);
private static final int LETTER_1ST = 7176;
private static final int LETTER_2ND = 7177;
// Rewards
private static final int BONE_HELMET = 45;
private static final int LEATHER_GAUNTLET = 605;
private static final int ASPIS = 627;
private static final int BLUE_BUCKSKIN_BOOTS = 1123;
// Misc
private static final int MIN_LVL = 19;
public Q00038_DragonFangs()
{
super(38, Q00038_DragonFangs.class.getSimpleName(), "Dragon Fangs");
addStartNpc(GUARD_LUIS);
addTalkId(GUARD_LUIS, IRIS, MAGISTER_ROHMER);
addKillId(LIZARDMAN_SENTINEL, LIZARDMAN_SHAMAN, LIZARDMAN_LEADER, LIZARDMAN_SUB_LEADER);
registerQuestItems(FEATHER.getId(), TOTEM_TOOTH_1ST, TOTEM_TOOTH_2ND.getId(), LETTER_1ST, LETTER_2ND);
}
@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 "30386-03.htm":
{
if (qs.isCreated())
{
qs.startQuest();
htmltext = event;
}
break;
}
case "30386-06.html":
{
if (qs.isCond(2))
{
if (hasItem(player, FEATHER))
{
qs.setCond(3, true);
takeItem(player, FEATHER);
giveItems(player, TOTEM_TOOTH_1ST, 1);
htmltext = event;
}
else
{
htmltext = "30386-07.html";
}
}
break;
}
case "30034-02.html":
{
if (qs.isCond(3))
{
if (hasQuestItems(player, TOTEM_TOOTH_1ST))
{
qs.setCond(4, true);
takeItems(player, TOTEM_TOOTH_1ST, 1);
giveItems(player, LETTER_1ST, 1);
htmltext = event;
}
else
{
htmltext = "30034-03.html";
}
}
break;
}
case "30034-06.html":
{
if (qs.isCond(5))
{
if (hasQuestItems(player, LETTER_2ND))
{
qs.setCond(6, true);
takeItems(player, LETTER_2ND, 1);
htmltext = event;
}
else
{
htmltext = "30034-07.html";
}
}
break;
}
case "30034-10.html":
{
if (qs.isCond(7))
{
if (hasItem(player, TOTEM_TOOTH_2ND))
{
addExpAndSp(player, 435117, 23977);
final int chance = getRandom(1000);
if (chance < 250)
{
rewardItems(player, BONE_HELMET, 1);
giveAdena(player, 5200, true);
}
else if (chance < 500)
{
rewardItems(player, ASPIS, 1);
giveAdena(player, 1500, true);
}
else if (chance < 750)
{
rewardItems(player, BLUE_BUCKSKIN_BOOTS, 1);
giveAdena(player, 3200, true);
}
else if (chance < 1000)
{
rewardItems(player, LEATHER_GAUNTLET, 1);
giveAdena(player, 3200, true);
}
qs.exitQuest(false, true);
htmltext = event;
}
else
{
htmltext = "30034-11.html";
}
}
break;
}
case "30344-02.html":
{
if (qs.isCond(4))
{
if (hasQuestItems(player, LETTER_1ST))
{
qs.setCond(5, true);
takeItems(player, LETTER_1ST, 1);
giveItems(player, LETTER_2ND, 1);
htmltext = event;
}
else
{
htmltext = "30344-03.html";
}
}
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 IRIS:
{
switch (qs.getCond())
{
case 3:
{
htmltext = "30034-01.html";
break;
}
case 4:
{
htmltext = "30034-04.html";
break;
}
case 5:
{
htmltext = "30034-05.html";
break;
}
case 6:
{
htmltext = "30034-09.html";
break;
}
case 7:
{
if (hasItem(talker, TOTEM_TOOTH_2ND))
{
htmltext = "30034-08.html";
}
break;
}
}
break;
}
case MAGISTER_ROHMER:
{
if (qs.isCond(4))
{
htmltext = "30344-01.html";
}
else if (qs.isCond(5))
{
htmltext = "30344-04.html";
}
break;
}
case GUARD_LUIS:
{
if (qs.isCreated())
{
htmltext = (talker.getLevel() >= MIN_LVL) ? "30386-01.htm" : "30386-02.htm";
}
else if (qs.isStarted())
{
switch (qs.getCond())
{
case 1:
{
htmltext = "30386-05.html";
break;
}
case 2:
{
if (hasItem(talker, FEATHER))
{
htmltext = "30386-04.html";
}
break;
}
case 3:
{
htmltext = "30386-08.html";
break;
}
}
}
else if (qs.isCompleted())
{
htmltext = getAlreadyCompletedMsg(talker);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
switch (npc.getId())
{
case LIZARDMAN_SUB_LEADER:
case LIZARDMAN_SENTINEL:
{
final QuestState qs = getRandomPartyMemberState(killer, 1, 3, npc);
if ((qs != null) && giveItemRandomly(qs.getPlayer(), npc, FEATHER.getId(), 1, FEATHER.getCount(), 1.0, true))
{
qs.setCond(2);
}
break;
}
case LIZARDMAN_LEADER:
case LIZARDMAN_SHAMAN:
{
final QuestState qs = getRandomPartyMemberState(killer, 6, 3, npc);
if ((qs != null) && giveItemRandomly(qs.getPlayer(), npc, TOTEM_TOOTH_2ND.getId(), 1, TOTEM_TOOTH_2ND.getCount(), 0.5, true))
{
qs.setCond(7);
}
break;
}
}
return super.onKill(npc, killer, isSummon);
}
}