A Trip Begins
- ID
- 7
- Название
- A Trip Begins
- start_npcs_json
- [30146]
- npc_ids_json
- [30146,30148,30154]
- constants_json
- {"MIRABEL":30146,"ARIEL":30148,"ASTERIOS":30154,"ARIEL_RECO":7572,"MARK_TRAVELER":7570,"SOE_GIRAN":7559}
- Статус разбора
- metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
- Источник
- game/data/scripts/quests/Q00007_ATripBegins/Q00007_ATripBegins.java
NPC квеста
Условия уровней: выражения из Java
else if (player.getLevel() < 3)
Выдача предметов, адены и опыта: выражения из Java
giveItems(player, ARIEL_RECO, 1); giveItems(player, MARK_TRAVELER, 1); rewardItems(player, SOE_GIRAN, 1);
Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.
Тексты квеста
[30146-01.htm] Gatekeeper Mirabel: Very few gatekeepers truly understand this world. I've visited countless cities and villages, but certainly can't say that I understand everyone who lives in them. It's hard to find a place as beautiful and peaceful as our Elven Forest, but the outside world also has much to offer. In particular, an unspeakably crowded place like Giran is full of opportunities. As a traveler, you must know what I'm talking about. (This quest may only be undertaken by an Elven character of level 3 and above.)
[30146-01a.htm] Gatekeeper Mirabel: Very few gatekeepers truly understand this world. I've visited countless cities and villages, but certainly can't say that I understand everyone who lives in them. It's hard to find a place as beautiful and peaceful as our Elven Forest, but the outside world also has much to offer. In particular, an unspeakably crowded place like Giran is full of opportunities. Hopefully, someday, you'll be ready to go exploring there. (This quest may only be undertaken by an Elf of level 3 to 10.)
[30146-02.htm] Gatekeeper Mirabel: I'm one of the few who truly grasps this world, yet I can't claim to understand all the people in it. I know it's hard to find a place as peaceful as our Elven Forest, but the outside world also has much to offer, especially Giran. We shouldn't just stick to our forest, but interact with others to try and understand them! "I want to see the world!"
[30146-03.htm] Gatekeeper Mirabel: You are imprudent! Though you can travel to the outside world via this space-time door, it should only be used at my discretion. You don't even know where you should go! Experience is the best teacher, but it will not be easy for you to adjust to the outer world, removed from the comforting shade of the World Tree and the benefits of Eva's protection. If you really wish to travel to the outside world, ask for advice from a more experienced traveler: Trader Ariel, for example. He is widely-traveled adventurer who could advise you on how to prepare and what to expect. Go talk with him.
[30146-04.htm] Gatekeeper Mirabel: Seek the advice of an experienced traveler. Before Trader Ariel returned to the Elven Forest to open her shop, she used to be a traveler who went here and there. Go try speaking with her.
[30146-05.htm] Gatekeeper Mirabel: Hierarch Asterios told me you would come. Are you prepared? "I'm ready!"
[30146-06.htm] Gatekeeper Mirabel: Excellent! I gave you a Scroll of Escape to the Town of Giran and a Traveler's Mark. Now remember, it can only be used once, and I gave you my last one! The Traveler's Mark was provided by Hierarch Asterios. When you're ready to return, visit Trader Galladucci at his boutique. Show him the mark and he'll help you. You must be careful! Giran is a very crowded and chaotic place and there are dangerous beasts there! May the divine blessings of Eva be upon you!
[30148-01.htm] Trader Ariel: You don't look like you're here to browse. Is it because you think you're ready to venture into the outside world? Heh ... perhaps you are. Some might disagree with me, but I've come to accept that it's natural for a young elf such as yourself to want more than the protection of the Mother Tree. A part of me is happy, yet a part of me is sad to see you go. Many different races, including orcs, dwarves and humans make up that place. So it can't help but be very different from this place, where the only ones you'll meet are other elves. Not all the memories you create for yourself will be happy ones. Do you still want to venture to the world outside? Say Yes.
[30148-02.htm] Trader Ariel: Well, if you've got your mind made up, I won't try to stop you... You young Elves always have to learn things the hard way! Fortunately for you, Hierarch Asterios is sponsoring young Elves who want to experience the outside world. I'll write you a letter of Recommendation. Take it with you when you go see him!
[30148-03.htm] Trader Ariel: Do you have that Recommendation letter I wrote for you? Take it to Hierarch Asterios, I'm sure he'll sponsor you!
[30154-01.htm] Hierarch: I recently received a message from Ariel. The outside world of the Humans who exiled us here has changed very much, to the point that it is unrecognizable to us Elves, living in isolation. Their world is now one of total chaos! Far be it for me to deny a young Elf his travels, but I must remind you, there's much to be done here at home. You must prioritize. Remember your home and the sacred Mother Tree! You must promise to return one day! "I shall return!"
[30154-02.htm] Hierarch: The outside world is a terribly chaotic place, nothing like our beautiful Elven Forest. Don't get me wrong, we have our share of problems, but nothing approaching the ravages that plague the world of the Humans. But I've always said, "All young Elves should see the Town of Giran at least once!" It's a Human village and an important travel hub. It's also a microcosm of the outside world and would be the perfect place for you to start your journey. When you're ready to go, speak with Gatekeeper Mirabel. I'll ask her to help you.
[30154-03.htm] Hierarch Asterios: I've spoken with Gatekeeper Mirabel, and she's agreed to help you. May Eva bless you along your journey.
Исходник условий и наград (Java)
/*
* Copyright (c) 2013 L2jMobius
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
* IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package quests.Q00007_ATripBegins;
import org.l2jmobius.gameserver.entity.actor.Npc;
import org.l2jmobius.gameserver.entity.actor.Player;
import org.l2jmobius.gameserver.entity.actor.enums.creature.Race;
import org.l2jmobius.gameserver.mechanics.script.Quest;
import org.l2jmobius.gameserver.mechanics.script.QuestState;
import org.l2jmobius.gameserver.mechanics.script.State;
public class Q00007_ATripBegins extends Quest
{
// NPCs
private static final int MIRABEL = 30146;
private static final int ARIEL = 30148;
private static final int ASTERIOS = 30154;
// Items
private static final int ARIEL_RECO = 7572;
// Rewards
private static final int MARK_TRAVELER = 7570;
private static final int SOE_GIRAN = 7559;
public Q00007_ATripBegins()
{
super(7, "A Trip Begins");
registerQuestItems(ARIEL_RECO);
addStartNpc(MIRABEL);
addTalkId(MIRABEL, ARIEL, ASTERIOS);
}
@Override
public String onEvent(String event, Npc npc, Player player)
{
String htmltext = event;
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}
switch (event)
{
case "30146-03.htm":
{
st.startQuest();
break;
}
case "30148-02.htm":
{
st.setCond(2, true);
giveItems(player, ARIEL_RECO, 1);
break;
}
case "30154-02.htm":
{
st.setCond(3, true);
takeItems(player, ARIEL_RECO, 1);
break;
}
case "30146-06.htm":
{
giveItems(player, MARK_TRAVELER, 1);
rewardItems(player, SOE_GIRAN, 1);
st.exitQuest(false, true);
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, Player player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
switch (st.getState())
{
case State.CREATED:
{
if (player.getRace() != Race.ELF)
{
htmltext = "30146-01.htm";
}
else if (player.getLevel() < 3)
{
htmltext = "30146-01a.htm";
}
else
{
htmltext = "30146-02.htm";
}
break;
}
case State.STARTED:
{
final int cond = st.getCond();
switch (npc.getId())
{
case MIRABEL:
{
if ((cond == 1) || (cond == 2))
{
htmltext = "30146-04.htm";
}
else if (cond == 3)
{
htmltext = "30146-05.htm";
}
break;
}
case ARIEL:
{
if (cond == 1)
{
htmltext = "30148-01.htm";
}
else if (cond == 2)
{
htmltext = "30148-03.htm";
}
break;
}
case ASTERIOS:
{
if (cond == 2)
{
htmltext = "30154-01.htm";
}
else if (cond == 3)
{
htmltext = "30154-03.htm";
}
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}