Quest Exalted, One Who Shatters the Limit (10823).

This commit is contained in:
MobiusDev 2016-07-30 17:20:29 +00:00
parent b372c0cdb5
commit 109ad137d9
12 changed files with 189 additions and 2 deletions

View File

@ -163,7 +163,6 @@
10806 The Dimensional Warp, Part 6
10807 The Dimensional Warp, Part 7
10809 The Hero's Journey: Blazing Swamp
10823 Exalted, One Who Shatters the Limit
10824 Confronting the Greatest Danger
10825 For Victory
10826 Luck Befitting of the Status

View File

@ -26,6 +26,7 @@ import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimi
/**
* Exalted, One Who Overcomes the Limit (10817)
* @URL https://l2wiki.com/Exalted,_One_Who_Overcomes_the_Limit
* @author Mobius
*/
public final class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest

View File

@ -0,0 +1,5 @@
<html><body>Eva's Knight Lionel Hunter:<br>
Great job passing the second test. I knew you would be able to do it.<br>
Now, only the third test is left. Are you ready for it?<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q10823_ExaltedOneWhoShattersTheLimit 33907-03.htm">"Yes, I'm ready."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Eva's Knight Lionel Hunter:<br>
You are not ready to be called by me. Come back when you are ready.<br>
(Only characters who have completed the Exalted, One Who Overcomes the Limit quest may take this quest.)
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Eva's Knight Lionel Hunter:<br>
All the efforts you've made so far are simple compared to what you'll have to do now.<br>
You must remember that it is not about overcoming the limit, but about learning that there's no limit at all. Do you understand what I'm saying?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10823_ExaltedOneWhoShattersTheLimit 33907-04.htm">"Yes."</Button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Eva's Knight Lionel Hunter:<br>
You've already overcome your limit. There's no such thing as a limit now. That's what you will be proving on this third test.<br>
The things you've obtained as you improved will make you even stronger, and what you will obtain from now on will help you prove yourself.<br>
Are you ready to not go back?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10823_ExaltedOneWhoShattersTheLimit 33907-05.html">"I'm ready."</Button>
</body></html>

View File

@ -0,0 +1,7 @@
<html><body>Eva's Knight Lionel Hunter:<br>
This is the third test.<br>
You must overcome not just the limit of the power you were born with, but also the limit of the new power you obtained.<br>
Make sure your <font color="LEVEL">Dual Class</font> also reaches <font color="LEVEL">Lv. 100</font>. Then, go find <font color="LEVEL">Merlot</font> in <font color="LEVEL">Hunter's Village</font>, <font color="LEVEL">Captain Kurtiz</font> in the <font color="LEVEL">Town of Aden</font>, the <font color="LEVEL">Blacksmith of Mammon</font>, and <font color="LEVEL">Sir Gustav Athebaldt</font> in the <font color="LEVEL">Town of Oren</font>, and pass the tests they give you. It's best that you hear about the tests from them.<br><br><br>
Remember to bring back their certificates.<br>
If you forget who you must go to, refer to the guide I'll be giving you.
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Eva's Knight Lionel Hunter:<br>
You haven't finished all the tests. In order to overcome your limit, you must pass all the tests.<br>
You must overcome not just the limit of the power you were born with, but also the limit of the new power you obtained.<br>
Make sure your <font color="LEVEL">Dual Class</font> also reaches <font color="LEVEL">Lv. 100</font>. Then, go find <font color="LEVEL">Merlot</font> in <font color="LEVEL">Hunter's Village</font>, <font color="LEVEL">Captain Kurtiz</font> in the <font color="LEVEL">Town of Aden</font>, the <font color="LEVEL">Blacksmith of Mammon</font>, and <font color="LEVEL">Sir Gustav Athebaldt</font> in the <font color="LEVEL">Town of Oren</font>, and pass the tests they give you.<br>
It's best that you hear about the tests from them. Remember to bring back their certificates.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Eva's Knight Lionel Hunter:<br>
You've completed a long journey. Good job. I'm glad to see you haven't given up.<br>
Do you have all the certificates?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10823_ExaltedOneWhoShattersTheLimit 33907-08.html">"Yes, here."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Eva's Knight Lionel Hunter:<br>
The power given to us by the gods... we called it Noblesse. But you've proven that we are now able to overcome any limits without the protection of the gods.<br>
Now that you've shattered the limits set by the gods, we will call you <font color="LEVEL">Exalted</font>. You are now one step above Noblesse. Congratulations.
</body></html>

