Quest Winds of Fate: Encounters (10751).

Contributed by Stayway.
This commit is contained in:
MobiusDev
2016-02-03 07:58:58 +00:00
parent 5b2fc6d900
commit fe5ad6eb77
44 changed files with 750 additions and 7 deletions

View File

@ -0,0 +1,7 @@
<html><body>High Priest Raymond:<br>
I've been waiting for you.<br1>
An object determined to be from the <font color="LEVEL">Wind Spirit Realm</font> was found in the vicinity of the Town of Gludio.<br>
We asked the Ertheia delegation to investigate since they were in the area, but they didn't stay for long.<br>
Another member of the delegation left to investigate alone.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 30289-02.html">"Where did they go?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>High Priest Raymond:<br>
They went to the <font color="LEVEL">northeast side</font> of the town. Skeletons have never appeared so close to town before, but I heard that they've been showing up more frequently. Initially, the guards were able to quickly neutralize them, but they've no longer been entering town, and instead observe us.<br>
This is the object we found with the monsters. We were curious about its identity since we'd never seen anything like it, but a <font color="LEVEL">passing wizard</font> told us that it's an object from the Wind Spirit Realm.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 30289-03.html">"Tell me more about this wizard."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>High Priest Raymond:<br>
He just referred to himself as a passing wizard. The delegation said someone that would recognize it as something of the Wind Spirit Realm would be a powerful wizard, so maybe it's someone from Ivory Tower.<br>
Go to the <font color="LEVEL">northeast side</font> of town. The other Ertheia has already gone towards the <font color="LEVEL">Skeleton Warriors</font> and <font color="LEVEL">Skeleton Archers</font>. Those Skeletons have the Wind Spirit Realm object that you were shown.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>High Priest Raymond:<br>
You've come back safely. Thank goodness.<br>
I got worried because I couldn't make contact with the other person. Did you find your friend?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 30289-05.html">"Well, a body of hers."</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>High Pirest Raymond:<br>
This is unfortunate. May your friend rest in peace in Einhasad's light.<br>
But...our guards tell us that the Skeletons are very weak. You can easily defeat one with your bare hands. I can't understand how a Skeleton could kill a member of your delegation!<br>Are you sure someone else wasn't involved?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters accept">"I did meet a Mysterious Wizard..."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>High Priest Raymond:<br>
A <font color="LEVEL">Mysterious Wizard</font>? The same person who introduced himself as a wizard just passing by? That can't be...he handed over the object from the Wind Spirit Realm willingly. And why would a wizard go around harming people?<br>
Anyway, we are wasting time. Shouldn't you hurry and report to <font color="LEVEL">Magister Ayanthe</font> in <font color="LEVEL">Faeron Village</font> that a member of the Ertheia delegation was killed?
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>High Priest Raymond:<br>
A <font color="LEVEL">Mysterious Wizard</font>? The same person who introduced himself as a wizard just passing by? That can't be...he handed over the object from the Wind Spirit Realm willingly. And why would a wizard go around harming people?<br>
Anyway, we are wasting time. Shouldn't you hurry and report to <font color="LEVEL">Master Katalin</font> in <font color="LEVEL">Faeron Village</font> that a member of the Ertheia delegation was killed?
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Queen Navari:<br>
You can receive help from <font color="LEVEL">Master Katalin</font>.<br>
You may not have known it because she is always in town, but she is a great master.<br>
Follow her instructions and fulfill the missions she will help you liberate.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Queen Navari:<br>
Go to <font color="LEVEL"> Magister Ayanthe</font>. She must be waiting for you.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Queen Navari:<br>
You can receive help from <font color="LEVEL">Magister Ayanthe</font>.<br>
You may not know her well, but she is a famous Magister.<br>
Follow her instructions and fulfill the missions she will help you liberate.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Queen Navari:<br>
Go to <font color="LEVEL"> Katalin</font>. She must be waiting for you.
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Queen Navari:<br>
You've hit the limit of the 1st Liberation. Congratulations.<br1>
Why congratulate? I'm glad that you have gotten far enough to require <font color="LEVEL">Liberation</font>.<br>
You've recovered some of the <font color="LEVEL">Sealed Abilities</font>, which you lost while coming here. But you can't get any further on your own. Unless you're satisfied where you are, you need help from someone who's at the top of your profession.<br>Do you want to receive help?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33931-02.htm">"I'll do anything to get stronger!"</button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Queen Navari:<br>
You've hit the limit of the 1st Liberation. Congratulations.<br1>
Why congratulate? I'm glad that you have gotten far enough to require <font color="LEVEL">Liberation</font>.<br>
You've recovered some of the <font color="LEVEL">Sealed Abilities</font>, which you lost while coming here. But you can't get any further on your own. Unless you're satisfied where you are, you need help from someone who's at the top of your profession.<br>Do you want to receive help?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33931-04.htm">"I'll do anything to get stronger!"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
I've been waiting for you. The Queen told me about an Ertheia who would come to <font color="LEVEL">Liberate</font> their <font color="LEVEL">abilities</font>. She's been quite interested in you -- perhaps because you have talent? The Queen is a gifted wizard for a Nann, you know.<br>
Anyway, you must know that the Ertheia are being targeted by many on the continent for powers unknown to this world. For this reason, I can only help those strong enough to be a part of the <font color="LEVEL">delegation</font> Liberate -- or else we will have a weakling falling into the wrong hands, and all of our secrets being found out! Are you willing?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-02.html">"I have no idea what you're saying, but sure."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Master Ayanthe:<br>
Good. We received word from Einhasad Temple in the Town of Gludio that an object recently found looks to be from the Wind Spirit Realm. The delegation had to leave, so we have sent <font color="LEVEL">Telesha</font> to investigate.<br>
<font color="LEVEL">High Priest Raymond</font> at <font color="LEVEL">Einhasad Temple</font> in the <font color="LEVEL">Town of Gludio</font> will tell you where Telesha is.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
How are things in the Town of Gludio? I'm curious.<br>
By the way, where is Telesha? It's been so long, and I've got lots to tell her.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-04.html">"Well, a body was found."</button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Magister Ayanthe:<br>
You found a body? Not Telesha's! It's not possible.<br>
Telesha is a fierce warrior, always at the forefront when defending the town, even on that day when the monsters attacked.<br>
Do you know who disgraced Telesha like this?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-05.html">"She was attacked by Skeletons."</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
Skeletons? Unbelievable. To think Telesha met her fate at the hands of mere Skeletons! There must have been another reason.<br>
Where there any witnesses?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-06.html">"There was this Mysterious Wizard."</button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Magister Ayanthe:<br>
Just a passer-by? That is suspicious. But I shouldn't be suspicious of a kind stranger who has helped us recover her body...but nothing makes sense. Why did her body disappear?<br>
Oh my. Almost dropped the ball on this because of my friend's death. I had other reasons for sending you there.<br>
Did you see that object from the Wind Spirit Realm?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-07.html">"I found one of those on Telesha's body."</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
Telesha's body? I see. There's definitely something here. I'll report the object you found to the Queen, along with the object from the Wind Spirit Realm discovered in the Material Realm.<br>
To be honest, I didn't think you could do it, but I feel differently about you now. You will be able to Liberate your skills and help us in this world.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-08a.html">"Tell me about this Liberation."</button>
</body></html>

