This commit is contained in:
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-01.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-01.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Sandra:<br>
|
||||
Do you have the high-quality coin collection book? It's no longer for sale. Too many collectors dilute the market. You must do me a favor if you really want a book. It shouldn't be too hard for you, but there's no way I could do it. Will you help me?<br>
|
||||
<a action="bypass -h Quest Q00381_LetsBecomeARoyalMember 30090-02.html">"I'll help you."</a>
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-02.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-02.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Sandra:<br>
|
||||
I'm a coin collector, too. A while back, another coin collector told me that the rare coins of Elmore were also quite valuable, although the war has left most trade routes to Elmore impassable. But this didn't slow me down! A delivery of very valuable coins has been stolen by <font color="LEVEL">Fallen Chieftain Vegus</font> in the <font color="LEVEL">Forsaken Plains</font>! It included the <font color="LEVEL">rare golden clover coin</font> I was looking for! These coins are still contraband, so I can't go after them myself. Bring me at least one of the <font color="LEVEL">rare golden clover coins</font> and I'll make a high-quality coin collection book for you. Vegus usually appears in the Forsaken Plains two to three times a day. Find him there.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-03.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-03.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Sandra:<br>
|
||||
You still haven't found the <font color="LEVEL">rare golden clover coin</font>. I won't give you the high-quality coin collection book for free. At the last meeting of the Coin Collection Club, they concluded that there were too many high-level coin collection books. They've forbidden me to sell them. The <font color="LEVEL">rare golden clover coin</font> was stolen by the <font color="LEVEL">Fallen Chieftain Vegus</font> in the <font color="LEVEL">Forsaken Plains</font>.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-04.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-04.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Sandra:<br>
|
||||
You've brought the <font color="LEVEL">rare golden clover coin</font>! Look how shiny it is! Note the exquisite pattern! It's a work of art! Now you're qualified to be a top-quality coin collector. Take this <font color="LEVEL">high-quality coin collection book</font>.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-05.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30090-05.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Sandra:<br>
|
||||
You still have the high-quality coin collection book that I gave you, don't you? Don't you need it for something? Think carefully.
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-01.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-01.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
Welcome! Come on in! I was about to ask you over anyway! I believe we've had this discussion before, am I right? About the special membership? Anyway, a special committee has been formed of members from all locations of the coin collectors club to decide upon whom to bestow the honor of a Royal Membership! Are you up to the challenge?<br>
|
||||
<a action="bypass -h Quest Q00381_LetsBecomeARoyalMember 30232-03.htm">"I'll do it."</a>
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-02.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-02.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
All you need is a Level 1 Coin Collector Club Membership Card and enough experience... Oh, I see... That doesn't describe you, does it?<br>
|
||||
(Only a character who possesses a Level 1 Coin Collector Club Membership Card and whose level is 55 or above can undertake this quest.)
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-03.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-03.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
Very well! You must prepare to impress the committee... There is an excellent opportunity available, I've heard a strange rumor...<br>
|
||||
It's said that <font color="LEVEL">Kail's Coins were discovered in the Forsaken Plains</font>. At one time Kail was Beleth's right-hand man. Bring me some of these coins. Also, if you buy a <font color="LEVEL">"Coin Collecting Album" from Trader Sandra of Giran that she sells only when she is in a good mood</font>. Then, you will surely be chosen by the committee!
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-04.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-04.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
The monsters that inhabit the Forsaken Plains are quite dangerous. You must be fully prepared before you go there. You should leave any valuables you have with me... For safe keeping... Ha!
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-05.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-05.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
Unless you bring me a rare, high-quality <font color="LEVEL">Coin Collecting Album from Trader Sandra of Giran</font> and <font color="LEVEL">Kail's Coins</font>, I don't see how I could give you a Recommendation...<br>
|
||||
Of course, I understand that these items are not easy to come by. That's why the reward is so great... you can become royalty!
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-06.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/30232-06.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Warehouse Keeper Sorint:<br>
|
||||
Ah, Kail's Coin! And such a splendid album! This will truly enhance your collection. Once the committee sees this, they are bound to make you a royal! In fact, I'm so sure they will agree with me, I'm going to give you the <font color="LEVEL"> Royal Membership Card</font> of the Coin Collectors Club. You should go and visit Head Blacksmith Vergara. He's been wanting to see an actual royal member...
|
||||
</body></html>
|
191
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java
vendored
Normal file
191
trunk/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java
vendored
Normal file
@@ -0,0 +1,191 @@
|
||||
/*
|
||||
* 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.Q00381_LetsBecomeARoyalMember;
|
||||
|
||||
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.util.Util;
|
||||
|
||||
/**
|
||||
* Let's Become a Royal Member! (381)
|
||||
* @author Pandragon
|
||||
*/
|
||||
public final class Q00381_LetsBecomeARoyalMember extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int SANDRA = 30090;
|
||||
private static final int SORINT = 30232;
|
||||
// Items
|
||||
private static final int COLLECTOR_MEMBERSHIP_1 = 3813;
|
||||
private static final int KAILS_COIN = 5899;
|
||||
private static final int FOUR_LEAF_COIN = 7569;
|
||||
private static final int COIN_ALBUM = 5900;
|
||||
// Monsters
|
||||
private static final int ANCIENT_GARGOYLE = 21018;
|
||||
private static final int FALLEN_CHIEF_VERGUS = 27316;
|
||||
// Reward
|
||||
private static final int ROYAL_MEMBERSHIP = 5898;
|
||||
// Misc
|
||||
private static final int MIN_LVL = 55;
|
||||
|
||||
public Q00381_LetsBecomeARoyalMember()
|
||||
{
|
||||
super(381, Q00381_LetsBecomeARoyalMember.class.getSimpleName(), "Let's Become a Royal Member!");
|
||||
addStartNpc(SORINT);
|
||||
addTalkId(SORINT, SANDRA);
|
||||
addKillId(ANCIENT_GARGOYLE, FALLEN_CHIEF_VERGUS);
|
||||
registerQuestItems(KAILS_COIN, FOUR_LEAF_COIN);
|
||||
}
|
||||
|
||||
@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 "30232-03.htm":
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
qs.startQuest();
|
||||
qs.setMemoState(1);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30090-02.html":
|
||||
{
|
||||
if (qs.isMemoState(1) && !hasQuestItems(player, COIN_ALBUM))
|
||||
{
|
||||
qs.setMemoState(2);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
htmltext = event;
|
||||
}
|
||||
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 SORINT:
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
if ((talker.getLevel() < MIN_LVL) || !hasQuestItems(talker, COLLECTOR_MEMBERSHIP_1))
|
||||
{
|
||||
htmltext = "30232-02.html";
|
||||
}
|
||||
else if (!hasQuestItems(talker, ROYAL_MEMBERSHIP))
|
||||
{
|
||||
htmltext = "30232-01.htm";
|
||||
}
|
||||
// TODO this quest is not visible in quest list if neither of these IF blocks are true
|
||||
}
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
final boolean hasAlbum = hasQuestItems(talker, COIN_ALBUM);
|
||||
final boolean hasCoin = hasQuestItems(talker, KAILS_COIN);
|
||||
|
||||
if (hasAlbum && hasCoin)
|
||||
{
|
||||
takeItems(talker, 1, KAILS_COIN, COIN_ALBUM);
|
||||
giveItems(talker, ROYAL_MEMBERSHIP, 1);
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = "30232-06.html";
|
||||
}
|
||||
else if (hasAlbum || hasCoin)
|
||||
{
|
||||
htmltext = "30232-05.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30232-04.html";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(talker);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SANDRA:
|
||||
{
|
||||
switch (qs.getMemoState())
|
||||
{
|
||||
case 1:
|
||||
htmltext = "30090-01.html";
|
||||
break;
|
||||
case 2:
|
||||
if (hasQuestItems(talker, COIN_ALBUM))
|
||||
{
|
||||
htmltext = "30090-05.html";
|
||||
}
|
||||
else if (hasQuestItems(talker, FOUR_LEAF_COIN))
|
||||
{
|
||||
takeItems(talker, FOUR_LEAF_COIN, 1);
|
||||
giveItems(talker, COIN_ALBUM, 1);
|
||||
playSound(talker, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
htmltext = "30090-04.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30090-03.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(killer, false);
|
||||
if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true))
|
||||
{
|
||||
if (npc.getId() == ANCIENT_GARGOYLE)
|
||||
{
|
||||
giveItemRandomly(killer, npc, KAILS_COIN, 1, 1, 0.05, true);
|
||||
}
|
||||
else if (qs.isMemoState(2) && !hasQuestItems(killer, FOUR_LEAF_COIN))
|
||||
{
|
||||
giveItems(killer, FOUR_LEAF_COIN, 1);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user