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,4 @@
<html><body>Magister Ayanthe:<br>
Have you ever ventured outside of town? It's very different from the Wind Spirit Realm. The spirits and creatures you'll encounter look very much like those inhabiting the Spirit Realm. but they've been increasingly on high alert. They may even come after you with their claws about. It'll be the same later when you venture out onto Aden Continent.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie 33942-02.htm">"Tell me about Aden Continent."</Button>
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Magister Ayanthe:<br>
Yes, Aden Continent.<br1>
I hope you're not just thinking of settling here until you can return to the Wind Spirit Realm.<br>
Don't worry. Right now, you're too weak to venture out onto the continent. You need to find a way to survive until you are ready to face such dangers.<br>
Now, shall we begin you training?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie 33942-03.htm">"I'm ready to begin."</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magister Ayanthe:<br>
Great. See that <font color="LEVEL">Training Dummy</font> over there?<br>
Pretend that dummy is the enemy and <font color="LEVEL">attack</font> it.<br>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Magister Ayanthe:<br>
Pretend that <font color="LEVEL">Training Dummy</font> is the enemy and <font color="LEVEL">attack</font> it.<br>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
How was the first fight? It might just be a dummy, but engage as if it were an actual enemy attacking you.<br>
Now, I'm going to give you something to protect and strengthen you.<br>
The <font color="LEVEL">Apprentice Adventurer's Guide</font> next to the dummy can help you further.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Magister Ayanthe:<br>
You've already forgotten, haven't you? Such absent-mindedness will only hurt you.<br>
I'll say it one more time. Go ask for help from the <font color="LEVEL">Apprentice Adventurer's Guide</font>.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Ayanthe:<br>
Good work. How was it? Can you feel your new power?<br>
Don't say you're too exhausted now. There's still much training to be done.<br>
Take a short break and we'll continue, yes?
</body></html>

View File

@@ -0,0 +1,4 @@
<html><head><body>Magister Ayanthe:<br>
It's hard to find someone motivated enough. Everyone just looks for an easy way out.<br>
(Quest only available to Ertheia characters Lv. 20 or below who have completed the quest "The Test for Survival.")
</body></html>

View File

@@ -0,0 +1,5 @@
<html><head><body>Master Katalin:<br>
Have you been outside of the village? If you haven't, you should listen to my advise carefully. Of course, having been out makes no difference either.<br>
If you are well trained here, you won't have a problem at the continent later.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie 33943-02.htm">"Continent?"</Button>
</body></html>

View File

@@ -0,0 +1,7 @@
<html><head><body>Master Katalin:<br>
Yes<br1>
Were you just going to live here then? You won't survive with that kind of attitude when we don't even know when we can return to the Wind Spirit Realm.<br>
Now, listen carefully. You are too weak to survive out in the continent. You need to learn to survive on your own before you go.<br>
Now, you want to start your training?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie 33943-03.htm">"Sure."</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Master Katalin:<br>
Good. You see the <font color="LEVEL">Training Dummy</font> over there?<br>
Think of it as the enemy and <font color="LEVEL">attack</font> it.<br>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Master Katalin:<br>
Think of the <font color="LEVEL">Training Dummy</font> as the enemy and <font color="LEVEL">attack</font> it.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><head><body>Master Katalin:<br>
You're fighting the Training Dummy now, but you may see much more dangerous enemies later.<br>
Now, I will point you to someone who can protect you and train you.<br>
Did you see the <font color="LEVEL">Apprentice Adventurer's Guide</font> next to the Training Dummy? Go ask for help. You will need to remember this as you go on with your adventure later.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><head><body>Master Katalin:<br>
I will tell you one more time. Go to the <font color="LEVEL">Apprentice Adventurer's Guide</font>.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><head><body>Master Katalin:<br>
How is it? The new power flowing inside you feels good, doesn't it?<br>
You look a bit tired. Let's take a break and continue.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><head><body>Master Katalin:<br>
It's hard to find someone motivated enough. Everyone just looks for an easy way out.<br>
(Quest only available to Ertheia characters Lv. 20 or below who have completed the quest "The Test for Survival.")
</body></html>

View File

