Quest Soul Frost Sword (10465).

Contributed by gigilo1968.
This commit is contained in:
MobiusDev 2016-04-12 08:35:36 +00:00
parent 5f8f6df5f6
commit b3cb70feb4
13 changed files with 195 additions and 1 deletions

View File

@ -0,0 +1,4 @@
<html><body>Blacksmith Rupio:<br>
Hello. Are you here to learn about <font color="LEVEL">Soul Crystals</font>? Well, you've come to the right place. And you are also ready to learn about them. Should we get started?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10465_SoulFrostSword 30471-02.htm">"Sure."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Blacksmith Rupio:<br>
Alright. The Soul Crystals are used <font color="LEVEL">to bestow special abilities onto weapons</font>. Before, you had to be in possession of Soul Crystals and defeat certain monsters to upgrade them. It used to be a dangerous procedure and troublesome, but those who sought to become stronger went through it anyway.<br>
But at some point, it became impossible to upgrade them that way. Well... with problems such as the <font color="LEVEL">fall of Ye Sagira</font> and the <font color="LEVEL">appearance of Faeron</font>, stuff like this is not unthinkable.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10465_SoulFrostSword 30471-03.htm">"Is there a solution?"</Button>
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Blacksmith Rupio:<br>
There's a solution, thanks to the efforts of many, many people.<br>
Magisters, Maestros, and even scholars have helped find something that will replace the old Soul Crystals. The new Soul Crystals can be upgraded by <font color="LEVEL">combining</font> them.<br>
There was also a change in the way blacksmiths bestow special abilities onto weapons. Want to try it out?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10465_SoulFrostSword 30471-04.htm">"Okay. I'd like to try it out."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Blacksmith Rupio:<br>
First, you can't use the old Soul Crystals anymore. To bestow the new special abilities, you need the new Soul Crystals. You can get them by defeating boss or raid monsters. <br>
Well, it's better to try it. Here's a <font color="LEVEL">Practice StormBringer</font> and a <font color="LEVEL">Practice Soul Crystal - Stage 1</font>. Use this Practice Soul Crystal to bestow a special option onto the weapon.<br>
You need <font color="LEVEL">177 Gemstones (C-grade)</font>, but for now, you should try out by purchasing them. I'll give you just as many as a reward after you succeed. If you want, you can try it on another weapon, but I advise you against it, since the Practice Soul Crystal isn't as powerful.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Blacksmith Rupio:<br>
Hm? It looks like you didn't succeed yet. Do you need anything?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10465_SoulFrostSword 30471-06.html">"Tell me about the Soul Crystals."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Blacksmith Rupio:<br>
Alright. You can <font color="LEVEL">use a Soul Crystal to bestow a special ability onto weapons</font>. There have been some changes to the Soul Crystals, and now you can upgrade them by <font color="LEVEL">combining</font> them. That's why we have new Soul Crystals now. <br>
The Soul Crystals from before cannot be used anymore. You can get the new Soul Crystals by defeating boss monsters, so remember that.<br>
If you need more information, check the instructions.
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Blacksmith Rupio:<br>
Success! You get it now?<br>
Not that hard, eh?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10465_SoulFrostSword 30471-08.html">"Not that hard, indeed."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Blacksmith Rupio:<br>
Alright. Remember what I told you about Soul Crystals, and make good use of them.<br>
Oh, right. You can bestow up to 3 special abilities to new Soul Crystals! Don't forget all the effort we've put into this!
</body></html>

View File

