Collect Spores
- ID
- 313
- Название
- Collect Spores
- start_npcs_json
- [30150]
- npc_ids_json
- []
- constants_json
- {"SPORE_SAC":1118}
- Статус разбора
- metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
- Источник
- game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java
NPC квеста
Записей нет.
Условия уровней: выражения из Java
htmltext = (player.getLevel() < 8) ? "30150-02.htm" : "30150-03.htm";
Выдача предметов, адены и опыта: выражения из Java
giveAdena(player, 3500, true); giveItems(player, SPORE_SAC, 1);
Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.
Тексты квеста
[30150-02.htm] Trader Herbiel: A long time ago, there was a beautiful forest beyond the mountains to the east of the Elven Forest. We Elves used to live there. But the land became devastated due to the forbidden magic that was used two thousand years ago during the war between the Humans and the Elves. Now it is called the Sea of Spores. Today, the problem is that the Sea of Spores is slowly expanding bit by bit. Of course, we are trying to stop its expansion with a magical defense field, but our forest has become gradually contaminated over hundreds of years, from the poisons that seep out of the Sea of Spores. We are all trying our best to solve the problem, but it is not an easy thing to do. There may be a day when I will require your assistance. (This quest may only be undertaken by a character of level 8 and above.)
[30150-03.htm] Trader Herbiel: A long time ago, there was a beautiful forest beyond the mountains to the east of the Elven Forest. We Elves used to live there. But the land became devastated due to the forbidden magic that was used two thousand years ago during the war between the Humans and the Elves. Now it is called the Sea of Spores. Today, the problem is that the Sea of Spores is slowly expanding bit by bit. Of course, we are trying to stop its expansion with a magical defense field, but our forest has become gradually contaminated over hundreds of years from the poisons that seep out of the Sea of Spores. It is because of this that the spirits of the forest are becoming more aggressive, and creatures like the walking fungus are increasing in number. Recently, we have been conducting studies to find a way of purifying the Sea of Spores of its poisons, and returning it to the beautiful woods it once was. Ask about the studies.
[30150-04.htm] Trader Herbiel: Currently, our Elven studies are divided into two directions. The famous Spellsinger Adria Lumingshine travels to the Sea of Spores to conduct her studies, while Hierarch Asterios is preoccupied with neutralizing the poisons that enter our forest from the Sea of Spores. I assist the hierarch's research by collecting leaves, roots and spores of various plants and refining them. However, the hierarch has recently asked me to help his research by finding some spore pollen that was carried here by the wind from the Sea of Spores. However, these spores are so fine that it is almost impossible to find them. The only method is to extract them from the spore fungus, a hybrid of the spores and plants of the forest. That is why I need your help. Please find me some Spore Sacs from the spore fungus of the forest. How about it? Will you take the job? Say you will take the job.
[30150-05.htm] Trader Herbiel: Spore fungi are found here and there within the Elven Forest. Defeat the fungi and you will be able to obtain the Spore Sacs. However, the Spore Sac may tear when the fungus is killed, and obtaining them may be more difficult than you think. The Hierarch says that ten Spore Sacs are needed for his research. Good luck.
[30150-06.htm] Trader Herbiel: Ten Spore Sacs are needed for the Hierarch's studies. Please try harder.
[30150-07.htm] Trader Herbiel: Thank you. Now all I have to do is extract the powder from the Spore Sacs. We must take care as the poison may spread. Again, thank you. You have performed a great deed for the brothers of the forest. Please accept this. It is not much, but it is a small token of my gratitude.
Исходник условий и наград (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.Q00313_CollectSpores;
import org.l2jmobius.gameserver.entity.actor.Npc;
import org.l2jmobius.gameserver.entity.actor.Player;
import org.l2jmobius.gameserver.mechanics.script.Quest;
import org.l2jmobius.gameserver.mechanics.script.QuestSound;
import org.l2jmobius.gameserver.mechanics.script.QuestState;
import org.l2jmobius.gameserver.mechanics.script.State;
public class Q00313_CollectSpores extends Quest
{
// Item
private static final int SPORE_SAC = 1118;
public Q00313_CollectSpores()
{
super(313, "Collect Spores");
registerQuestItems(SPORE_SAC);
addStartNpc(30150); // Herbiel
addTalkId(30150);
addKillId(20509); // Spore Fungus
}
@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("30150-05.htm"))
{
st.startQuest();
}
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:
{
htmltext = (player.getLevel() < 8) ? "30150-02.htm" : "30150-03.htm";
break;
}
case State.STARTED:
{
if (st.isCond(1))
{
htmltext = "30150-06.htm";
}
else
{
htmltext = "30150-07.htm";
takeItems(player, SPORE_SAC, -1);
giveAdena(player, 3500, true);
st.exitQuest(true, true);
}
break;
}
}
return htmltext;
}
@Override
public void onKill(Npc npc, Player player, boolean isPet)
{
final QuestState st = getQuestState(player, false);
if ((st == null) || !st.isCond(1))
{
return;
}
if (getRandom(10) < 4)
{
giveItems(player, SPORE_SAC, 1);
if (getQuestItemsCount(player, SPORE_SAC) < 10)
{
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
else
{
st.setCond(2, true);
}
}
}
}