Quest Looking for the Blackbird Clan Member (10837).

Contributed by gigilo1968.
This commit is contained in:
MobiusDev
2017-01-06 10:19:38 +00:00
parent 3a27cb68dc
commit eabcf04293
13 changed files with 256 additions and 2 deletions

View File

@@ -122,7 +122,6 @@
10806 The Dimensional Warp, Part 6 10806 The Dimensional Warp, Part 6
10807 The Dimensional Warp, Part 7 10807 The Dimensional Warp, Part 7
10809 The Hero's Journey: Blazing Swamp 10809 The Hero's Journey: Blazing Swamp
10837 Looking for the Blackbird Clan Member
10838 The Reason For Not Being Able to Get Out 10838 The Reason For Not Being Able to Get Out
10839 Blackbird's Name Value 10839 Blackbird's Name Value
10840 Time to Recover 10840 Time to Recover

View File

@@ -0,0 +1,4 @@
<html><body>Aden Vanguard Captain Adolph:<br>
This place is dangerous. You might lose your life here. Come back when you get stronger.<br>
(Only characters above Lv. 101.)
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Aden Vanguard Captain Adolph:<br>
What? Oh, it's you. So Elikia asked you for a favor, huh?<br>
I can tell from that <font color="LEVEL">Blackbird Seal</font> you are carrying. Elikia sent you to find the Blackbird clan members, right?<br>
So you must have come to me to ask me whether I saw the Blackbird clan members.<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q10837_LookingForTheBlackbirdClanMember 34058-02.htm">"Yes, I did."</Button>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Aden Vanguard Captain Adolph:<br>
To tell you the truth, the Blackbird clan members are in the stronghold. Along with our members.<br>
We rescued them from the Embryo while trying to obtain a stronghold, but it looks like they don't trust us yet.<br>
They don't even want us to tell Elikia about their locations. <br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10837_LookingForTheBlackbirdClanMember 34058-03.htm">"How come?"</Button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Aden Vanguard Captain Adolph:<br>
I'm not sure, but it might be a trust issue and something else.<br>
Anyway, it doesn't look like they are against the members in the stronghold, but they get very defensive when I or other people go.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10837_LookingForTheBlackbirdClanMember 34058-04.htm">"What should I do?"</Button>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Aden Vanguard Captain Adolph:<br>
The most important thing you need to gain the trust of the Blackbird clan members is to show them that you are not the enemy.<br>
It's not enough that you are carrying the <font color="LEVEL">Blackbird Seal</font>.<br>
Defeat 60 of the <font color="LEVEL">Fortress Raiders and the Atelia Passionate Soldiers</font> and 40 of the <font color="LEVEL">Fortress Guardian Captains</font>.<br>
After that, go find <font color="LEVEL">Glenkinchie</font> in the <font color="LEVEL">1st stronghold</font>. He won't question your seal once you defeat those monsters.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aden Vanguard Captain Adolph:<br>
Defeat 60 of the <font color="LEVEL">Fortress Raiders and the Atelia Passionate Soldiers</font> and 40 of the <font color="LEVEL">Fortress Guardian Captains</font>.<br>
After that, go find <font color="LEVEL">Glenkinchie</font> in the <font color="LEVEL">1st stronghold</font>. He won't question your seal once you defeat those monsters.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aden Vanguard Captain Adolph:<br>
What's wrong? I don't think I have anything to tell you.<br>
(Quest may only be undertaken by characters with the Blackbird Seal.)
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Blackbird Clan Member Glenkinchie:<br>
Are you an enemy? Or our ally?<br>
You don't looklike the enemy. I don't know who to trust here. Show me that you are not the enemy.<br>
You should at least defeat some Embryo to show me, don't you think?
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Blackbird Clan Member Glenkinchie:<br>
You are our ally. Is that... A Blackbird clan member? Or is Leona here?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10837_LookingForTheBlackbirdClanMember 34063-02.html">"Elikia sent me."</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Blackbird Clan Member Glenkinchie:<br>
Oh, Elikia? Then I must do something too.<br>
I'll have to work on what I've been trying to do. If you ever go see Elikia, please send my regards. I'll also write down what I found out so you can take it.
</body></html>

View File

