Deliver Supplies
- ID
- 168
- Название
- Deliver Supplies
- start_npcs_json
- [30349]
- npc_ids_json
- [30349,30355,30357,30360]
- constants_json
- {"JENNA":30349,"ROSELYN":30355,"KRISTIN":30357,"HARANT":30360,"JENNA_LETTER":1153,"SENTRY_BLADE_1":1154,"SENTRY_BLADE_2":1155,"SENTRY_BLADE_3":1156,"OLD_BRONZE_SWORD":1157}
- Статус разбора
- metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
- Источник
- game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java
NPC квеста
Условия уровней: выражения из Java
else if (player.getLevel() < 3)
Выдача предметов, адены и опыта: выражения из Java
giveItems(player, JENNA_LETTER, 1); giveAdena(player, 820, true); giveItems(player, SENTRY_BLADE_1, 1); giveItems(player, SENTRY_BLADE_2, 1); giveItems(player, SENTRY_BLADE_3, 1); giveItems(player, OLD_BRONZE_SWORD, 1); giveItems(player, OLD_BRONZE_SWORD, 1);
Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.
Тексты квеста
[30349-00.htm] Sentry Jenna: I am quite busy with the delivery of military goods, but I have no thought of seeking the help of a foreign race such as yourself. Go away. You're bothering my work. (This quest may only be undertaken by a Dark Elven character.)
[30349-01.htm] Sentry Jenna: Have you ever met Tetrarch Kaitar? They say that he has been blessed by the goddess with the power to predict future perils. His prophecy is sometimes ambiguous and hard to understand, but it has never been false. So, everyone listens to the predictions of Kaitar. Sometimes I get chills up my spine as I see him cast his predictions. I can feel the forces reaching out even to me. Just a few days ago, he said the Dark Forest may be attacked by a foreign power. Who the invader is and how powerful the enemy may be are still unclear, but we sentry sisters are thoroughly preparing ourselves, as the village may fall under attack. As a preventive measure I've ordered new adamantium weapons from Magister Harne, but haven't gotten them yet. I am currently on duty and cannot leave my post, but could I ask you later to fetch the goods for me? (This quest may only be undertaken by a character of level 3 and above.)
[30349-02.htm] Sentry Jenna: Have you ever met Tetrarch Kaitar? They say that he has been blessed by the goddess with the power to predict future perils. His prophecy is sometimes ambiguous and hard to understand, but it has never been false. So everyone listens to the predictions of Kaitar. Sometimes I get chills up my spine as I see him cast his predictions. I can feel the forces reaching out even to me. Just a few days ago, he said the Dark Forest may be attacked by a foreign invader. Who the invader is and how powerful the enemy may be are still unclear, but we sentry sisters are thoroughly preparing ourselves, as the village may fall under attack. As a preventive measure I've ordered new adamantite weapons from Master Harant, but haven't gotten them yet. I cannot leave my post because I am on duty, but could you go and see Harant for me and bring back the goods that I have ordered? Say you will go and fetch the goods
[30349-03.htm] Sentry Jenna: Go to Master Harant and give him this letter. And if he is finished with our weapon orders, please bring them here. I will give you compensation for performing this deed for us. To meet Master Harant, go into the village and head to the Sanctum of Shilen, the building where the four Tetrarchs reside. Follow the cave behind me and go to the center of the village square. Then take the stairs on the right. The great building at the top of the stairs is the Sanctum of Shilen. It is a holy place, so purify your mind before you enter.
[30349-04.htm] Sentry Jenna: Haven't you been able to meet Master Harant yet? He is in the Sanctum of Shilen in the village. It is the building where the four Tetrarchs and many Masters reside. Follow the cave behind me and go to the center of the village square. Then take the stairs on the right. The great building at the top of the stairs is the Sanctum of Shilen.
[30349-05.htm] Sentry Jenna: So Master Harant has not finished his task yet. We need to get that equipment soon ... Well, we must first deliver these weapons to my sisters. Give me one sword, to begin with. And deliver the rest to Sentry Roselyn and Sentry Kristin. Bring back the Old Bronze Swords they have been using while you're at it. Roselyn is standing guard at the entrance of the village. You can reach her by going through the cave behind me. And Krispen is on duty at the village entrance opposite Roselyn.
[30349-06.htm] Sentry Jenna: Well done. I must gather our old bronze swords and send them to Blacksmith Karrod. They will be used to make useful items, such as armor or shields. Our motto is to reward even the most minuscule of tasks. Please accept this as payment for your work on behalf of my sisters and me. May the blessings of Shilen be with you until we meet again.
[30349-07.htm] Sentry Jenna: I see that you have not delivered the swords to my sisters yet. Please deliver the weapons to Sentries Roselyn and Kristin and bring back the old bronze swords they have been using. Roselyn is standing guard at the entrance of the village. You can reach her by going through the cave behind me. And Kristin is on duty at the village entrance opposite Roselyn.
[30355-01.htm] Sentry Roselyn: Is this the new sword? Master Harant's skills are the best, as always. This is an excellent weapon for the Sentries, who are responsible for the safety of the village, to use. Compared to this, the Old Bronze Sword seems primitive. Here, take it. It is of no use to me anymore.
[30355-02.htm] Sentry Roselyn: Please give my old bronze sword to Sentry Jenna. And please tell her that I am very satisfied with the new sentry blade.
[30357-01.htm] Sentry Kristin: So this is the new Sentry Blade. A fine sword it is. Compared to this, the Old Bronze Sword is clunky and clumsy. Still, it is a bit sad -- though it may be old, I have grown attached to this sword, but I am sure it will be put to good use by someone else.
[30357-02.htm] Sentry Kristin: Please give my Old Bronze Sword to Sentry Jenna. Outdated weapons are to be sent to Blacksmith Karrod. I guess that my old sword will be melted down and used to make new weapons or armor. It's regrettable, but we cannot waste our resources at a time like this.
[30360-01.htm] Master Harant: Ah, so Jenna sent you. The new weapons for the sentries have been finished. This is all thanks to Blacksmith Karrod, who has worked day and night to finish them. These are prime swords crafted of adamantite. But I have not finished the task of casting magic on these weapons. Well, it's not anything elaborate, just magic that makes the sword a little bit lighter and the blade a little bit sharper. I need more time to finish my task ... But since Jenna seems so anxious, go and deliver these three swords that are finished. And give her regards from Master Harant.
[30360-02.htm] Master Harant: Weren't you supposed to deliver those adamantite swords to Sentry Jenna? Please hurry, I'm sure the sentries are eagerly waiting to receive them. It would be a disaster if the village were invaded in the time that you are lazing around, right?
Исходник условий и наград (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.Q00168_DeliverSupplies;
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 Q00168_DeliverSupplies extends Quest
{
// NPCs
private static final int JENNA = 30349;
private static final int ROSELYN = 30355;
private static final int KRISTIN = 30357;
private static final int HARANT = 30360;
// Items
private static final int JENNA_LETTER = 1153;
private static final int SENTRY_BLADE_1 = 1154;
private static final int SENTRY_BLADE_2 = 1155;
private static final int SENTRY_BLADE_3 = 1156;
private static final int OLD_BRONZE_SWORD = 1157;
public Q00168_DeliverSupplies()
{
super(168, "Deliver Supplies");
registerQuestItems(JENNA_LETTER, SENTRY_BLADE_1, SENTRY_BLADE_2, SENTRY_BLADE_3, OLD_BRONZE_SWORD);
addStartNpc(JENNA);
addTalkId(JENNA, ROSELYN, KRISTIN, HARANT);
}
@Override
public String onEvent(String event, Npc npc, Player player)
{
String htmltext = event;
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}
if (event.equals("30349-03.htm"))
{
st.startQuest();
giveItems(player, JENNA_LETTER, 1);
}
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.DARK_ELF)
{
htmltext = "30349-00.htm";
}
else if (player.getLevel() < 3)
{
htmltext = "30349-01.htm";
}
else
{
htmltext = "30349-02.htm";
}
break;
}
case State.STARTED:
{
final int cond = st.getCond();
switch (npc.getId())
{
case JENNA:
{
if (cond == 1)
{
htmltext = "30349-04.htm";
}
else if (cond == 2)
{
htmltext = "30349-05.htm";
st.setCond(3, true);
takeItems(player, SENTRY_BLADE_1, 1);
}
else if (cond == 3)
{
htmltext = "30349-07.htm";
}
else if (cond == 4)
{
htmltext = "30349-06.htm";
takeItems(player, OLD_BRONZE_SWORD, 2);
giveAdena(player, 820, true);
st.exitQuest(false, true);
}
break;
}
case HARANT:
{
if (cond == 1)
{
htmltext = "30360-01.htm";
st.setCond(2, true);
takeItems(player, JENNA_LETTER, 1);
giveItems(player, SENTRY_BLADE_1, 1);
giveItems(player, SENTRY_BLADE_2, 1);
giveItems(player, SENTRY_BLADE_3, 1);
}
else if (cond == 2)
{
htmltext = "30360-02.htm";
}
break;
}
case ROSELYN:
{
if (cond == 3)
{
if (hasQuestItems(player, SENTRY_BLADE_2))
{
htmltext = "30355-01.htm";
takeItems(player, SENTRY_BLADE_2, 1);
giveItems(player, OLD_BRONZE_SWORD, 1);
if (getQuestItemsCount(player, OLD_BRONZE_SWORD) == 2)
{
st.setCond(4, true);
}
}
else
{
htmltext = "30355-02.htm";
}
}
else if (cond == 4)
{
htmltext = "30355-02.htm";
}
break;
}
case KRISTIN:
{
if (cond == 3)
{
if (hasQuestItems(player, SENTRY_BLADE_3))
{
htmltext = "30357-01.htm";
takeItems(player, SENTRY_BLADE_3, 1);
giveItems(player, OLD_BRONZE_SWORD, 1);
if (getQuestItemsCount(player, OLD_BRONZE_SWORD) == 2)
{
st.setCond(4, true);
}
}
else
{
htmltext = "30357-02.htm";
}
}
else if (cond == 4)
{
htmltext = "30357-02.htm";
}
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}