@@ -0,0 +1,5 @@
<html><head><body>Adventurers' Guide Apprentice:<br>
Welcome! I've been watching you as you were practicing with the dummy. Were you aware?<br>
I can help you <font color="LEVEL">protect yourself</font> while fighting and <font color="LEVEL">enhance your strength</font> when you attack. In other words, you'll be benefiting from <font color="LEVEL">buffs</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie 33950-02.htm">"Tell me more about buffs."</Button>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Adventurers' Guide Apprentice:<br>
Buffs help to ease the impact if you're hit while making your own attacks more effective. The following buffs can be ussed by all classes.<br>
<font color="LEVEL">Horn Melody/Drum Melody/Pipe Orga/n Melody<br1>Guitar Melody/Harp Melody/Lute Melody<br1>Prevailing Sonata/Daring Sonata/Refreshing Sonata</font>.<br>
Now, this will be important here on out. There are special buffs for each class that are not shared.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie other_buffs">"Tell me about these other buffs."</Button>
</body></html>

View File

@@ -0,0 +1,8 @@
<html><head><body>Adventurers' Guide Apprentice:<br>
Knight's Harmony (Defensive Warrior)<br1>
Warrior's Harmony (Aggressive Warrior)<br1>
and Wizard's Harmony (Wizard)<br1>
are the three types.<br>
In your case, I think <font color="LEVEL">Warrior's Hasrmony</font> will do.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie buffs">"Thanks for the buff."</Button>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Adventurers' Guide Apprentice:<br>
Great!<br1>
Don't forget what I told you.<br>
A <font color="LEVEL">Warrior's buff</font> is the one you need!<br>
Now, with your strength enhanced, go show that <font color="LEVEL">training dummy</font> who's boss!
</body></html>

View File

@@ -0,0 +1,8 @@
<html><body>Adventurers' Guide Apprentice:<br>
Knight's Harmony (Defensive Warrior)<br1>
Warrior's Harmony (Aggressive Warrior)<br1>
and Wizard's Harmony (Wizard)<br1>
are the three types.<br>
In your case, I think <font color="LEVEL">Wizard's Hasrmony</font> will do.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10734_DoOrDie buffs">"Thanks for the buff."</Button>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Adventurers' Guide Apprentice:<br>
Great!<br>
Don't forget what I told you.<br>
A <font color="LEVEL">Wizard's buff</font> is the one you need!<br>
Now, with your strength enhanced, go show that <font color="LEVEL">training dummy</font> who's boss!
</body></html>

View File