View File

@ -0,0 +1,15 @@
<html><body>Magister Ayanthe:<br>
Through Liberation, you will become a <font color="LEVEL">Cloud Breaker</font>, and blend in with the wind.<br>
Well? How about it?<br><!-- Beginning of class transfer list -->
<center>
<!-- Class 1 -->
<table width=296 cellpadding=1>
<tr><td>
<button width=174 height=31 textoffsetx=22 textalign=left action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-08b.html" value="[Cloud Breaker]" back="L2UI_CT1.HtmlWnd_DF_Level_Down" fore="L2UI_CT1.HtmlWnd_DF_Level">
</td></tr></table>
<table width=265 height=50 cellpadding="3" background="L2UI_CT1.GroupBox.GroupBox_DF">
<tr><td align=left><font color=ffa500>Armor: Robe<br1>Main Weapon: Magic Two-handed Weapons<br1>
Melee Attack Type Wizard</font>
</td></tr></table></center>
<!-- End of class transfer list --><br>
</body></html>

View File

@ -0,0 +1,31 @@
<html><body scroll="no"><!-- Decoration Table -->
<table border="0" cellpadding="0" cellspacing="0" width="288" height="355" background= "L2UI_CH3.refinewnd_back_Pattern">
<tr><td>
<table border="0" cellpadding="2" cellspacing="0">
<tr><td height="12"><!-- Empty Space --></td></tr>
<tr><td height="20" align="center"><font style="subtitle"><font color=ffa500>[Cloud Breaker]</font></font></td></tr>
<!-- Image -->
<tr><td align="center" height="166">
<table border="0" cellpadding="6" cellspacing="1">
<tr><td width="268" height="156" align="center"><img src="L2ClassGuide.ertheia.ert_c0185" width="256" height="150"></td></tr></table>
</td></tr>
<!-- Description -->
<tr><td height="8"><!-- Empty Space --></td></tr>
<tr><td align="center">
<table border="0" width="270" cellpadding="3" cellspacing="0"><tr><td>
<font style="subtitle">Characteristics</font><br1>
Trait: Uses nature-friendly skills to hide inside the wind to ambush enemies.
<br1>
</td></tr></table>
<!-- Previous and Next buttons -->
<center><table border=0 cellpadding=1 cellspacing=0>
<tr><td>
<button width=100 height=28 action="bypass -h Quest Q10751_WindsOfFateEncounters 33942-08a.html" value="Back" back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF">
</td><td>
<button width=100 height=28 action="bypass -h Quest Q10751_WindsOfFateEncounters change_to_183" value="Liberate" back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF">
</td></tr>
</table></center>
</td></tr></table>
</td></tr>
</table><!-- Decoration Table End -->
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Magister Ayanthe:<br>
<font color="LEVEL">High Priest Raymond</font> at <font color="LEVEL">Einhasad Temple</font> in the <font color="LEVEL">Town of Gludio</font> will tell you where Telesha is.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
You may use your abilities more freely.<br>
Enjoy!<br>
I look forward to your future Liberations.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Master Katalin:<br>
You must be the one Queen Navari has told me about. She said an Ertheia was on the way here for her Liberation. Perhaps she saw something special in you? For a Nann, Queen Navari wields great magic. I'm sure there is reason she kept an eye on you.<br>
But the power of Ertheia is new to the Material Realm, and many covet it. For this reason, we're only helping those good enough to work as a part of the <font color="LEVEL">delegation</font> with their Liberation. So, are you ready<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-02.html">"Yes."</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Master Katalin:<br>
We received a message from the Town of Gludio. They found an item that seemed to belong to the Wind Spirit Realm. The delegation could not say due to their schedule, so I sent
<font color="LEVEL">Telesha</font> instead.<br>
Go to <font color="LEVEL">Einhasad Temple</font> in <font color="LEVEL">the Town of Gludio</font>. <font color="LEVEL">High Priest Raymond </font> will tell you where Telesha is.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Master Katalin:<br>
I wonder what happened in Town of Gludio.<br>
Where is Telesha? It's she hiding and trying to pull a prank on me?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-04.html">"She was found dead."</button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Master Katalin:<br>
Dead? No! That's a lie! It can't be.<br>
She is a fearsome warrior. Even on the day the monsters attacked the village, she protected us all. She said she wanted to become village guard!<br>
Do you know who killed her?
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-05.html">"The Skeletons."</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Master Katalin:<br>
Skeleton... This doesn't make any sense. A Skeleton couldn't have gotten her. It must be someone else.<br>
Did you not hear anything else? Was there anyone near her body?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-06.html">"There was a Mysterious Wizard."</button>
</body></html>

