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,4 @@
<html><body>Priest Shegfield:<br>
How can I help you?<br>
<a action="bypass -h Quest Q00189_ContractCompletion 30068-02.html">"I want to know about the last remaining Cruma."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Priest Shegfield:<br>
Cruma...<br>
Where did you hear that name?<br>
<a action="bypass -h Quest Q00189_ContractCompletion 30068-03.html">"It was mentioned in an old record of the Giants we recovered from the ruins of the Tower of Cruma."</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Priest Shegfield:<br>
Hmm. Unfortunately, the Cruma are extinct.<br>
You know of the ancient war between Elves and Humans? At that time, the Cruma became our greatest ally. But we were overwhelmed by the Humans' sheer numbers and forced to retreat. The Cruma fought a valiant rearguard action, giving us time to reach a safe haven. It was mortally wounded, however, and fell in the place now known as the Sea of Spores. That was the last of its noble kind...
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Priest Shegfield:<br>
I already told you about the fate of the Cruma. Your search is in vain, adventurer. I advise you turn your feet onto another path.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Head Blacksmith Kusto:<br>
Long time no see. How is Lorain progressing with her assignment?<br>
<a action="bypass -h Quest Q00189_ContractCompletion 30512-02.html">Explain what has happened.</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Head Blacksmith Kusto:<br>
I see. Hmm... Researching Cruma, eh? Interesting... Although there is nothing to be gained financially from it, unfortunately... But I suppose the research may still have some value, eh? Thank you for your help. Please take this in exchange for what you've done. I will send word later if I need your further help, adventurer. In the meantime, may Maphr thicken your beard and strengthen your sinews!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Researcher Lorain:<br>
You sure took your time! Were you successful?<br>
<a action="bypass -h Quest Q00189_ContractCompletion 30673-02.html">Give her the decoded document.</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Researcher Lorain:<br>
You did it! Amazing.. .<br>
Hmm... experiments concerning the life force... To think that a Cruma may still exist! We must find it. I'm sure that <font color="LEVEL">Priest Shegfield, the Elven priest for the Town of Dion</font>, knows more about this matter. I'm sorry to impose on you further, but I'm reluctant to leave here right now. Would you seek out Shegfield and question him?
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Researcher Lorain:<br>
Please visit <font color="LEVEL">Priest Shegfield in the Town of Dion</font> and question him about the whereabouts of the Cruma.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Researcher Lorain:<br>
I see... Well, if the Cruma are extinct, then I suppose we don't need the section concerning it. Thank your for your help, though. Please go report all this to <font color="LEVEL">Kusto</font>. I'm sure that he will reward you for your hard work. Farewell, and may the hammer of Maphr make clear your path!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Researcher Lorain:<br>
Many thanks for your trouble. I suppose there's nothing left for you to do here. Please go report all this to <font color="LEVEL">Kusto</font>. Farewell, and may the hammer of Maphr make clear your path!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Blueprint Seller Luka:<br>
Ah, you again. I have decoded the password on the metal plate you gave me. I wrote it down here...somewhere...ah, here it is! Do you want it?<br>
<a action="bypass -h Quest Q00189_ContractCompletion 31437-03.htm">Say yes.</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Blueprint Seller Luka:<br>
I am still trying to puzzle out the code on the metal plate. Come back later.<br>
(Only characters level 42 and above may undertake this quest.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Blueprint Seller Luka:<br>
Ah, here it is. There is more information on the parchment, if you're interested. I am going to bed -- I haven't slept in days...
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Blueprint Seller Luka:<br>
I have finished the task you gave me. Is there anything else that you want me to do?
</body></html>

View File

@@ -0,0 +1,214 @@
/*
* 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.Q00189_ContractCompletion;
import quests.Q00186_ContractExecution.Q00186_ContractExecution;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State;
/**
* Contract Completion (189)
* @author ivantotov
*/
public final class Q00189_ContractCompletion extends Quest
{
// NPCs
private static final int BLUEPRINT_SELLER_LUKA = 31437;
private static final int HEAD_BLACKSMITH_KUSTO = 30512;
private static final int RESEARCHER_LORAIN = 30673;
private static final int SHEGFIELD = 30068;
// Items
private static final int SCROLL_OF_DECODING = 10370;
// Misc
private static final int MIN_LEVEL = 42;
private static final int MAX_LEVEL_FOR_EXP_SP = 48;
public Q00189_ContractCompletion()
{
super(189, Q00189_ContractCompletion.class.getSimpleName(), "Contract Completion");
addStartNpc(BLUEPRINT_SELLER_LUKA);
addTalkId(BLUEPRINT_SELLER_LUKA, HEAD_BLACKSMITH_KUSTO, RESEARCHER_LORAIN, SHEGFIELD);
registerQuestItems(SCROLL_OF_DECODING);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "30068-02.html":
{
htmltext = event;
break;
}
case "31437-03.htm":
{
if (st.isCreated())
{
st.startQuest();
st.giveItems(SCROLL_OF_DECODING, 1);
htmltext = event;
}
break;
}
case "30512-02.html":
{
if (st.isCond(4))
{
st.giveAdena(121527, true);
if (player.getLevel() < MAX_LEVEL_FOR_EXP_SP)
{
st.addExpAndSp(309467, 20614);
}
st.exitQuest(false, true);
htmltext = event;
}
break;
}
case "30673-02.html":
{
if (st.isCond(1))
{
st.setCond(2, true);
st.takeItems(SCROLL_OF_DECODING, -1);
htmltext = event;
}
break;
}
case "30068-03.html":
{
if (st.isCond(2))
{
st.setCond(3, true);
htmltext = event;
}
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (st == null)
{
return htmltext;
}
switch (npc.getId())
{
case BLUEPRINT_SELLER_LUKA:
{
switch (st.getState())
{
case State.CREATED:
{
final QuestState qs = player.getQuestState(Q00186_ContractExecution.class.getSimpleName());
if ((qs != null) && qs.isCompleted())
{
htmltext = (player.getLevel() >= MIN_LEVEL) ? "31437-01.htm" : "31437-02.htm";
}
break;
}
case State.STARTED:
{
if (st.getCond() >= 1)
{
htmltext = "31437-04.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
break;
}
case HEAD_BLACKSMITH_KUSTO:
{
if (st.isCond(4))
{
htmltext = "30512-01.html";
}
break;
}
case RESEARCHER_LORAIN:
{
switch (st.getCond())
{
case 1:
{
htmltext = "30673-01.html";
break;
}
case 2:
{
htmltext = "30673-03.html";
break;
}
case 3:
{
st.setCond(4, true);
htmltext = "30673-04.html";
break;
}
case 4:
{
htmltext = "30673-05.html";
break;
}
}
break;
}
case SHEGFIELD:
{
switch (st.getCond())
{
case 2:
{
htmltext = "30068-01.html";
break;
}
case 3:
{
htmltext = "30068-04.html";
break;
}
}
break;
}
}
return htmltext;
}
}