Rise and Fall of the Elroki Tribe
- ID
- 643
- Название
- Rise and Fall of the Elroki Tribe
- start_npcs_json
- [32106]
- npc_ids_json
- [32106,32117]
- constants_json
- {"SINGSING":32106,"KARAKAWEI":32117,"BONES":8776}
- Статус разбора
- metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
- Источник
- game/data/scripts/quests/Q00643_RiseAndFallOfTheElrokiTribe/Q00643_RiseAndFallOfTheElrokiTribe.java
NPC квеста
Условия уровней: выражения из Java
htmltext = (player.getLevel() < 75) ? "32106-00.htm" : "32106-01.htm";
Выдача предметов, адены и опыта: выражения из Java
giveAdena(player, count * 1374, true); rewardItems(player, getRandom(8712, 8722), 5); giveItems(partyMember, BONES, 1);
Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.
Тексты квеста
[32106-00.htm] Singsing: Ah, an adventurer! Are you looking for a job? Since the discovery of this Primeval Isle, Aden port has added a wharf for those interested in seeing the strange new island for themselves. In fact, we're getting flooded with adventurers and wizards eager to uncover the island's mysteries or test their mettle against the terrible creatures there. We handle tickets here for the ship bound for the island as well as offering accommodations for those who wish to trade with the natives. Now we have expanded our service to connect adventurers with those in need of their services. I have just one request, but hmmm... I don't think that you're suited for this particular task. (This quest may only be undertaken by a character of level 75 and above.)
[32106-01.htm] Singsing: Ah, an adventurer! Are you looking for a job? Since the discovery of this Primeval Isle, Aden port has added a wharf for those interested in seeing the strange new island for themselves. In fact, we're getting flooded with adventurers and wizards eager to uncover the island's mysteries or test their mettle against the terrible creatures there. We handle tickets here for the ship bound for the island as well as offering accommodations for those who wish to trade with the natives. Now we have expanded our service to connect adventurers with those in need of their services. Ah, but there is one request I have... "What kind of request?"
[32106-02.htm] Singsing: On this Primeval Isle you'll find primitive creatures called dinosaurs -- you'll never see anything like them in Aden, believe me! According to wise wizards, even the gods and Giants were afraid of the dinosaurs. They cannot be found in Aden -- thankfully -- but are still plentiful on that strange island. Around the wharf, you'll find only relatively weak ones, but they are still a challenge for even the hardiest adventurer. The wizard Karakawei has been pestering me to acquire some of those creatures' bone for study. If you defeat them and bring back their bones, I will purchase them from you on his behalf. What do you say? "Doesn't sound that tough -- count me in." "Ah, I really can't stand reptiles... Sorry, but I'll pass."
[32106-03.htm] Singsing: Ah, you are a true adventurer! Go and hunt Pachycephalosaurus and wild striders and bring back the bones of dinosaurs from the plains. I will purchase them from you on Karakawei's behalf. Just as a favor to you, I heard from a friend of mine who trades with the island natives that the native shaman is also in the market for dinosaur bones. While you're at it, you may want to try to contact him as well. "Where can I find this native shaman?"
[32106-03a.htm] Singsing: Sure, I understand. I don't think this island is the place for you, though, if you're afraid of reptiles. (So much for being an adventurer!)
[32106-04.htm] Singsing: The shaman lives on the island's southern Primeval Plains. He doesn't like to have contact with outsiders, though, so you'll need someone he trusts to vouch for you before he'll likely talk to you. There is a native warrior, Orahochin, who lives at the foot of the mountain between the southern shore of Primeval Plains and the Lost Nest. I've heard that he is more accepting of outsiders.
[32106-05.htm] Singsing: Please go and collect those dinosaur bones as quickly as possible. Karakawei's been pressing me even harder these days. Without the bones, I think his research has ground to a halt. He's planning to present his findings to the Mizbody Magic Association very soon, and I know he's getting anxious. So get started! Hunt the Pachycephalosaurus and wild striders from the plains and bring back their bones.
[32106-06.htm] Singsing: I see that you've returned! The bones of dinosaurs from the plains you've brought will certainly further Pillbug's research...and I'm sure he'll pay well for them. Give him the bones. Tell him that you will take the bones to the native shaman instead.
[32106-07.htm] Singsing: Well done! Karakawei will be very pleased. Here's the fee we agreed upon; I trust it's sufficient. Say, since you've done such a good job, how about continuing this kind of work? Continue. Stop.
[32106-08.htm] Singsing: Glad to hear it! I think you'll make us both rich men at this rate. Go and hunt Pachycephalosaurus and wild striders and bring back their bones.
[32106-09.htm] Singsing: Well, thanks for your help. It was a pleasure doing business with you, and I wish you the best of luck during your stay on this Primeval Isle.
[32106-10.htm] Singsing: Hey, that wasn't really what I had in mind... Ah, I suppose it is your decision how to dispose of the bones of dinosaurs from the plains. You did risk your own skin for them, after all. But are you sure that this is the most profitable thing for you to do? "Where can I find the native shaman?"
[32117-01.htm] Shaman Karakawei: Once our race was strong and wise, Shilen's chosen people to govern these powerful primitive creatures, dinosaurs, who struck fear into the hearts of the very gods themselves. But long ago, Shilen fell silent; our prayers to her now go unanswered. Ask why she no longer responds.
[32117-02.htm] Karakawei: We know not... Perhaps we have been unfaithful. But we must win back Shilen's grace. Without it, we grow weaker with each passing season, sickening like a tree deprived of sunlight. Even the dinosaurs we once commanded turn on us, tearing our people to pieces! Outsider, if you are willing to help us to earn back the grace of Shilen, would you donate 300 bones from the dinosaurs of the plains? Hand him the bones of dinosaurs of the plains. "I'm really not interested in helping a primitive race like you. You keep to your business and I'll keep to mine!"
[32117-03.htm] Shaman Karakawei: Thank you, adventurer... I can now perform the ritual. (Karakawei softly chants and seems to lose consciousness.) .... .... .... .... (Suddenly, his eyes open!) Ah, I feel that Shilen is satisfied with the ritual! Thank you, adventurer... Please accept this as a token of our appreciation. I also ask that you bring back those bones of the dinosaurs from the plains so that we may continue with these rituals!
[32117-04.htm] Shaman Karakawei: To undertake the necessary ritual, I need 300 bones of dinosaurs from the plains. Unless I do this, the curse cannot be lifted; Shilen's grace will be forever denied to us, I fear. Please make haste and hunt Pachycephalosaurus and wild striders and bring back 300 bones of dinosaurs from the plains.
[32117-05.htm] Shaman Karakawei: Hmmmph! Arrogant, you are, like all outsiders. If my race still had the power of the old days, you would treat us with the respect that is our due! Ah, Shilen...forgive us! You, leave now if you still refuse to help us in our time of need.
Исходник условий и наград (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.Q00643_RiseAndFallOfTheElrokiTribe;
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 Q00643_RiseAndFallOfTheElrokiTribe extends Quest
{
// NPCs
private static final int SINGSING = 32106;
private static final int KARAKAWEI = 32117;
// Items
private static final int BONES = 8776;
public Q00643_RiseAndFallOfTheElrokiTribe()
{
super(643, "Rise and Fall of the Elroki Tribe");
registerQuestItems(BONES);
addStartNpc(SINGSING);
addTalkId(SINGSING, KARAKAWEI);
addKillId(22208, 22209, 22210, 22211, 22212, 22213, 22221, 22222, 22226, 22227);
}
@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 "32106-03.htm":
{
st.startQuest();
break;
}
case "32106-07.htm":
{
final int count = getQuestItemsCount(player, BONES);
takeItems(player, BONES, count);
giveAdena(player, count * 1374, true);
break;
}
case "32106-09.htm":
{
st.exitQuest(true, true);
break;
}
case "32117-03.htm":
{
final int count = getQuestItemsCount(player, BONES);
if (count >= 300)
{
takeItems(player, BONES, 300);
rewardItems(player, getRandom(8712, 8722), 5);
}
else
{
htmltext = "32117-04.htm";
}
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:
{
htmltext = (player.getLevel() < 75) ? "32106-00.htm" : "32106-01.htm";
break;
}
case State.STARTED:
{
switch (npc.getId())
{
case SINGSING:
{
htmltext = (hasQuestItems(player, BONES)) ? "32106-06.htm" : "32106-05.htm";
break;
}
case KARAKAWEI:
{
htmltext = "32117-01.htm";
break;
}
}
break;
}
}
return htmltext;
}
@Override
public void onKill(Npc npc, Player player, boolean isPet)
{
final QuestState st = getRandomPartyMemberState(player, -1, 3, npc);
if ((st == null) || !st.isStarted())
{
return;
}
if (getRandom(100) < 75)
{
final Player partyMember = st.getPlayer();
giveItems(partyMember, BONES, 1);
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
}