Addition of quest Captive Demons (842).
Contributed by Dmitri.
This commit is contained in:
parent
100fb4253e
commit
655692df49
@ -37,7 +37,6 @@
|
||||
839 Request from the Unworldly Visitors
|
||||
840 Request from the Kingdom's Royal Guard
|
||||
841 Contamination Containment
|
||||
842 Captive Demons
|
||||
843 Giant Evolution Control
|
||||
844 Giant's Treasure
|
||||
845 Sabotage the Embryo Supplies
|
||||
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
I don't think you'll be able to complete this. You seem passionate, but you don't have enough experience.<br>
|
||||
Please come back when you've become stronger.<br>
|
||||
Unworldly Visitors faction level should be 1<br>
|
||||
(Only characters above Lv. 100.)
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.<br>
|
||||
What do you say? if you don't remember what to do, I can tell you again.
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-02.htm">"Please tell me again."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"I know what I should do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
5
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
5
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-03.htm">"What is it you need to do?"</Button>
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.<br>
|
||||
Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.<br>
|
||||
That's about it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"Yes, sure."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
7
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.html"><font color="A62F31">"I'll take the intermediate mission."</font></Button>
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.<br>
|
||||
If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?<br>
|
||||
Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Yes, tell me about the mission."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
7
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06a.html">"I'll take the intermediate mission."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Alright. Here's the mission. Hunt the <font color="LEVEL">Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero</font>, and collect their <font color="LEVEL">Mutated Spirit's Souls</font> as proof.<br>You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Your Unworldly Visitors Faction Level Must be 3 or above may undertake this mission.
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06a.html
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06a.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07a.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">200 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07a.html
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07a.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">400 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
5
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07c.html
vendored
Normal file
5
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07c.html
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-09c.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">200 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08a.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08a.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">400 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
6
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.<br>
|
||||
I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10.html">"I did my best to earn your trust."</Button>
|
||||
<!-- <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-12.html">"Here is the Faction Amity Token."</Button> -->
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09a.html
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09a.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10a.html">"I did my best."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09c.html
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09c.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10c.html">"I did my best."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
4
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.<br>
|
||||
As long as you don't forget us, that is. We thank you for your hard work.
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10a.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10a.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><head><body>Sthor:<br>
|
||||
Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10b.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10b.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
|
||||
</body></html>
|
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10c.html
vendored
Normal file
3
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10c.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
|
||||
</body></html>
|
301
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/Q00842_CaptiveDemons.java
vendored
Normal file
301
L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00842_CaptiveDemons/Q00842_CaptiveDemons.java
vendored
Normal file
@ -0,0 +1,301 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.Q00842_CaptiveDemons;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.Faction;
|
||||
import org.l2jmobius.gameserver.enums.QuestSound;
|
||||
import org.l2jmobius.gameserver.enums.QuestType;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import org.l2jmobius.gameserver.model.quest.State;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
/**
|
||||
* Captive Demons (842)
|
||||
* @URL https://l2wiki.com/Captive_Demons
|
||||
* @author Dmitri
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
// NPC
|
||||
private static final int STHOR = 34219;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23735, // Captive Familiar Spirit
|
||||
23736, // Captive Hell Demon
|
||||
23737, // Captive Succubus
|
||||
23738 // Captive Phantom
|
||||
};
|
||||
// Items
|
||||
private static final int GIANT_TRACKERS_BASIC_SUPPLY_BOX = 47184;
|
||||
private static final int GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX = 47185;
|
||||
private static final int GIANT_TRACKERS_ADVANCED_SUPPLY_BOX = 47186;
|
||||
// Misc
|
||||
private static final int KILLING_NPCSTRING_ID = NpcStringId.DEFEATING_THE_CAPTIVE_DEMONS.getId();
|
||||
private static final boolean PARTY_QUEST = true;
|
||||
private static final int MIN_LEVEL = 100;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(STHOR);
|
||||
addTalkId(STHOR);
|
||||
addKillId(MONSTERS);
|
||||
addCondMinLevel(MIN_LEVEL, "34219-00.htm");
|
||||
addFactionLevel(Faction.GIANT_TRACKERS, 1, "34219-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34219-02.htm":
|
||||
case "34219-03.htm":
|
||||
case "34219-04.htm":
|
||||
case "34219-04a.htm":
|
||||
case "34219-06.html":
|
||||
case "34219-06a.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "select_mission":
|
||||
{
|
||||
qs.startQuest();
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "return":
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "34219-07.html":
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-07a.html":
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-10.html":
|
||||
{
|
||||
final int chance = getRandom(100);
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 4:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 5_536_944_000L, 13_288_590);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 100);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 11_073_888_000L, 26_577_180);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 200);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "34219-08.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "34219-08a.html";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
case 5:
|
||||
{
|
||||
htmltext = "34219-09.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (!qs.isNowAvailable())
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
|
||||
}
|
||||
else
|
||||
{
|
||||
qs.setState(State.CREATED);
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 200)
|
||||
{
|
||||
qs.setCond(4, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 400)
|
||||
{
|
||||
qs.setCond(5, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
final Set<NpcLogListHolder> holder = new HashSet<>();
|
||||
holder.add(new NpcLogListHolder(KILLING_NPCSTRING_ID, true, qs.getInt("AncientGhosts")));
|
||||
return holder;
|
||||
}
|
||||
return super.getNpcLogList(player);
|
||||
}
|
||||
}
|
@ -196,6 +196,7 @@ import quests.Q00830_TheWayOfTheGiantsPawn.Q00830_TheWayOfTheGiantsPawn;
|
||||
import quests.Q00831_SayhasScheme.Q00831_SayhasScheme;
|
||||
import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
|
||||
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
|
||||
import quests.Q00842_CaptiveDemons.Q00842_CaptiveDemons;
|
||||
import quests.Q00901_HowLavasaurusesAreMade.Q00901_HowLavasaurusesAreMade;
|
||||
import quests.Q00902_ReclaimOurEra.Q00902_ReclaimOurEra;
|
||||
import quests.Q00903_TheCallOfAntharas.Q00903_TheCallOfAntharas;
|
||||
@ -492,7 +493,6 @@ import quests.not_done.Q00838_RequestFromTheMotherTreeGuardians;
|
||||
import quests.not_done.Q00839_RequestFromTheUnworldlyVisitors;
|
||||
import quests.not_done.Q00840_RequestFromTheKingdomsRoyalGuard;
|
||||
import quests.not_done.Q00841_ContaminationContainment;
|
||||
import quests.not_done.Q00842_CaptiveDemons;
|
||||
import quests.not_done.Q00843_GiantEvolutionControl;
|
||||
import quests.not_done.Q00844_GiantsTreasure;
|
||||
import quests.not_done.Q00845_SabotageTheEmbryoSupplies;
|
||||
@ -740,7 +740,7 @@ public class QuestMasterHandler
|
||||
Q00839_RequestFromTheUnworldlyVisitors.class, // TODO: Not done.
|
||||
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
|
||||
Q00841_ContaminationContainment.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class,
|
||||
Q00843_GiantEvolutionControl.class, // TODO: Not done.
|
||||
Q00844_GiantsTreasure.class, // TODO: Not done.
|
||||
Q00845_SabotageTheEmbryoSupplies.class, // TODO: Not done.
|
||||
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.not_done;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
private static final int START_NPC = 34219;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(START_NPC);
|
||||
addTalkId(START_NPC);
|
||||
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
|
||||
}
|
||||
}
|
@ -91,7 +91,6 @@
|
||||
839 Request from the Unworldly Visitors
|
||||
840 Request from the Kingdom's Royal Guard
|
||||
841 Contamination Containment
|
||||
842 Captive Demons
|
||||
843 Giant Evolution Control
|
||||
844 Giant's Treasure
|
||||
845 Sabotage the Embryo Supplies
|
||||
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
I don't think you'll be able to complete this. You seem passionate, but you don't have enough experience.<br>
|
||||
Please come back when you've become stronger.<br>
|
||||
Unworldly Visitors faction level should be 1<br>
|
||||
(Only characters above Lv. 100.)
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.<br>
|
||||
What do you say? if you don't remember what to do, I can tell you again.
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-02.htm">"Please tell me again."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"I know what I should do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
5
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
5
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-03.htm">"What is it you need to do?"</Button>
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.<br>
|
||||
Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.<br>
|
||||
That's about it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"Yes, sure."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
7
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.html"><font color="A62F31">"I'll take the intermediate mission."</font></Button>
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.<br>
|
||||
If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?<br>
|
||||
Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Yes, tell me about the mission."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
7
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06a.html">"I'll take the intermediate mission."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Alright. Here's the mission. Hunt the <font color="LEVEL">Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero</font>, and collect their <font color="LEVEL">Mutated Spirit's Souls</font> as proof.<br>You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
|
||||
</body></html>
|
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Your Unworldly Visitors Faction Level Must be 3 or above may undertake this mission.
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07a.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">200 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">400 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-09c.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
3
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">200 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">400 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
6
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.<br>
|
||||
I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10.html">"I did my best to earn your trust."</Button>
|
||||
<!-- <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-12.html">"Here is the Faction Amity Token."</Button> -->
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10a.html">"I did my best."</Button>
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10c.html">"I did my best."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
4
L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.<br>
|
||||
As long as you don't forget us, that is. We thank you for your hard work.
|
||||
</body></html>
|
@ -0,0 +1,3 @@
|
||||
<html><head><body>Sthor:<br>
|
||||
Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
|
||||
</body></html>
|
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
|
||||
</body></html>
|
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
|
||||
</body></html>
|
@ -0,0 +1,301 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.Q00842_CaptiveDemons;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.Faction;
|
||||
import org.l2jmobius.gameserver.enums.QuestSound;
|
||||
import org.l2jmobius.gameserver.enums.QuestType;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import org.l2jmobius.gameserver.model.quest.State;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
/**
|
||||
* Captive Demons (842)
|
||||
* @URL https://l2wiki.com/Captive_Demons
|
||||
* @author Dmitri
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
// NPC
|
||||
private static final int STHOR = 34219;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23735, // Captive Familiar Spirit
|
||||
23736, // Captive Hell Demon
|
||||
23737, // Captive Succubus
|
||||
23738 // Captive Phantom
|
||||
};
|
||||
// Items
|
||||
private static final int GIANT_TRACKERS_BASIC_SUPPLY_BOX = 47184;
|
||||
private static final int GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX = 47185;
|
||||
private static final int GIANT_TRACKERS_ADVANCED_SUPPLY_BOX = 47186;
|
||||
// Misc
|
||||
private static final int KILLING_NPCSTRING_ID = NpcStringId.DEFEATING_THE_CAPTIVE_DEMONS.getId();
|
||||
private static final boolean PARTY_QUEST = true;
|
||||
private static final int MIN_LEVEL = 100;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(STHOR);
|
||||
addTalkId(STHOR);
|
||||
addKillId(MONSTERS);
|
||||
addCondMinLevel(MIN_LEVEL, "34219-00.htm");
|
||||
addFactionLevel(Faction.GIANT_TRACKERS, 1, "34219-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34219-02.htm":
|
||||
case "34219-03.htm":
|
||||
case "34219-04.htm":
|
||||
case "34219-04a.htm":
|
||||
case "34219-06.html":
|
||||
case "34219-06a.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "select_mission":
|
||||
{
|
||||
qs.startQuest();
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "return":
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "34219-07.html":
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-07a.html":
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-10.html":
|
||||
{
|
||||
final int chance = getRandom(100);
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 4:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 5_536_944_000L, 13_288_590);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 100);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 11_073_888_000L, 26_577_180);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 200);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "34219-08.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "34219-08a.html";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
case 5:
|
||||
{
|
||||
htmltext = "34219-09.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (!qs.isNowAvailable())
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
|
||||
}
|
||||
else
|
||||
{
|
||||
qs.setState(State.CREATED);
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 200)
|
||||
{
|
||||
qs.setCond(4, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 400)
|
||||
{
|
||||
qs.setCond(5, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
final Set<NpcLogListHolder> holder = new HashSet<>();
|
||||
holder.add(new NpcLogListHolder(KILLING_NPCSTRING_ID, true, qs.getInt("AncientGhosts")));
|
||||
return holder;
|
||||
}
|
||||
return super.getNpcLogList(player);
|
||||
}
|
||||
}
|
@ -197,6 +197,7 @@ import quests.Q00830_TheWayOfTheGiantsPawn.Q00830_TheWayOfTheGiantsPawn;
|
||||
import quests.Q00831_SayhasScheme.Q00831_SayhasScheme;
|
||||
import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
|
||||
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
|
||||
import quests.Q00842_CaptiveDemons.Q00842_CaptiveDemons;
|
||||
import quests.Q00901_HowLavasaurusesAreMade.Q00901_HowLavasaurusesAreMade;
|
||||
import quests.Q00902_ReclaimOurEra.Q00902_ReclaimOurEra;
|
||||
import quests.Q00903_TheCallOfAntharas.Q00903_TheCallOfAntharas;
|
||||
@ -498,7 +499,6 @@ import quests.not_done.Q00838_RequestFromTheMotherTreeGuardians;
|
||||
import quests.not_done.Q00839_RequestFromTheUnworldlyVisitors;
|
||||
import quests.not_done.Q00840_RequestFromTheKingdomsRoyalGuard;
|
||||
import quests.not_done.Q00841_ContaminationContainment;
|
||||
import quests.not_done.Q00842_CaptiveDemons;
|
||||
import quests.not_done.Q00843_GiantEvolutionControl;
|
||||
import quests.not_done.Q00844_GiantsTreasure;
|
||||
import quests.not_done.Q00845_SabotageTheEmbryoSupplies;
|
||||
@ -768,7 +768,7 @@ public class QuestMasterHandler
|
||||
Q00839_RequestFromTheUnworldlyVisitors.class, // TODO: Not done.
|
||||
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
|
||||
Q00841_ContaminationContainment.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class,
|
||||
Q00843_GiantEvolutionControl.class, // TODO: Not done.
|
||||
Q00844_GiantsTreasure.class, // TODO: Not done.
|
||||
Q00845_SabotageTheEmbryoSupplies.class, // TODO: Not done.
|
||||
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.not_done;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
private static final int START_NPC = 34219;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(START_NPC);
|
||||
addTalkId(START_NPC);
|
||||
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
|
||||
}
|
||||
}
|
@ -110,7 +110,6 @@
|
||||
839 Request from the Unworldly Visitors
|
||||
840 Request from the Kingdom's Royal Guard
|
||||
841 Contamination Containment
|
||||
842 Captive Demons
|
||||
843 Giant Evolution Control
|
||||
844 Giant's Treasure
|
||||
845 Sabotage the Embryo Supplies
|
||||
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
I don't think you'll be able to complete this. You seem passionate, but you don't have enough experience.<br>
|
||||
Please come back when you've become stronger.<br>
|
||||
Unworldly Visitors faction level should be 1<br>
|
||||
(Only characters above Lv. 100.)
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.<br>
|
||||
What do you say? if you don't remember what to do, I can tell you again.
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-02.htm">"Please tell me again."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"I know what I should do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
5
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
5
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-03.htm">"What is it you need to do?"</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.<br>
|
||||
Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.<br>
|
||||
That's about it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"Yes, sure."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
7
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.html"><font color="A62F31">"I'll take the intermediate mission."</font></Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.<br>
|
||||
If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?<br>
|
||||
Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Yes, tell me about the mission."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
7
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04a.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06a.html">"I'll take the intermediate mission."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Alright. Here's the mission. Hunt the <font color="LEVEL">Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero</font>, and collect their <font color="LEVEL">Mutated Spirit's Souls</font> as proof.<br>You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-05.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Your Unworldly Visitors Faction Level Must be 3 or above may undertake this mission.
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06a.html
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-06a.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-07a.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00842_CaptiveDemons return">"Let me reconsider."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">200 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07a.html
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07a.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">400 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
5
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07c.html
vendored
Normal file
5
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-07c.html
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-09c.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">200 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08a.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-08a.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">400 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
6
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.<br>
|
||||
I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10.html">"I did my best to earn your trust."</Button>
|
||||
<!-- <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-12.html">"Here is the Faction Amity Token."</Button> -->
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09a.html
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09a.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10a.html">"I did my best."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09c.html
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-09c.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-10c.html">"I did my best."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
4
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.<br>
|
||||
As long as you don't forget us, that is. We thank you for your hard work.
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10a.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10a.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><head><body>Sthor:<br>
|
||||
Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10b.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10b.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
|
||||
</body></html>
|
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10c.html
vendored
Normal file
3
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-10c.html
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Sthor:<br>
|
||||
Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
|
||||
</body></html>
|
@ -0,0 +1,301 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.Q00842_CaptiveDemons;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.Faction;
|
||||
import org.l2jmobius.gameserver.enums.QuestSound;
|
||||
import org.l2jmobius.gameserver.enums.QuestType;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import org.l2jmobius.gameserver.model.quest.State;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
/**
|
||||
* Captive Demons (842)
|
||||
* @URL https://l2wiki.com/Captive_Demons
|
||||
* @author Dmitri
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
// NPC
|
||||
private static final int STHOR = 34219;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23735, // Captive Familiar Spirit
|
||||
23736, // Captive Hell Demon
|
||||
23737, // Captive Succubus
|
||||
23738 // Captive Phantom
|
||||
};
|
||||
// Items
|
||||
private static final int GIANT_TRACKERS_BASIC_SUPPLY_BOX = 47184;
|
||||
private static final int GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX = 47185;
|
||||
private static final int GIANT_TRACKERS_ADVANCED_SUPPLY_BOX = 47186;
|
||||
// Misc
|
||||
private static final int KILLING_NPCSTRING_ID = NpcStringId.DEFEATING_THE_CAPTIVE_DEMONS.getId();
|
||||
private static final boolean PARTY_QUEST = true;
|
||||
private static final int MIN_LEVEL = 100;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(STHOR);
|
||||
addTalkId(STHOR);
|
||||
addKillId(MONSTERS);
|
||||
addCondMinLevel(MIN_LEVEL, "34219-00.htm");
|
||||
addFactionLevel(Faction.GIANT_TRACKERS, 1, "34219-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34219-02.htm":
|
||||
case "34219-03.htm":
|
||||
case "34219-04.htm":
|
||||
case "34219-04a.htm":
|
||||
case "34219-06.html":
|
||||
case "34219-06a.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "select_mission":
|
||||
{
|
||||
qs.startQuest();
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "return":
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case "34219-07.html":
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-07a.html":
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34219-10.html":
|
||||
{
|
||||
final int chance = getRandom(100);
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 4:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 5_536_944_000L, 13_288_590);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 100);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, GIANT_TRACKERS_INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 11_073_888_000L, 26_577_180);
|
||||
addFactionPoints(player, Faction.GIANT_TRACKERS, 200);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if (player.getFactionLevel(Faction.GIANT_TRACKERS) >= 3)
|
||||
{
|
||||
htmltext = "34219-04a.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34219-04.htm";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "34219-08.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "34219-08a.html";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
case 5:
|
||||
{
|
||||
htmltext = "34219-09.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (!qs.isNowAvailable())
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
|
||||
}
|
||||
else
|
||||
{
|
||||
qs.setState(State.CREATED);
|
||||
htmltext = "34219-01.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 200)
|
||||
{
|
||||
qs.setCond(4, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
|
||||
qs.set("AncientGhosts", killedGhosts);
|
||||
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (killedGhosts >= 400)
|
||||
{
|
||||
qs.setCond(5, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && (qs.getCond() > 1))
|
||||
{
|
||||
final Set<NpcLogListHolder> holder = new HashSet<>();
|
||||
holder.add(new NpcLogListHolder(KILLING_NPCSTRING_ID, true, qs.getInt("AncientGhosts")));
|
||||
return holder;
|
||||
}
|
||||
return super.getNpcLogList(player);
|
||||
}
|
||||
}
|
@ -205,6 +205,7 @@ import quests.Q00830_TheWayOfTheGiantsPawn.Q00830_TheWayOfTheGiantsPawn;
|
||||
import quests.Q00831_SayhasScheme.Q00831_SayhasScheme;
|
||||
import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
|
||||
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
|
||||
import quests.Q00842_CaptiveDemons.Q00842_CaptiveDemons;
|
||||
import quests.Q00901_HowLavasaurusesAreMade.Q00901_HowLavasaurusesAreMade;
|
||||
import quests.Q00902_ReclaimOurEra.Q00902_ReclaimOurEra;
|
||||
import quests.Q00903_TheCallOfAntharas.Q00903_TheCallOfAntharas;
|
||||
@ -723,7 +724,7 @@ public class QuestMasterHandler
|
||||
Q00839_RequestFromTheUnworldlyVisitors.class, // TODO: Not done.
|
||||
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
|
||||
Q00841_ContaminationContainment.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class, // TODO: Not done.
|
||||
Q00842_CaptiveDemons.class,
|
||||
Q00843_GiantEvolutionControl.class, // TODO: Not done.
|
||||
Q00844_GiantsTreasure.class, // TODO: Not done.
|
||||
Q00845_SabotageTheEmbryoSupplies.class, // TODO: Not done.
|
||||
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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.not_done;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Q00842_CaptiveDemons extends Quest
|
||||
{
|
||||
private static final int START_NPC = 34219;
|
||||
|
||||
public Q00842_CaptiveDemons()
|
||||
{
|
||||
super(842);
|
||||
addStartNpc(START_NPC);
|
||||
addTalkId(START_NPC);
|
||||
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
|
||||
}
|
||||
}
|
@ -120,7 +120,6 @@
|
||||
839 Request from the Unworldly Visitors
|
||||
840 Request from the Kingdom's Royal Guard
|
||||
841 Contamination Containment
|
||||
842 Captive Demons
|
||||
843 Giant Evolution Control
|
||||
844 Giant's Treasure
|
||||
845 Sabotage the Embryo Supplies
|
||||
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-00.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
I don't think you'll be able to complete this. You seem passionate, but you don't have enough experience.<br>
|
||||
Please come back when you've become stronger.<br>
|
||||
Unworldly Visitors faction level should be 1<br>
|
||||
(Only characters above Lv. 100.)
|
||||
</body></html>
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.<br>
|
||||
What do you say? if you don't remember what to do, I can tell you again.
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-02.htm">"Please tell me again."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"I know what I should do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01a.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01b.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
5
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
5
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-01c.htm
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Sthor:<br>
|
||||
I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
4
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
4
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-02.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Sthor:<br>
|
||||
We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons 34219-03.htm">"What is it you need to do?"</Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-03.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.<br>
|
||||
Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.<br>
|
||||
That's about it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00842_CaptiveDemons select_mission">"Yes, sure."</Button>
|
||||
</body></html>
|
7
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
7
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.htm
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>Sthor:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">200</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">400</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-05.html"><font color="A62F31">"I'll take the intermediate mission."</font></Button>
|
||||
</body></html>
|
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
6
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00842_CaptiveDemons/34219-04.html
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Sthor:<br>
|
||||
This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.<br>
|
||||
If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?<br>
|
||||
Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00842_CaptiveDemons 34219-01.htm">"Yes, tell me about the mission."</Button>
|
||||
</body></html>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user