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>Captain Lucas:<br>
Based on my observations, I don't think you are yet ready to handle the Kaneus.<br>
(Only characters level 28 and above are permitted to undertake this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Captain Lucas:<br>
I heard tales of your recent activities. You have already acquired a reputation as an accomplished adventurer. Perhaps you have already heard about the <font color="LEVEL">Mutated Kaneus of Kamaloka</font>. I have been asked to help investigate these strange creatures, but my duties unfortunately keep me far too busy. Perhaps you could help me...<br>
<a action="bypass -h Quest Q10277_MutatedKaneusDion 30071-02.htm">"What kind of help do you need?"</a>
</body></html>

View File

@@ -0,0 +1,8 @@
<html><body>Captain Lucas:<br>
I heard from <font color="LEVEL">Magister Mirien</font> in the Temple of Einhasad that the Sages of Magic, a group of magisters to which Magister Mirien belongs, are researching the Kaneus -- the monsters of the Kamaloka that recently came into existence; he has asked me for a favor.<br>
Kamaloka exists between this world and the infernal regions; it it regular monsters suddenly mutate into Kaneus.<br>
But we do not know the specific cause of this mutation.<br>
To learn more, they've asked me to provide them with <font color="LEVEL">cellular tissues of the Kaneus</font>. Will you help me?<br>
<font color="LEVEL">(Only characters able to enter Kamaloka, Hall of the Abyss level 33 and 36, may undertake this quest.)</font><br>
<a action="bypass -h Quest Q10277_MutatedKaneusDion 30071-03.html">Say yes.</a>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Captain Lucas:<br>
Excellent! Visit either of the 2 Kamalokas we can enter from Dion, kill the Kaneus there and extract their cellular tissues.<br>
You will face the <font color="LEVEL">Crimson Hatu Otis and Seer Flouros</font> Kaneus. The Crimson Hatu Otis is much weaker, so I'd advise that you pursue it first.<br>
When you have extracted all the cellular tissues of the 2 creatures, take them to <font color="LEVEL">Magister Mirien</font> at the Temple of Einhasad. I know she and the other Sages will appreciate your efforts.<br>
Good hunting!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Captain Lucas:<br>
The magisters become agitated if their research is delayed for any reason, so deliver the cellular tissue samples as quickly as possible. Those aren't people you want irritated with you, you know!<br>
Hurry to Kamaloka, and good hunting!
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Captain Lucas:<br>
Ah! Are these the <font color="LEVEL">cellular tissues of Crimson Hatu and Seer Flouros</font>?<br>
From their pristine appearance, I can tell you were very careful. I couldn't have done better myself. Well done!<br>
Now take these samples to <font color="LEVEL">Magister Mirien</font> at the Temple of Einhasad. He will be very pleased.<br>
If we can determine the nature of the mutated Kaneus, your efforts will not be forgotten! But there is no time to waste, so hurry and take these samples to <font color="LEVEL">Magister Mirien</font> before they deteriorate!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Captain Lucas:<br>
Ah, it's you! Magister Mirien asked me to convey his gratitude to you. He said that the cellular tissues of the mutated Kaneus from the <font color="LEVEL">Kamaloka of Dion</font> that you delivered to the were a great help. Well done!
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Magister Mirien:<br>
I heard about you from Captain Lucas. You'e the one who helped the Sages of Magic study the mutated Kaneus in Kamaloka, aren't you?<br>
I can now you now that our study is not limited simply to those mutants. Actually, Kamaloka itself is an omen of impending crisis and chaos. Others magisters may think differently, but that's the view of my fellow Sages and myself.<br>
We hope that by studying the Kaneus, we can determine what specifically triggered the mutations.<br>
Brave adventurer, you must return to Kamaloka and bring us more <font color="LEVEL">tissue samples from the mutated Kaneus</font>. Your act could greatly accelerate our research.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Mirien:<br>
This is it. Tissue samples of the mutated Kaneus!<br>
Now we can move forward with our study about the mutated Kaneus and the nature of Kamaloka. Soon we will discover their underlying nature! This is only the beginning of a long journey to find the truth.<br>
<a action="bypass -h Quest Q10277_MutatedKaneusDion 30461-03.html">Beginning of a journey?"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Magister Mirien:<br>
Yes. The journey to reveal the truth about Kamaloka and Kaneus can now begin in earnest thanks to the tissue samples you provided.<br>
But there are still many Kamalokas to be investigated in this world. And it is vital that we gather information about every Kamaloka. You have already become an important member of this study.<br>
Thank you for your work. Good luck!
</body></html>

View File

@@ -0,0 +1,172 @@
/*
* 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.Q10277_MutatedKaneusDion;
import java.util.ArrayList;
import java.util.List;
import com.l2jserver.gameserver.enums.QuestSound;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State;
/**
* Mutated Kaneus - Dion (10277)<br>
* Original Jython script by Gnacik on 2010-06-29.
* @author nonom
*/
public class Q10277_MutatedKaneusDion extends Quest
{
// NPCs
private static final int LUKAS = 30071;
private static final int MIRIEN = 30461;
private static final int CRIMSON_HATU = 18558;
private static final int SEER_FLOUROS = 18559;
// Items
private static final int TISSUE_CH = 13832;
private static final int TISSUE_SF = 13833;
public Q10277_MutatedKaneusDion()
{
super(10277, Q10277_MutatedKaneusDion.class.getSimpleName(), "Mutated Kaneus - Dion");
addStartNpc(LUKAS);
addTalkId(LUKAS, MIRIEN);
addKillId(CRIMSON_HATU, SEER_FLOUROS);
registerQuestItems(TISSUE_CH, TISSUE_SF);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "30071-03.html":
st.startQuest();
break;
case "30461-03.html":
st.giveAdena(20000, true);
st.exitQuest(false, true);
break;
}
return event;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
QuestState st = getQuestState(killer, false);
if (st == null)
{
return super.onKill(npc, killer, isSummon);
}
final int npcId = npc.getId();
if (killer.getParty() != null)
{
final List<QuestState> PartyMembers = new ArrayList<>();
for (L2PcInstance member : killer.getParty().getMembers())
{
st = getQuestState(member, false);
if ((st != null) && st.isStarted() && (((npcId == CRIMSON_HATU) && !st.hasQuestItems(TISSUE_CH)) || ((npcId == SEER_FLOUROS) && !st.hasQuestItems(TISSUE_SF))))
{
PartyMembers.add(st);
}
}
if (!PartyMembers.isEmpty())
{
rewardItem(npcId, PartyMembers.get(getRandom(PartyMembers.size())));
}
}
else if (st.isStarted())
{
rewardItem(npcId, st);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (st == null)
{
return htmltext;
}
switch (npc.getId())
{
case LUKAS:
switch (st.getState())
{
case State.CREATED:
htmltext = (player.getLevel() > 27) ? "30071-01.htm" : "30071-00.html";
break;
case State.STARTED:
htmltext = (st.hasQuestItems(TISSUE_CH) && st.hasQuestItems(TISSUE_SF)) ? "30071-05.html" : "30071-04.html";
break;
case State.COMPLETED:
htmltext = "30071-06.html";
break;
}
break;
case MIRIEN:
switch (st.getState())
{
case State.STARTED:
htmltext = (st.hasQuestItems(TISSUE_CH) && st.hasQuestItems(TISSUE_SF)) ? "30461-02.html" : "30461-01.html";
break;
case State.COMPLETED:
htmltext = getAlreadyCompletedMsg(player);
break;
default:
break;
}
break;
}
return htmltext;
}
/**
* @param npcId the ID of the killed monster
* @param st the quest state of the killer or party member
*/
private final void rewardItem(int npcId, QuestState st)
{
if ((npcId == CRIMSON_HATU) && !st.hasQuestItems(TISSUE_CH))
{
st.giveItems(TISSUE_CH, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
else if ((npcId == SEER_FLOUROS) && !st.hasQuestItems(TISSUE_SF))
{
st.giveItems(TISSUE_SF, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
}