View File

@ -0,0 +1,7 @@
<html><body>Master Katalin:<br>
I'm thankful that he got Telesha's body. But are you sure he had nothing to do with her death?<br1>
Also, it's strange that her body disappeared into wind like that.<br>
I must report her death to the Queen. All of Faeron will grieve.<br>
Oh no. I was so sad about her death that I forgot. There was a reason I sent you there. Did you find the object of the Wind Spirit Realm?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-07.html">"I found one more on Telesha's body."</button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Master Katalin:<br>
In Telesha's body? I knew it. There must be something. The Wind Spirit Realm's object being found in the Material Realm and all. I will take this to the Queen for you.<br1>
Thank you. If it weren't for you, I would never have known about her death.<br>
This tells me that you're ready for your 1st Liberation.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters 33943-08a.html">"1st Liberation?"</button>
</body></html>

View File

@ -0,0 +1,15 @@
<html><body>Master Katalin:<br>
After 1st Liberation you will become a <font color="LEVEL">Marauder</font>. Your specialty is finding the enemy's weaknesses through agile movements.<br>
Do you want to go through Libeartion and become Marauder?<br><!-- Beginning of class transfer list -->
<center>
<!-- Class 1 -->
<table width=296 cellpadding=1>
<tr><td>
<button width=174 height=31 textoffsetx=22 textalign=left action="action="bypass -h Quest Q10751_WindsOfFate 33943-08b.html" value="[Marauder]" back="L2UI_CT1.HtmlWnd_DF_Level_Down" fore="L2UI_CT1.HtmlWnd_DF_Level">
</td></tr></table>
<table width=265 height=50 cellpadding="3" background="L2UI_CT1.GroupBox.GroupBox_DF">
<tr><td align=left><font color=ffa500>Armor: Light Armor<br1>Main Weapon: Fist Weapon<br1>
Melee Mobile Warrior</font>
</td></tr></table></center>
<!-- End of class transfer list --><br>
</body></html>