@ -0,0 +1,147 @@
/*
* 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.Q10465_SoulFrostSword;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.holders.ItemHolder;
import com.l2jmobius.gameserver.model.itemcontainer.Inventory;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.network.serverpackets.TutorialShowHtml;
/**
* Soul Frost Sword (10465)
* @URL http://l2on.net/?c=quests&id=10465
* @author Gigi
*/
public class Q10465_SoulFrostSword extends Quest
{
// NPC
private static final int RUPIO = 30471;
// Items
private static final ItemHolder ADENA = new ItemHolder(57, 700000);
private static final int PRACTICE_STORMBRINGER = 46629;
private static final int PRACTICE_SOUL_CRYSTAL = 46526;
// Misc
private static final int MIN_LEVEL = 40;
// Reward
private static final int EXP_REWARD = 336000;
private static final int SP_REWARD = 403;
public Q10465_SoulFrostSword()
{
super(10465, Q10465_SoulFrostSword.class.getSimpleName(), "Soul Frost Sword");
addStartNpc(RUPIO);
addTalkId(RUPIO);
registerQuestItems(PRACTICE_STORMBRINGER, PRACTICE_SOUL_CRYSTAL);
addCondMinLevel(MIN_LEVEL, "noLevel.html");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "30471-02.htm":
case "30471-03.htm":
{
htmltext = event;
break;
}
case "30471-04.htm":
{
qs.startQuest();
giveItems(player, PRACTICE_STORMBRINGER, 1);
giveItems(player, PRACTICE_SOUL_CRYSTAL, 1);
player.sendPacket(new TutorialShowHtml(npc.getObjectId(), "..\\L2Text\\QT_028_ensoul_01.htm", TutorialShowHtml.LARGE_WINDOW));
htmltext = event;
break;
}
case "30471-06.html":
{
player.sendPacket(new TutorialShowHtml(npc.getObjectId(), "..\\L2Text\\QT_028_ensoul_01.htm", TutorialShowHtml.LARGE_WINDOW));
htmltext = event;
break;
}
case "30471-08.html":
{
takeItems(player, PRACTICE_STORMBRINGER, -1);
giveItems(player, ADENA);
addExpAndSp(player, EXP_REWARD, SP_REWARD);
qs.exitQuest(false, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
final L2ItemInstance wpn = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND);
String htmltext = getNoQuestMsg(player);
if (qs.isCreated())
{
htmltext = "30471-01.htm";
}
else if ((qs.getPlayer().getActiveWeaponItem() == null) || (wpn.getId() != PRACTICE_STORMBRINGER))
{
htmltext = "Weapon.html";
}
else if (qs.isCond(1))
{
{
if ((getQuestItemsCount(player, PRACTICE_SOUL_CRYSTAL) < 1) && (wpn.getId() == PRACTICE_STORMBRINGER))
{
htmltext = "30471-07.html";
}
else
{
htmltext = "30471-05.html";
}
}
}
else if (qs.isNowAvailable())
{
if (getQuestItemsCount(player, PRACTICE_STORMBRINGER) > 0)
{
takeItems(player, PRACTICE_STORMBRINGER, -1);
}
else if (getQuestItemsCount(player, PRACTICE_SOUL_CRYSTAL) > 0)
{
takeItems(player, PRACTICE_SOUL_CRYSTAL, -1);
}
}
else if (qs.isCompleted())
{
htmltext = getAlreadyCompletedMsg(player);
}
return htmltext;
}
}

View File

@ -0,0 +1,3 @@
<html><body>Blacksmith:<br>
I don't see you in hands of my weapon<br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body><br>
This mission will be too hard for you. Don't be disappointed. Once you have grown a little more, please come back<br>
(You must be level 40 or above to start this quest.)
</body></html>

View File

@ -262,6 +262,7 @@ import quests.Q10411_KekropusLetter_TheForestOfTheDead.Q10411_KekropusLetter_The
import quests.Q10414_KekropusLetter_WithCourage.Q10414_KekropusLetter_WithCourage;
import quests.Q10415_KekropusLetter_WithWisdom.Q10415_KekropusLetter_WithWisdom;
import quests.Q10453_StoppingTheWindDragon.Q10453_StoppingTheWindDragon;
import quests.Q10465_SoulFrostSword.Q10465_SoulFrostSword;
import quests.Q10472_WindsOfFate_EncroachingShadows.Q10472_WindsOfFate_EncroachingShadows;
import quests.Q10501_ZakenEmbroideredSoulCloak.Q10501_ZakenEmbroideredSoulCloak;
import quests.Q10502_FreyaEmbroideredSoulCloak.Q10502_FreyaEmbroideredSoulCloak;
@ -558,6 +559,7 @@ final class QuestMasterHandler
Q10414_KekropusLetter_WithCourage.class,
Q10415_KekropusLetter_WithWisdom.class,
Q10453_StoppingTheWindDragon.class,
Q10465_SoulFrostSword.class,
Q10472_WindsOfFate_EncroachingShadows.class,
Q10501_ZakenEmbroideredSoulCloak.class,
Q10502_FreyaEmbroideredSoulCloak.class,

View File

@ -283,7 +283,7 @@
<set name="is_depositable" val="false" />
<set name="is_destroyable" val="false" />
<set name="is_dropable" val="false" />
<set name="is_questitem" val="true" />
<set name="is_questitem" val="false" />
<set name="is_sellable" val="false" />
<set name="is_tradable" val="false" />
<set name="material" val="CRYSTAL" />