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,7 @@
<html><body>Guard Harlan:<br>
Hello, stranger! My wife just recently gave birth to a beautiful baby girl!<br>
The countless amusements of fatherhood fill me with indescribable joy... I just want to play peek-a-boo all day! I don't care if people laugh... I would do anything for my precious baby!<br>
I see that you disapprove, but you must understand... My wife and I tried for 10 years to have a child! To finally have produced such a perfect baby would drive anyone to distraction!<br>
You are obviously not a parent!<br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-02.htm">"I'm sorry."</a>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Guard Harlan:<br>
Apology accepted, my friend... I suppose I overreacted. To mark the birth of my daughter I want to make fantasy wine. The recipe has been in my family for many generations. When she marries I will serve it at her wedding!<br>
I am lacking some of the ingredients I need to make the wine. These ingredients have always been rare, but nowadays it's practically impossible to get them. To make matters worse, my duties as a guard keep me from going out and finding them myself. Would you help me?<br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-03.htm">"What are the ingredients?"</a><br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-05.html">"I can't help you. "</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Guard Harlan:<br>
Well, let's see, I'll need some leaves of eucalyptus... They can be obtained from an <font color="LEVEL">Enku Orc champion</font>. To properly age the wine I'll require some stones of chill... They're made and used by the <font color="LEVEL">Enku Orc shaman</font>. Bring these items to me and I'll make the wine.<br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-04.htm">"I'll help you."</a><br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-05.html">"I'm sorry. I can't help you."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Guard Harlan:<br>
Oh, great! Please bring me 80 <font color="LEVEL">leaves of eucalyptus</font>... That should be enough for one barrel of wine.<br>
I'll need some <font color="LEVEL">stones of chill </font> to properly age the wine... 100 should be enough.<br>
If you bring me these items, I'll give you a genuine bottle of Dion wine! No cost is too high for the sake of my precious daughter!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Guard Harlan:<br>
I understand, you're busy. If you should change your mind and we meet again, I could really use the help. Have a safe journey.
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Guard Harlan:<br>
Hello, stranger! My wife just recently gave birth to a beautiful baby girl!<br>
The countless amusements of fatherhood fill me with indescribable joy... I just want to play peek-a-boo all day! I don't care if people laugh... I would do anything for my precious baby!<br>
I need a favor, but you are not yet skilled enough to do it for me. Please come back to see me later.<br>
(This quest may only be undertaken by a character of level 20 or above.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Guard Harlan:<br>
Have you brought the ingredients for the fantasy wine?<br>
I'll need 80 leaves of eucalyptus from the <font color="LEVEL">Enku Orc champions</font> and 100 stones of chill from the <font color="LEVEL">Enku Orc shamans</font>.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Guard Harlan:<br>
You've brought all the leaves of eucalyptus I need, but I still don't have enough stones of chill. As I said, I need 100 of them.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Guard Harlan:<br>
You've brought enough stones of chill, but I still need more leaves of eucalyptus. As I said, I need 80 of them.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Guard Harlan:<br>
Do you have all the ingredients? Let me see them!<br>
<a action="bypass -h Quest Q00379_FantasyWine 30074-11.html">"Here, take them..."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Guard Harlan:<br>
These ingredients aren't the best you can get, but they'll do. At least I can make the fantasy wine to celebrate my daughter's wedding. Thank you for helping me with this. Here is some wine made by my father. This is truly a rare gift. Share it with your friends on a happy occasion.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Guard Harlan:<br>
Now I can make the fantasy wine! I'll let it age and serve it when my daughter gets married. Thank you! Here is some excellent wine made by my father. Open it to celebrate a special occasion with your family and friends.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Guard Harlan:<br>
These are very high quality ingredients! Now I can make the very finest fantasy wine.<br>
What a wonderful gift for my daughter this will make!<br>
Here, take this excellent bottle of wine. It's very rare! In fact, there are only a few bottles of it in the entire kingdom!
</body></html>

View File

@@ -0,0 +1,167 @@
/*
* 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.Q00379_FantasyWine;
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;
import com.l2jserver.gameserver.util.Util;
/**
* Fantasy Wine (379)
* @author Adry_85
*/
public final class Q00379_FantasyWine extends Quest
{
// NPC
private static final int HARLAN = 30074;
// Items
private static final ItemHolder LEAF_OF_EUCALYPTUS = new ItemHolder(5893, 80);
private static final ItemHolder STONE_OF_CHILL = new ItemHolder(5894, 100);
private static final int OLD_WINE_15_YEAR = 5956;
private static final int OLD_WINE_30_YEAR = 5957;
private static final int OLD_WINE_60_YEAR = 5958;
// Monsters
private static final int ENKU_ORC_CHAMPION = 20291;
private static final int ENKU_ORC_SHAMAN = 20292;
// Misc
private static final int MIN_LEVEL = 20;
public Q00379_FantasyWine()
{
super(379, Q00379_FantasyWine.class.getSimpleName(), "Fantasy Wine");
addStartNpc(HARLAN);
addTalkId(HARLAN);
addKillId(ENKU_ORC_CHAMPION, ENKU_ORC_SHAMAN);
registerQuestItems(LEAF_OF_EUCALYPTUS.getId(), STONE_OF_CHILL.getId());
}
@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 "30074-02.htm":
case "30074-03.htm":
case "30074-05.html":
{
htmltext = event;
break;
}
case "30074-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "30074-11.html":
{
if (hasAllItems(player, true, LEAF_OF_EUCALYPTUS, STONE_OF_CHILL))
{
final int random = getRandom(10);
final int item;
if (random < 3)
{
item = OLD_WINE_15_YEAR;
htmltext = event;
}
else if (random < 9)
{
item = OLD_WINE_30_YEAR;
htmltext = "30074-12.html";
}
else
{
item = OLD_WINE_60_YEAR;
htmltext = "30074-13.html";
}
giveItems(player, item, 1);
takeAllItems(player, LEAF_OF_EUCALYPTUS, STONE_OF_CHILL);
qs.exitQuest(true, true);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, false);
if ((qs == null) || !Util.checkIfInRange(1500, npc, killer, true))
{
return null;
}
final ItemHolder dropItem = ((npc.getId() == ENKU_ORC_CHAMPION) ? LEAF_OF_EUCALYPTUS : STONE_OF_CHILL);
if (giveItemRandomly(killer, npc, dropItem.getId(), 1, dropItem.getCount(), 1.0, true) && hasAllItems(killer, true, LEAF_OF_EUCALYPTUS, STONE_OF_CHILL))
{
qs.setCond(2);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (qs.isCreated())
{
htmltext = (player.getLevel() >= MIN_LEVEL) ? "30074-01.htm" : "30074-06.html";
}
else if (qs.isStarted())
{
final boolean hasLeafOfEucalyptus = hasItem(player, LEAF_OF_EUCALYPTUS);
final boolean hasStoneOfChill = hasItem(player, STONE_OF_CHILL);
if (!hasLeafOfEucalyptus && !hasStoneOfChill)
{
htmltext = "30074-07.html";
}
else if (hasLeafOfEucalyptus && !hasStoneOfChill)
{
htmltext = "30074-08.html";
}
else if (!hasLeafOfEucalyptus && hasStoneOfChill)
{
htmltext = "30074-09.html";
}
else
{
htmltext = "30074-10.html";
}
}
return htmltext;
}
}