View File

@ -0,0 +1,143 @@
/*
* 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.Q10823_ExaltedOneWhoShattersTheLimit;
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 quests.Q10817_ExaltedOneWhoOvercomesTheLimit.Q10817_ExaltedOneWhoOvercomesTheLimit;
/**
* Exalted, One Who Shatters the Limit (10823)
* @URL https://l2wiki.com/Exalted,_One_Who_Shatters_the_Limit
* @author Mobius
*/
public final class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
{
// NPC
private static final int LIONEL = 33907;
// Items
private static final int MERLOT_SERTIFICATE = 46056;
private static final int KURTIZ_CERTIFICATE = 46057;
private static final int MAMMON_CERTIFICATE = 45635;
private static final int GUSTAV_CERTIFICATE = 45636;
private static final int LIONEL_MISSION_LIST_3 = 45637;
// Rewards
private static final int EXALTED_CLOAK = 37763;
private static final int OBTAIN_EXALTED_STATUS = 45638;
private static final int EXALTED_TIARA = 45644;
private static final int DIGNITY_OF_THE_EXALTED = 45924;
// Misc
private static final int MIN_LEVEL = 100;
private static final int MIN_DUALCLASS_LEVEL = 100;
public Q10823_ExaltedOneWhoShattersTheLimit()
{
super(10823);
addStartNpc(LIONEL);
addTalkId(LIONEL);
addCondMinLevel(MIN_LEVEL, "");
addCondCompletedQuest(Q10817_ExaltedOneWhoOvercomesTheLimit.class.getSimpleName(), "33907-02.html");
registerQuestItems(LIONEL_MISSION_LIST_3, MERLOT_SERTIFICATE, KURTIZ_CERTIFICATE, MAMMON_CERTIFICATE, GUSTAV_CERTIFICATE);
}
@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 "33907-03.htm":
case "33907-04.htm":
{
htmltext = event;
break;
}
case "33907-05.html":
{
if (qs.isCreated())
{
giveItems(player, LIONEL_MISSION_LIST_3, 1);
qs.startQuest();
htmltext = event;
}
break;
}
case "33907-08.html":
{
if (hasQuestItems(player, MERLOT_SERTIFICATE, KURTIZ_CERTIFICATE, MAMMON_CERTIFICATE, GUSTAV_CERTIFICATE) && ((player.getDualClass() != null) && (player.getDualClass().getLevel() >= MIN_DUALCLASS_LEVEL)))
{
giveItems(player, EXALTED_CLOAK, 1);
giveItems(player, OBTAIN_EXALTED_STATUS, 1);
giveItems(player, EXALTED_TIARA, 1);
giveItems(player, DIGNITY_OF_THE_EXALTED, 1);
qs.exitQuest(false, true);
htmltext = event;
}
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState qs = getQuestState(player, true);
if (qs == null)
{
return htmltext;
}
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "33907-01.htm";
break;
}
case State.STARTED:
{
if (hasQuestItems(player, MERLOT_SERTIFICATE, KURTIZ_CERTIFICATE, MAMMON_CERTIFICATE, GUSTAV_CERTIFICATE) && ((player.getDualClass() != null) && (player.getDualClass().getLevel() >= MIN_DUALCLASS_LEVEL)))
{
htmltext = "33907-07.html";
}
else
{
htmltext = "33907-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}

View File

@ -360,6 +360,7 @@ import quests.Q10818_ConfrontingAGiantMonster.Q10818_ConfrontingAGiantMonster;
import quests.Q10819_ForHonor.Q10819_ForHonor;
import quests.Q10820_RelationshipsBefittingOfTheStatus.Q10820_RelationshipsBefittingOfTheStatus;
import quests.Q10821_HelpingOthers.Q10821_HelpingOthers;
import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit;
/**
* @author NosBit
@ -710,7 +711,8 @@ public class QuestMasterHandler
Q10818_ConfrontingAGiantMonster.class,
Q10819_ForHonor.class,
Q10820_RelationshipsBefittingOfTheStatus.class,
Q10821_HelpingOthers.class
Q10821_HelpingOthers.class,
Q10823_ExaltedOneWhoShattersTheLimit.class
};
public static void main(String[] args)