Skip to content
Snippets Groups Projects
Commit 619d5d25 authored by malyelfik's avatar malyelfik
Browse files

BETA: Updating quest '''Matras' Suspicious Request''' (691)

Reported by: jurchiks
parent 90572101
No related branches found
No related tags found
No related merge requests found
Showing
with 86 additions and 85 deletions
<html><body>Matras:<br>
I am desperate for help, true, but still not so foolish as to engage someone of your obvious inexperience. Come back to me when you are a little more seasoned!<br>
(Only characters level 76 and above are permitted to undertake this quest.)
</body></html>
</body></html>
\ No newline at end of file
......@@ -3,4 +3,4 @@ All you have to do is simply draw their attention and I will take care of the re
Do so and bring me the <font color="LEVEL">Red Stones</font> that they carry. No questions! I told you I would reward you well for your trouble. In fact, if you bring <font color="LEVEL">744 Red Stones</font>, I'll give you something very special. Understand? Good -- we're agreed!<br>
Remember, all you have to do is to get rid of whoever you find on <font color="LEVEL">the first and second floors </font>of the tower.
Good luck!
</body></html>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Thanks to your help, it has definitely already become easier for me to go in and out. You did well, my friend. Now, do you have the Red Stones I asked for?<br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-08.htm">Show him the Red Stones.</a>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-08.html">Show him the Red Stones.</a>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Go do what I asked of you: get rid of the <font color="LEVEL">tower guards</font> and bring me the <font color="LEVEL">Red Stones</font> they carry. Hurry!
</body></html>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Ah, I see that you've brought me %itemcount% Red Stones. What sort of reward would you like?<br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest take_reward">"Give me what you promised for bringing you 744 stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-11.htm">"I will go back and get some more stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-12.htm">"I've had enough of this. Give me a reward for the stones I have brought you."</a>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-11.html">"I will go back and get some more stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-12.html">"I've had enough of this. Give me a reward for the stones I have brought you."</a>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
You have brought %itemcount% Red Stones. I wish it were more, but it looks like you have worked hard to get these. What do you want me to do with these?<br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest take_reward">"Give me what you promised for bringing you 744 stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-11.htm">"I will go back and get some more stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-12.htm">"I've had enough of this. Give me a reward for the stones I have brought you."
</a></body></html>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-11.html">"I will go back and get some more stones."</a><br>
<a action="bypass -h Quest Q00691_MatrasSuspiciousRequest 32245-12.html">"I've had enough of this. Give me a reward for the stones I have brought you."</a>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Here you go. I hope this will help you in your travels. Take care!
</body></html>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Look, I've told you many times that I need 744 Red Stones. However, you've given me only %itemcount% so far. Go get some more if you expect me to reward you.
</body></html>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Thank you! I will not forget your help. Allow me to compensate you for your excellent work.
</body></html>
</body></html>
\ No newline at end of file
<html><body>Matras:<br>
Good work! If I need your services again, I won't hesitate to call on you.
</body></html>
</body></html>
\ No newline at end of file
......@@ -39,9 +39,8 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
// Items
private static final int RED_GEM = 10372;
private static final int DYNASTY_SOUL_II = 10413;
// Reward
private static final Map<Integer, Integer> REWARD_CHANCES = new HashMap<>();
static
{
REWARD_CHANCES.put(22363, 890);
......@@ -55,8 +54,10 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
REWARD_CHANCES.put(22371, 257);
REWARD_CHANCES.put(22372, 656);
}
// Misc
private static final int MIN_LEVEL = 76;
public Q00691_MatrasSuspiciousRequest(int questId, String name, String descr)
private Q00691_MatrasSuspiciousRequest(int questId, String name, String descr)
{
super(questId, name, descr);
addStartNpc(MATRAS);
......@@ -67,50 +68,58 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return getNoQuestMsg(player);
return null;
}
if (event.equalsIgnoreCase("32245-04.htm"))
String htmltext = null;
switch (event)
{
if (player.getLevel() >= 76)
{
case "32245-02.htm":
case "32245-11.html":
htmltext = event;
break;
case "32245-04.htm":
st.startQuest();
}
else
{
htmltext = getNoQuestMsg(player);
}
}
else if (event.equalsIgnoreCase("take_reward"))
{
int gemsCount = st.getInt("submitted_gems");
if (gemsCount >= 744)
{
st.set("submitted_gems", Integer.toString(gemsCount - 744));
st.giveItems(DYNASTY_SOUL_II, 1);
htmltext = "32245-09.htm";
}
else
{
htmltext = getHtm(player.getHtmlPrefix(), "32245-06.htm").replace("%itemcount%", st.get("submitted_gems"));
}
}
else if (event.equalsIgnoreCase("32245-08.htm"))
{
int submittedCount = st.getInt("submitted_gems");
int broughtCount = (int) st.getQuestItemsCount(RED_GEM);
st.takeItems(RED_GEM, broughtCount);
st.set("submitted_gems", Integer.toString(submittedCount + broughtCount));
htmltext = getHtm(player.getHtmlPrefix(), "32245-08.htm").replace("%itemcount%", Integer.toString(submittedCount + broughtCount));
}
else if (event.equalsIgnoreCase("32245-12.htm"))
{
st.giveAdena((st.getInt("submitted_gems") * 10000), true);
st.exitQuest(true, true);
htmltext = event;
break;
case "take_reward":
if (st.isStarted())
{
final int gemsCount = st.getInt("submitted_gems");
if (gemsCount >= 744)
{
st.set("submitted_gems", Integer.toString(gemsCount - 744));
st.giveItems(DYNASTY_SOUL_II, 1);
htmltext = "32245-09.html";
}
else
{
htmltext = getHtm(player.getHtmlPrefix(), "32245-10.html").replace("%itemcount%", st.get("submitted_gems"));
}
}
break;
case "32245-08.html":
if (st.isStarted())
{
final int submittedCount = st.getInt("submitted_gems");
final int broughtCount = (int) st.getQuestItemsCount(RED_GEM);
final int finalCount = submittedCount + broughtCount;
st.takeItems(RED_GEM, broughtCount);
st.set("submitted_gems", Integer.toString(finalCount));
htmltext = getHtm(player.getHtmlPrefix(), "32245-08.html").replace("%itemcount%", Integer.toString(finalCount));
}
break;
case "32245-12.html":
if (st.isStarted())
{
st.giveAdena((st.getInt("submitted_gems") * 10000), true);
st.exitQuest(true, true);
htmltext = event;
}
break;
}
return htmltext;
}
......@@ -118,10 +127,10 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
@Override
public final String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
{
L2PcInstance pl = getRandomPartyMember(player, 1);
final L2PcInstance pl = getRandomPartyMember(player, 1);
if (pl == null)
{
return null;
return super.onKill(npc, player, isSummon);
}
final QuestState st = pl.getQuestState(getName());
......@@ -133,45 +142,38 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
st.giveItems(RED_GEM, numItems);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
return null;
return super.onKill(npc, player, isSummon);
}
@Override
public final String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = Quest.getNoQuestMsg(player);
QuestState st = player.getQuestState(getName());
String htmltext = getNoQuestMsg(player);
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return htmltext;
}
if (st.getState() == State.CREATED)
{
if (player.getLevel() >= 76)
{
htmltext = "32245-01.htm";
}
else
{
htmltext = "32245-03.htm";
}
}
else if (st.getState() == State.STARTED)
switch (st.getState())
{
if (st.hasQuestItems(RED_GEM))
{
htmltext = "32245-05.htm";
}
else if (!st.hasQuestItems(RED_GEM))
{
htmltext = "32245-06.htm";
}
else if (st.getInt("submitted_gems") > 0)
{
htmltext = getHtm(player.getHtmlPrefix(), "32245-06.htm").replace("%itemcount%", st.get("submitted_gems"));
}
case State.CREATED:
htmltext = (player.getLevel() >= MIN_LEVEL) ? "32245-01.htm" : "32245-03.html";
break;
case State.STARTED:
if (st.hasQuestItems(RED_GEM))
{
htmltext = "32245-05.html";
}
else if (st.getInt("submitted_gems") > 0)
{
htmltext = getHtm(player.getHtmlPrefix(), "32245-07.html").replace("%itemcount%", st.get("submitted_gems"));
}
else
{
htmltext = "32245-06.html";
}
break;
}
return htmltext;
}
......@@ -180,4 +182,4 @@ public final class Q00691_MatrasSuspiciousRequest extends Quest
{
new Q00691_MatrasSuspiciousRequest(691, Q00691_MatrasSuspiciousRequest.class.getSimpleName(), "Matras' Suspicious Request");
}
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment