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>Chief Mercenary Sophya:<br>
The Map! This is good information. Where did you get it?<br>
<a action="bypass -h Quest Q00042_HelpTheUncle 30735-02.html">"From Pet Manager Waters."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Chief Mercenary Sophya:<br>
Give her my thanks and tell her I'll look after this well!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Chief Mercenary Sophya:<br>
Did you give my thanks to Waters?
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Chief Mercenary Sophya:<br>
Did you give my thanks to Waters?
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Pet Manager Waters:<br>
Hey, could you do me a favor?<br>
<a action="bypass -h Quest Q00042_HelpTheUncle 30828-01.htm">"What do you need?"</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>
Hmm... Now that I see you in the light... You're not what I'm looking for at all! You look too scruffy and poor!<br>
(This quest can be performed only by the characters at the 25th level or above.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Awesome! Please, bring me a <font color="LEVEL">Trident</font>! I simply must have one! They probably sell them in stores around here, but I don't have enough Adena...
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Pet Manager Waters:<br>
Wonderful, you've brought it. Much thanks!<br>
So I have this uncle... one day my uncle just up and moves out north. He said he would earn cash as an adventurer.<br>
I hear he's actually pretty good, he takes on quests other adventurers couldn't. But he's family, so I'm worried. I wanted to help.<br>
And... <font color="LEVEL">You even gave me Trident</font>, but I need to ask another favor.<br>
<a action="bypass -h Quest Q00042_HelpTheUncle 30828-03.html">Ask what it is</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Please bring me a Trident. I really need one.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Pet Manager Waters:<br>
I need to send the Trident, but outlaws have been rampant in this area lately! Please kill 30 <font color="LEVEL">Monster Eye Gazers and Destroyers</font>!<br>
Destroy them so I can send the Trident safely. Please, you must help me!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Well, you should have suddenly felt that it is too valuable. Then, that's OK. Please bring me one when you have enough.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Please destroy the monsterous eye so I can ship the Trident safely.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Pet Manager Waters:<br>
Thank you! I've heard marvelous stories about a great adventurer who defeated the monsters in this area.<br>
Well, where is the Map Pieces?<br>
<a action="bypass -h Quest Q00042_HelpTheUncle 30828-06.html">"Here it is."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Pet Manager Waters:<br>
Hmm... Let's see... I think I can put them together...<br>
Voila! Isn't it beautiful? Look! The attack plan is written on it!<br>
This is great! Send it to Sophya of the Black Lions.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Where is the Map fragment?
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Take the Map to Sophya, captain of the Black Lion Mercenaries.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Pet Manager Waters:<br>
The Black Lion Mercenaries have always been trustworthy, but this time you've outdone yourselves!<br>
Thank you so much! I should really do something for you...<br>
<a action="bypass -h Quest Q00042_HelpTheUncle 30828-09.html">"It was nothing!"</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Pet Manager Waters:<br>
Don't be modest, my friend! Please accept this as a token of my esteem! It's quite rare, even among very wealthy! It's a <font color="LEVEL">pet exchange ticket</font>. Enjoy your new pet, and raise it well!
</body></html>

View File

@@ -0,0 +1,193 @@
/*
* 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.Q00042_HelpTheUncle;
import com.l2jserver.gameserver.enums.QuestSound;
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;
/**
* Help The Uncle! (42)<br>
* Original Jython script by zerghase.
* @author malyelfik
*/
public class Q00042_HelpTheUncle extends Quest
{
// NPCs
private static final int WATERS = 30828;
private static final int SOPHYA = 30735;
// Monsters
private static final int MONSTER_EYE_DESTROYER = 20068;
private static final int MONSTER_EYE_GAZER = 20266;
// Items
private static final int TRIDENT = 291;
private static final int MAP_PIECE = 7548;
private static final int MAP = 7549;
private static final int PET_TICKET = 7583;
public Q00042_HelpTheUncle()
{
super(42, Q00042_HelpTheUncle.class.getSimpleName(), "Help The Uncle!");
addStartNpc(WATERS);
addTalkId(WATERS, SOPHYA);
addKillId(MONSTER_EYE_DESTROYER, MONSTER_EYE_GAZER);
registerQuestItems(MAP, MAP_PIECE);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return getNoQuestMsg(player);
}
String htmltext = event;
switch (event)
{
case "30828-01.htm":
st.startQuest();
break;
case "30828-03.html":
if (st.hasQuestItems(TRIDENT))
{
st.takeItems(TRIDENT, 1);
st.setCond(2, true);
}
else
{
htmltext = "30828-03a.html";
}
break;
case "30828-06.html":
if (st.getQuestItemsCount(MAP_PIECE) == 30)
{
st.takeItems(MAP_PIECE, -1);
st.giveItems(MAP, 1);
st.setCond(4, true);
}
else
{
htmltext = "30828-06a.html";
}
break;
case "30735-02.html":
if (st.hasQuestItems(MAP))
{
st.takeItems(MAP, -1);
st.setCond(5, true);
}
else
{
htmltext = "30735-02a.html";
}
break;
case "30828-09.html":
st.giveItems(PET_TICKET, 1);
st.exitQuest(false, true);
break;
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
{
QuestState st = getQuestState(player, false);
if ((st != null) && st.isCond(2))
{
st.giveItems(MAP_PIECE, 1);
if (st.getQuestItemsCount(MAP_PIECE) == 30)
{
st.setCond(3, true);
}
else
{
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
return super.onKill(npc, player, isSummon);
}
@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 WATERS:
switch (st.getState())
{
case State.CREATED:
htmltext = (player.getLevel() >= 25) ? "30828-00.htm" : "30828-00a.html";
break;
case State.STARTED:
switch (st.getCond())
{
case 1:
htmltext = (st.hasQuestItems(TRIDENT)) ? "30828-02.html" : "30828-02a.html";
break;
case 2:
htmltext = "30828-04.html";
break;
case 3:
htmltext = "30828-05.html";
break;
case 4:
htmltext = "30828-07.html";
break;
case 5:
htmltext = "30828-08.html";
break;
}
break;
case State.COMPLETED:
htmltext = getAlreadyCompletedMsg(player);
break;
}
break;
case SOPHYA:
if (st.isStarted())
{
switch (st.getCond())
{
case 4:
htmltext = "30735-01.html";
break;
case 5:
htmltext = "30735-03.html";
break;
}
}
break;
}
return htmltext;
}
}