View File

@ -0,0 +1,28 @@
<html><body scroll="no"><!-- Decoration Table -->
<table border="0" cellpadding="0" cellspacing="0" width="288" height="355" background= "L2UI_CH3.refinewnd_back_Pattern">
<tr><td>
<table border="0" cellpadding="2" cellspacing="0">
<tr><td height="12"><!-- Empty Space --></td></tr>
<tr><td height="20" align="center"><font style="subtitle"><font color=ffa500>[Cloud Breaker]</font></font></td></tr>
<tr><td align="center" height="166">
<table border="0" cellpadding="6" cellspacing="1">
<tr><td width="268" height="156" align="center"><img src="L2ClassGuide.ertheia.ert_c0185" width="256" height="150"></td></tr></table>
</td></tr>
<tr><td height="8"></td></tr>
<tr><td align="center">
<table border="0" width="270" cellpadding="3" cellspacing="0"><tr><td>
<font style="subtitle">Characteristics</font><br1>
Trait: Seeks out a target weak points by darting left and right.
<br1>
</td></tr></table>
<center><table border=0 cellpadding=1 cellspacing=0>
<tr><td>
<button width=100 height=28 action="bypass -h Quest Q10751_WindsOfFate 33942-08a.html" value="Back" back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF">
</td><td>
<button width=100 height=28 action="bypass -h Quest Q10751_WindsOfFate change_to_182" value="Liberate" back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF">
</td></tr>
</table></center>
</td></tr></table>
</td></tr>
</table>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Master Katalin:<br>
<font color="LEVEL">High Priest Raymond</font> at <font color="LEVEL"> Einhasad Temple</font> in the <font color="LEVEL">Town of Gludio</font> will tell you where Telesha is.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Master Katalin:<br>
Now you can freely use your ability. Enjoy.<br>
I will wiat for your next Liberation. Telesha would be happy too.
</body></html>

View File

@ -0,0 +1,8 @@
<html><<body>Queen Navari:<br>
Are you lost?<br1>Perhaps I can help you find your way.<br>
Come to <font color="LEVEL">Faeron Village</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Q10751_Teleport">"To Faeron!"</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="link tutorial_close_0">Close</Button><br>
<center><font color="LEVEL">1st Liberation Requirements</font><br1>
<font color="BBAA88">Lv. 38 or above, Ertheia</font></center>
</body></html>

View File