@@ -0,0 +1,205 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q10837_LookingForTheBlackbirdClanMember;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
import com.l2jmobius.gameserver.network.serverpackets.ExQuestNpcLogList;
/**
* Looking for the Blackbird Clan Member (10837)
* @URL https://l2wiki.com/Looking_for_the_Blackbird_Clan_Member
* @author Gigi
*/
public final class Q10837_LookingForTheBlackbirdClanMember extends Quest
{
// NPC
private static final int ADOLF = 34058;
private static final int GLENKINCHIE = 34063;
// Monsters
private static final int FORTRESS_GUARDIAN_CAPTAIN = 23506;
private static final int FORTRESS_RAIDER = 23505;
private static final int ATELIA_PASSIONATE_SOLDIER = 23507;
// Items
private static final int BLACKBIRD_REPORT_GLENKINCHIE = 46134;
private static final int BLACKBIRD_SEAL = 46132;
// Misc
private static final int MIN_LEVEL = 101;
public Q10837_LookingForTheBlackbirdClanMember()
{
super(10837);
addStartNpc(ADOLF);
addTalkId(ADOLF, GLENKINCHIE);
addKillId(FORTRESS_GUARDIAN_CAPTAIN, FORTRESS_RAIDER, ATELIA_PASSIONATE_SOLDIER);
addCondMinLevel(MIN_LEVEL, "34058-00.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return htmltext;
}
switch (event)
{
case "34058-02.htm":
case "34058-03.htm":
{
htmltext = event;
break;
}
case "34058-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34063-02.html":
{
giveItems(player, BLACKBIRD_REPORT_GLENKINCHIE, 1);
addExpAndSp(player, 9683068920L, 23239200);
qs.exitQuest(false, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (qs.getState())
{
case State.CREATED:
{
if (npc.getId() == ADOLF)
{
if (!hasQuestItems(player, BLACKBIRD_SEAL))
{
htmltext = "34058-06.htm";
break;
}
htmltext = "34058-01.htm";
}
break;
}
case State.STARTED:
{
switch (npc.getId())
{
case ADOLF:
{
if (qs.getCond() > 0)
{
htmltext = "34058-05.html";
}
break;
}
case GLENKINCHIE:
{
if (qs.isCond(1))
{
htmltext = "34063-00.html";
}
else if (qs.isCond(2))
{
htmltext = "34063-01.html";
}
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, true);
if ((qs != null) && qs.isCond(1))
{
switch (npc.getId())
{
case FORTRESS_GUARDIAN_CAPTAIN:
{
int kills = qs.getInt(Integer.toString(FORTRESS_GUARDIAN_CAPTAIN));
if (kills < 40)
{
kills++;
qs.set(Integer.toString(FORTRESS_GUARDIAN_CAPTAIN), kills);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
break;
}
case FORTRESS_RAIDER:
{
int kills = qs.getInt(Integer.toString(FORTRESS_RAIDER));
if (kills < 60)
{
kills++;
qs.set(Integer.toString(FORTRESS_RAIDER), kills);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
break;
}
case ATELIA_PASSIONATE_SOLDIER:
{
int kills = qs.getInt(Integer.toString(ATELIA_PASSIONATE_SOLDIER));
if (kills < 60)
{
kills++;
qs.set(Integer.toString(ATELIA_PASSIONATE_SOLDIER), kills);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
break;
}
}
final ExQuestNpcLogList log = new ExQuestNpcLogList(getId());
log.addNpc(FORTRESS_GUARDIAN_CAPTAIN, qs.getInt(Integer.toString(FORTRESS_GUARDIAN_CAPTAIN)));
log.addNpc(FORTRESS_RAIDER, qs.getInt(Integer.toString(FORTRESS_RAIDER)));
log.addNpc(ATELIA_PASSIONATE_SOLDIER, qs.getInt(Integer.toString(ATELIA_PASSIONATE_SOLDIER)));
qs.getPlayer().sendPacket(log);
if ((qs.getInt(Integer.toString(FORTRESS_GUARDIAN_CAPTAIN)) >= 40) && (qs.getInt(Integer.toString(FORTRESS_RAIDER)) >= 60) && (qs.getInt(Integer.toString(ATELIA_PASSIONATE_SOLDIER)) >= 60))
{
qs.setCond(2, true);
}
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -414,6 +414,7 @@ import quests.Q10831_UnbelievableSight.Q10831_UnbelievableSight;
import quests.Q10832_EnergyOfSadnessAndAnger.Q10832_EnergyOfSadnessAndAnger; import quests.Q10832_EnergyOfSadnessAndAnger.Q10832_EnergyOfSadnessAndAnger;
import quests.Q10833_PutTheQueenOfSpiritsToSleep.Q10833_PutTheQueenOfSpiritsToSleep; import quests.Q10833_PutTheQueenOfSpiritsToSleep.Q10833_PutTheQueenOfSpiritsToSleep;
import quests.Q10836_DisappearedClanMember.Q10836_DisappearedClanMember; import quests.Q10836_DisappearedClanMember.Q10836_DisappearedClanMember;
import quests.Q10837_LookingForTheBlackbirdClanMember.Q10837_LookingForTheBlackbirdClanMember;
/** /**
* @author NosBit * @author NosBit
@@ -818,7 +819,8 @@ public class QuestMasterHandler
Q10831_UnbelievableSight.class, Q10831_UnbelievableSight.class,
Q10832_EnergyOfSadnessAndAnger.class, Q10832_EnergyOfSadnessAndAnger.class,
Q10833_PutTheQueenOfSpiritsToSleep.class, Q10833_PutTheQueenOfSpiritsToSleep.class,
Q10836_DisappearedClanMember.class Q10836_DisappearedClanMember.class,
Q10837_LookingForTheBlackbirdClanMember.class
}; };
public static void main(String[] args) public static void main(String[] args)