@@ -0,0 +1,315 @@
/*
* 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.Q10734_DoOrDie;
import quests.Q10733_TheTestForSurvival.Q10733_TheTestForSurvival;
import com.l2jserver.gameserver.enums.Race;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.holders.SkillHolder;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.network.NpcStringId;
import com.l2jserver.gameserver.network.serverpackets.ExShowScreenMessage;
import com.l2jserver.gameserver.network.serverpackets.TutorialShowHtml;
/**
* @author Sdw
*/
public class Q10734_DoOrDie extends Quest
{
// NPC's
private static final int KATALIN = 33943;
private static final int AYANTHE = 33942;
private static final int ADVENTURER_S_GUIDE_APPRENTICE = 33950;
private static final int TRAINING_DUMMY = 19546;
// Misc
private static final int MAX_LEVEL = 20;
// Skills
private final static SkillHolder[] COMMON_BUFFS =
{
new SkillHolder(5182, 1), // Blessing of Protection
new SkillHolder(15642, 1), // Horn Melody
new SkillHolder(15643, 1), // Drum Melody
new SkillHolder(15644, 1), // Pipe Organ Melody
new SkillHolder(15645, 1), // Guitar Melody
new SkillHolder(15646, 1), // Harp Melody
new SkillHolder(15647, 1), // Lute Melody
new SkillHolder(15651, 1), // Prevailing Sonata
new SkillHolder(15652, 1), // Daring Sonata
new SkillHolder(15653, 1), // Refreshing Sonata
};
private static final SkillHolder WARRIOR_HARMONY = new SkillHolder(15649, 1);
private static final SkillHolder WIZARD_HARMONY = new SkillHolder(15650, 1);
public Q10734_DoOrDie()
{
super(10734, Q10734_DoOrDie.class.getSimpleName(), "Do or Die");
addStartNpc(KATALIN, AYANTHE);
addTalkId(KATALIN, AYANTHE, ADVENTURER_S_GUIDE_APPRENTICE);
addKillId(TRAINING_DUMMY);
addCondMaxLevel(MAX_LEVEL, "33942-08.htm");
addCondRace(Race.ERTHEIA, "33942-08.htm");
addCondCompletedQuest(Q10733_TheTestForSurvival.class.getSimpleName(), "33942-08.htm");
}
@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 "33943-03.htm":
case "33942-03.htm":
{
qs.startQuest();
showOnScreenMsg(player, NpcStringId.ATTACK_THE_TRAINING_DUMMY, ExShowScreenMessage.TOP_CENTER, 4500);
htmltext = event;
break;
}
case "other_buffs":
{
if (player.isMageClass())
{
htmltext = "33950-03.htm";
}
else
{
htmltext = "33950-05.htm";
}
player.sendPacket(new TutorialShowHtml(npc.getObjectId(), "..\\L2Text\\QT_002_Guide_01.htm", TutorialShowHtml.LARGE_WINDOW));
break;
}
case "buffs":
{
if (qs.isCond(4) || qs.isCond(5))
{
showOnScreenMsg(player, NpcStringId.ATTACK_THE_TRAINING_DUMMY, ExShowScreenMessage.TOP_CENTER, 4500);
qs.setCond(6, true);
for (SkillHolder skillHolder : COMMON_BUFFS)
{
npc.setTarget(player);
npc.doCast(skillHolder.getSkill());
}
if (player.isMageClass())
{
htmltext = "33950-06.htm";
npc.setTarget(player);
npc.doCast(WIZARD_HARMONY.getSkill());
}
else
{
htmltext = "33950-04.htm";
npc.setTarget(player);
npc.doCast(WARRIOR_HARMONY.getSkill());
}
}
break;
}
case "33943-02.htm":
case "33942-02.htm":
case "33950-02.htm":
{
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (qs.isCompleted())
{
htmltext = getAlreadyCompletedMsg(player);
}
switch (npc.getId())
{
case KATALIN:
{
switch (qs.getCond())
{
case 0:
{
if (!player.isMageClass())
{
htmltext = "33943-01.htm";
}
else
{
htmltext = "33943-08.htm";
}
break;
}
case 1:
{
if (!player.isMageClass())
{
htmltext = "33943-04.htm";
}
break;
}
case 3:
{
showOnScreenMsg(player, NpcStringId.TALK_TO_THE_APPRENTICE_ADVENTURER_S_GUIDE, ExShowScreenMessage.TOP_CENTER, 4500);
qs.setCond(5, true);
htmltext = "33943-05.htm";
break;
}
case 5:
{
htmltext = "33943-06.htm";
break;
}
case 8:
{
giveAdena(player, 7000, true);
addExpAndSp(player, 805, 2);
qs.exitQuest(false, true);
htmltext = "33943-07.htm";
break;
}
}
break;
}
case AYANTHE:
{
switch (qs.getCond())
{
case 0:
{
if (player.isMageClass())
{
htmltext = "33942-01.htm";
}
else
{
htmltext = "33942-08.htm";
}
break;
}
case 1:
{
if (player.isMageClass())
{
htmltext = "33942-04.htm";
}
break;
}
case 2:
{
showOnScreenMsg(player, NpcStringId.TALK_TO_THE_APPRENTICE_ADVENTURER_S_GUIDE, ExShowScreenMessage.TOP_CENTER, 4500);
qs.setCond(4, true);
htmltext = "33942-05.htm";
break;
}
case 4:
{
htmltext = "33942-06.htm";
break;
}
case 7:
{
giveAdena(player, 7000, true);
addExpAndSp(player, 805, 2);
qs.exitQuest(false, true);
htmltext = "33942-07.htm";
break;
}
}
break;
}
case ADVENTURER_S_GUIDE_APPRENTICE:
{
switch (qs.getCond())
{
case 4:
case 5:
{
htmltext = "33950-01.htm";
break;
}
case 6:
{
if (player.isMageClass())
{
htmltext = "33950-06.htm";
}
else
{
htmltext = "33950-04.htm";
}
break;
}
}
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, false);
if (qs == null)
{
return super.onKill(npc, killer, isSummon);
}
if (npc.getId() == TRAINING_DUMMY)
{
if (qs.isCond(1))
{
if (killer.isMageClass())
{
qs.setCond(2, true);
}
else
{
qs.setCond(3, true);
}
}
else if (qs.isCond(6))
{
if (killer.isMageClass())
{
qs.setCond(7, true);
}
else
{
qs.setCond(8, true);
}
}
}
return super.onKill(npc, killer, isSummon);
}
}