@ -0,0 +1,450 @@
/*
* 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.Q10751_WindsOfFateEncounters;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.cache.HtmCache;
import com.l2jmobius.gameserver.enums.Race;
import com.l2jmobius.gameserver.handler.BypassHandler;
import com.l2jmobius.gameserver.handler.IBypassHandler;
import com.l2jmobius.gameserver.model.Location;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.ListenerRegisterType;
import com.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
import com.l2jmobius.gameserver.model.events.annotations.RegisterType;
import com.l2jmobius.gameserver.model.events.impl.character.player.OnPlayerLevelChanged;
import com.l2jmobius.gameserver.model.holders.ItemHolder;
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.NpcStringId;
import com.l2jmobius.gameserver.network.serverpackets.ExQuestNpcLogList;
import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jmobius.gameserver.util.Util;
/**
* Winds of Fate: Encounters (10751)
* @author Stayway
*/
public class Q10751_WindsOfFateEncounters extends Quest implements IBypassHandler
{
// NPCs
private static final int NAVARI = 33931;
private static final int AYANTHE = 33942;
private static final int KATALIN = 33943;
private static final int RAYMOND = 30289;
private static final int TELESHA = 33981;
private static final int MYSTERIOUS_WIZARD = 33980;
// Monsters
private static final int SKELETON_ARCHER = 27529;
private static final int SKELETON_WARRIOR = 27528;
// Items
private static final ItemHolder WIND_SPIRIT_REALM_RELIC = new ItemHolder(39535, 1);
private static final ItemHolder NAVARIS_SUPPORT_BOX_F = new ItemHolder(40266, 1);
private static final ItemHolder NAVARIS_SUPPORT_BOX_M = new ItemHolder(40267, 1);
// Requirements
private static final int MIN_LEVEL = 38;
// Teleport
private static final Location TP_LOC = new Location(-80565, 251763, -3080);
private static final String[] TP_COMMANDS =
{
"Q10751_Teleport"
};
public Q10751_WindsOfFateEncounters()
{
super(10751, Q10751_WindsOfFateEncounters.class.getSimpleName(), "Winds of Fate: Encounters");
addStartNpc(NAVARI);
addTalkId(NAVARI, AYANTHE, RAYMOND, KATALIN, TELESHA, MYSTERIOUS_WIZARD);
addKillId(SKELETON_ARCHER, SKELETON_WARRIOR);
registerQuestItems(WIND_SPIRIT_REALM_RELIC.getId(), WIND_SPIRIT_REALM_RELIC.getId(), NAVARIS_SUPPORT_BOX_F.getId());
addCondMinLevel(MIN_LEVEL, "noLevel.html");
addCondRace(Race.ERTHEIA, "no_quest.html");
BypassHandler.getInstance().registerHandler(this);
}
@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 "33931-03.html":
case "33931-05.html":
case "30289-02.html":
case "30289-05.html":
case "33942-04.html":
case "33942-05.html":
case "33942-06.html":
case "33942-07.html":
case "33942-08.html":
case "33942-08a.html":
case "33942-08b.html":
case "33943-04.html":
case "33943-05.html":
case "33943-06.html":
case "33943-07.html":
case "33943-08a.html":
case "33943-08b.html":
{
htmltext = event;
break;
}
case "33943-02.html":
{
if (qs.isCond(2))
{
htmltext = event;
qs.setCond(4);
}
break;
}
case "33942-02.html":
{
if (qs.isCond(3))
{
htmltext = event;
qs.setCond(4);
}
break;
}
case "30289-03.html":
{
if (qs.isCond(4))
{
htmltext = event;
qs.setCond(6);
qs.set(Integer.toString(SKELETON_ARCHER), 0);
qs.set(Integer.toString(SKELETON_WARRIOR), 0);
}
break;
}
case "wizard":
{
if (qs.isCond(6))
{
addSpawn(MYSTERIOUS_WIZARD, npc.getX() + 20, npc.getY() + 20, npc.getZ(), npc.getHeading(), false, 50000);
}
break;
}
case "mysterious-01.html":
{
if (qs.isCond(6))
{
giveItems(player, WIND_SPIRIT_REALM_RELIC);
showOnScreenMsg(player, NpcStringId.RETURN_TO_RAYMOND_OF_THE_TOWN_OF_GLUDIO, ExShowScreenMessage.TOP_CENTER, 4500);
qs.setCond(7);
htmltext = event;
}
break;
}
case "33931-04.htm":
{
if (player.getClassId().isMage())
{
qs.startQuest();
qs.setCond(3);
giveItems(player, WIND_SPIRIT_REALM_RELIC);
}
htmltext = event;
break;
}
case "33931-02.htm":
{
if (!player.getClassId().isMage())
{
qs.startQuest();
qs.setCond(2);
giveItems(player, WIND_SPIRIT_REALM_RELIC);
htmltext = event;
}
break;
}
case "30289-04.htm":
{
if (qs.isCond(7))
{
htmltext = event;
}
break;
}
case "accept":
{
if (qs.isCond(7))
{
if (player.getClassId().isMage())
{
htmltext = "30289-06.html";
qs.setCond(9);
}
else
{
htmltext = "30289-07.html";
qs.setCond(8);
}
}
break;
}
}
if (event.startsWith("change_to_"))
{
final int classId = Integer.parseInt(event.replace("change_to_", ""));
player.setBaseClassId(classId);
player.setClassId(classId);
giveAdena(player, 110000, true);
addExpAndSp(player, 2700000, 648);
if (classId == 182)
{
htmltext = "33943-ccf.html";
giveItems(player, NAVARIS_SUPPORT_BOX_F, 1);
}
else if (classId == 183)
{
htmltext = "33942-ccm.html";
giveItems(player, NAVARIS_SUPPORT_BOX_M, 1);
}
player.broadcastUserInfo();
qs.exitQuest(false, true);
return htmltext;
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (player.getRace() != Race.ERTHEIA)
{
return "noErtheia.html";
}
switch (qs.getState())
{
case State.CREATED:
{
switch (npc.getId())
{
case NAVARI:
{
if (player.getClassId().isMage())
{
htmltext = "33931-m.htm";
}
else
{
htmltext = "33931-f.htm";
}
break;
}
case AYANTHE:
case RAYMOND:
{
if (player.getRace() != Race.ERTHEIA)
{
htmltext = getNoQuestMsg(player);
}
break;
}
}
break;
}
case State.STARTED:
{
switch (npc.getId())
{
case NAVARI:
{
if (qs.isCond(2))
{
htmltext = "33931-03.html";
}
else if (qs.isCond(3))
{
htmltext = "33931-05.html";
}
break;
}
case AYANTHE:
{
if (qs.isCond(3))
{
htmltext = "33942-01.html";
}
else if (qs.isCond(4))
{
htmltext = "33942-10.html";
}
else if (qs.isCond(9))
{
htmltext = "33942-03.html";
}
break;
}
case KATALIN:
{
if (qs.isCond(2))
{
htmltext = "33943-01.html";
}
else if (qs.isCond(4) && (!player.getClassId().isMage()))
{
htmltext = "33943-09.html";
}
else if (qs.isCond(8))
{
htmltext = "33943-03.html";
}
break;
}
case RAYMOND:
{
if (qs.isCond(4))
{
htmltext = "30289-01.html";
}
else if (qs.isCond(7))
{
htmltext = "30289-04.html";
}
break;
}
case TELESHA:
{
if (qs.isCond(6))
{
htmltext = "telesha.html";
}
break;
}
case MYSTERIOUS_WIZARD:
{
if (qs.isCond(6))
{
htmltext = "mysterious.html";
}
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@RegisterEvent(EventType.ON_PLAYER_LEVEL_CHANGED)
@RegisterType(ListenerRegisterType.GLOBAL)
public void OnPlayerLevelChanged(OnPlayerLevelChanged event)
{
final L2PcInstance player = event.getActiveChar();
if ((player.getLevel() >= MIN_LEVEL) && (player.getRace() == Race.ERTHEIA))
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
final NpcHtmlMessage html = new NpcHtmlMessage(0, 0);
html.setHtml(HtmCache.getInstance().getHtm(player.getHtmlPrefix(), "scripts/quests/Q10751_WindsOfFateEncounters/Announce.html"));
player.sendPacket(html);
}
}
}
@Override
public boolean useBypass(String command, L2PcInstance player, L2Character bypassOrigin)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) || (player.getLevel() < MIN_LEVEL) || (player.getRace() != Race.ERTHEIA))
{
return false;
}
if (player.isInParty())
{
player.sendPacket(new ExShowScreenMessage("You cannot teleport when you are in party.", 5000));
}
else if (player.isInCombat())
{
player.sendPacket(new ExShowScreenMessage("You cannot teleport when you are in combat.", 5000));
}
else if (player.isInDuel())
{
player.sendPacket(new ExShowScreenMessage("You cannot teleport when you are in a duel.", 5000));
}
else if (player.isInOlympiadMode())
{
player.sendPacket(new ExShowScreenMessage("You cannot teleport when you are in Olympiad.", 5000));
}
else if (player.isInVehicle())
{
player.sendPacket(new ExShowScreenMessage("You cannot teleport when you are in any vehicle or mount.", 5000));
}
else
{
player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
player.teleToLocation(TP_LOC);
}
return true;
}
@Override
public String[] getBypassList()
{
return TP_COMMANDS;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
if ((qs != null) && qs.isStarted() && qs.isCond(6) && Util.checkIfInRange(1500, npc, qs.getPlayer(), false))
{
int kills = qs.getInt(Integer.toString(SKELETON_ARCHER));
kills++;
qs.set(Integer.toString(SKELETON_ARCHER), kills);
final ExQuestNpcLogList log = new ExQuestNpcLogList(getId());
log.addNpcString(NpcStringId.KILL_SKELETONS, kills);
killer.sendPacket(log);
if (kills >= 5)
{
addSpawn(TELESHA, npc.getX() + 20, npc.getY() + 20, npc.getZ(), npc.getHeading(), false, 50000);
showOnScreenMsg(killer, NpcStringId.CHECK_ON_TELESHA, ExShowScreenMessage.TOP_CENTER, 4500);
}
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@ -0,0 +1,6 @@
<html><body>Mysterious Wizard:<br>
Me? Perhaps it was some other wizard passing by? There are many wizards in the world.<br>
By the way, I took the liberty of burying the dead body of the Ertheia, so please do not be angry.<br>
I will give you this to earn your trust. An item <font color="LEVEL">belonging to the dead</font>. It's as if it is from another world.<br>
I like you very much. I hope to see you again.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Mysterious Wizard:<br>
The deaths of your companions must have been shocking for you. I thought it was strange that Skeletons were appearing near the town.<br>
Please let your guard down. I'm just a <font color="LEVEL">wizard passing by</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters mysterious-01.html">Didn't you pass by last time too?</button>
</body></html>

View File

@ -0,0 +1 @@
<html><body>You either don't meet this NPC's minimum quest requirements, or your level is too low to start this quest.</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Telesha:<br>
This is the additional <font color="LEVEL">delegation member</font> sent to the Town of Gludio.<br>
Unfortunately, death seemed to have reigned for a while on this body.<br>
The face is strangely peaceful.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10751_WindsOfFateEncounters wizard">"That's suspicious. Let's see if the body holds any clue."</button>
</body></html>

View File

@ -252,6 +252,7 @@ import quests.Q10743_StrangeFungus.Q10743_StrangeFungus;
import quests.Q10744_StrongerThanSteel.Q10744_StrongerThanSteel;
import quests.Q10745_TheSecretIngredients.Q10745_TheSecretIngredients;
import quests.Q10746_SeeTheWorld.Q10746_SeeTheWorld;
import quests.Q10751_WindsOfFateEncounters.Q10751_WindsOfFateEncounters;
import quests.Q10755_LettersFromTheQueen_WindyHill.Q10755_LettersFromTheQueen_WindyHill;
import quests.Q10756_AnInterdimensionalDraft.Q10756_AnInterdimensionalDraft;
import quests.Q10757_QuietingTheStorm.Q10757_QuietingTheStorm;
@ -504,6 +505,7 @@ final class QuestMasterHandler
Q10744_StrongerThanSteel.class,
Q10745_TheSecretIngredients.class,
Q10746_SeeTheWorld.class,
Q10751_WindsOfFateEncounters.class,
Q10755_LettersFromTheQueen_WindyHill.class,
Q10756_AnInterdimensionalDraft.class,
Q10757_QuietingTheStorm.class,