summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-01-16 15:26:58 -0300
committerJesusaves <cpntb1@ymail.com>2021-01-16 15:26:58 -0300
commit8f8831df81626971502b154238e5d76766b3f7f7 (patch)
tree189c57c87dfbd9bb1ef550fb9dee2e522bfa524b
parentaa10374d6147567a4b222d8c4a267ad9cafdb274 (diff)
downloadserverdata-8f8831df81626971502b154238e5d76766b3f7f7.tar.gz
serverdata-8f8831df81626971502b154238e5d76766b3f7f7.tar.bz2
serverdata-8f8831df81626971502b154238e5d76766b3f7f7.tar.xz
serverdata-8f8831df81626971502b154238e5d76766b3f7f7.zip
Add an advanced tutorship mode at Emma
-rw-r--r--npc/027-0/emma.txt50
1 files changed, 47 insertions, 3 deletions
diff --git a/npc/027-0/emma.txt b/npc/027-0/emma.txt
index 621478e49..ab2c6686c 100644
--- a/npc/027-0/emma.txt
+++ b/npc/027-0/emma.txt
@@ -24,6 +24,8 @@
mesq l("Do you need the extra credit?");
mesc l("Cost: %d GP/min", .cost);
mesc l("Gain: %d RP/min", .gain);
+ if (@emmapro)
+ mesc l("Warning: If you are taking an advanced class, it will canceled."), 1;
menuint
l("I'm fine, thanks"), 0,
l("5 minutes"), 5,
@@ -32,8 +34,11 @@
l("30 minutes"), 30,
l("1 hour"), 60,
l("2 hours"), 120,
- l("I'm fine, thanks"), 0;
+ rif(abizit() == 5 && MAGIC_LVL > 3, l("Show me something more advanced!")), -1;
mes "";
+ if (@menuret < 0) {
+ goto L_Advanced;
+ }
if (!@menuret) {
mesn;
mesq l("Then I hope you can keep your grades high, hmm hmm!");
@@ -47,23 +52,62 @@
Zeny-=.cost;
addtimer2(60000, .name$+"::OnTick");
@emmatick=max(@emmatick, gettimetick(2)) + @menuret*60;
+ @emmapro=false;
mesn;
mesq l("Hmm hmm! Then, let's begin.");
mesc l("Note: You can increase the time by talking to Emma again.");
close;
+L_Advanced:
+ mesn;
+ mesq l("I actually have a special class for those with perfect magical control like you.");
+ next;
+ mesq l("Do you need the extra credit?");
+ mesc l("Cost: %d GP/min", .cost*25);
+ mesc l("Gain: %d RP/min", .gain*10);
+ menuint
+ l("I've changed my mind."), 0,
+ l("5 minutes"), 5,
+ l("10 minutes"), 10,
+ l("15 minutes"), 15,
+ l("30 minutes"), 30,
+ l("1 hour"), 60,
+ l("2 hours"), 120;
+ mes "";
+ if (!@menuret) {
+ mesn;
+ mesq l("Then I hope you can keep your grades high, hmm hmm!");
+ close;
+ }
+ if (Zeny < .cost*@menuret*25) {
+ mesn;
+ mesq l("Ara ara? You do not have enough money with you!");
+ close;
+ }
+ Zeny-=.cost*25;
+ addtimer2(60000, .name$+"::OnTick");
+ if (!@emmapro)
+ @emmatick=0;
+ @emmatick=max(@emmatick, gettimetick(2)) + @menuret*60;
+ @emmapro=true;
+ mesn;
+ mesq l("Hmm hmm! Then, let's begin.");
+ close;
+
OnTick:
// Time out
if (@emmatick < gettimetick(2)) {
npctalk3 l("Enough for now. Let's rest, shall we?");
+ @emmapro = 0;
end;
}
// Changed maps
if (getmap() != "027-0")
end;
- MAGIC_RP+=.gain;
- dispbottom l("Research Points +%d", .gain);
+ .@up=.gain*(@emmapro ? 10 : 1);
+ MAGIC_RP+=.@up;
+ dispbottom l("Research Points +%d", .@up);
addtimer2(60000, .name$+"::OnTick");
end;