summaryrefslogtreecommitdiff
path: root/npc/027-0
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2022-10-23 21:44:22 -0300
committerJesusaves <cpntb1@ymail.com>2022-10-23 21:44:22 -0300
commita7c45a192268da2601cef47a4cdba987ae2327ca (patch)
treec5fb5b97db109fe7106496dd96498c475881046b /npc/027-0
downloadserverdata-a7c45a192268da2601cef47a4cdba987ae2327ca.tar.gz
serverdata-a7c45a192268da2601cef47a4cdba987ae2327ca.tar.bz2
serverdata-a7c45a192268da2601cef47a4cdba987ae2327ca.tar.xz
serverdata-a7c45a192268da2601cef47a4cdba987ae2327ca.zip
Initial commit (Moubootaur Legends fork)
Diffstat (limited to 'npc/027-0')
-rw-r--r--npc/027-0/_import.txt5
-rw-r--r--npc/027-0/_warps.txt3
-rw-r--r--npc/027-0/emma.txt121
-rw-r--r--npc/027-0/enrique.txt181
4 files changed, 310 insertions, 0 deletions
diff --git a/npc/027-0/_import.txt b/npc/027-0/_import.txt
new file mode 100644
index 0000000..3a8099a
--- /dev/null
+++ b/npc/027-0/_import.txt
@@ -0,0 +1,5 @@
+// Map 027-0: Administration Building
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/027-0/_warps.txt",
+"npc/027-0/emma.txt",
+"npc/027-0/enrique.txt",
diff --git a/npc/027-0/_warps.txt b/npc/027-0/_warps.txt
new file mode 100644
index 0000000..aafd47b
--- /dev/null
+++ b/npc/027-0/_warps.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 027-0: Administration Building warps
+027-0,65,36,0 warp #027-0_65_36 2,0,027-1,90,40
diff --git a/npc/027-0/emma.txt b/npc/027-0/emma.txt
new file mode 100644
index 0000000..a44aa57
--- /dev/null
+++ b/npc/027-0/emma.txt
@@ -0,0 +1,121 @@
+// TMW2 Script
+// Author:
+// Jesusalva
+// Description:
+// Emma is Enrique's wife
+
+027-0,88,26,2 script Emma NPC_DARK_SORCERER_F,{
+ mesn;
+ mesq l("Hello. I am Emma, Enrique's wife.");
+ mesc l("Your current scholar rank: %s (%s Research Points)",
+ academicrank(), fnum(MAGIC_RP));
+ if (!MAGIC_LVL)
+ close;
+ next;
+ mesn;
+ mesq l("I'm currently doing tutorship for students who are... falling behind %%p");
+ next;
+ mesn;
+ mesq l("Do you need the extra credit?");
+ mesc l("Tutorship will give you Research Points."), 1;
+ mesc l("You should not leave this room."), 1;
+ mesc l("Tutorship is NOT the most effective way."), 1;
+ next;
+ 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,
+ l("10 minutes"), 10,
+ l("15 minutes"), 15,
+ l("30 minutes"), 30,
+ l("1 hour"), 60,
+ l("2 hours"), 120,
+ 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!");
+ close;
+ }
+ if (Zeny < .cost*@menuret) {
+ mesn;
+ mesq l("Ara ara? You do not have enough money with you!");
+ close;
+ }
+ Zeny-=.cost*@menuret;
+ 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*15);
+ 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*15) {
+ mesn;
+ mesq l("Ara ara? You do not have enough money with you!");
+ close;
+ }
+ Zeny-=.cost*@menuret*15;
+ 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;
+
+ .@up=.gain*(@emmapro ? 10 : 1);
+ MAGIC_RP+=.@up;
+ dispbottom l("Research Points +%d", .@up);
+ addtimer2(60000, .name$+"::OnTick");
+ end;
+
+OnInit:
+ .distance = 4;
+ .sex = G_FEMALE;
+ .cost = 4500;
+ .gain = 15;
+ end;
+}
+
diff --git a/npc/027-0/enrique.txt b/npc/027-0/enrique.txt
new file mode 100644
index 0000000..11bacac
--- /dev/null
+++ b/npc/027-0/enrique.txt
@@ -0,0 +1,181 @@
+// TMW2 Script
+// Author:
+// Jesusalva
+// Description:
+// Enrique is the headmaster of the Academy
+
+027-0,46,25,0 script Enrique NPC_BLACKALCHEMIST,{
+ mesn;
+ mesq l("Hello. I am Enrique, headmaster of The Academy.");
+ mesc l("Your current scholar rank: %s (%s Research Points)",
+ academicrank(), fnum(MAGIC_RP));
+ if (!MAGIC_LVL)
+ close;
+ do
+ {
+ next;
+ select
+ l("Thanks!"),
+ l("What is the Academy?"),
+ l("What are Magic Skill Points?"),
+ l("What are Research Points"),
+ l("What is the Scholar Rank?"),
+ l("Who are the most famous scholars?"),
+ rif(!ACADEMIC_RANK, l("I would like to enroll!")),
+ l("What counts for titulation? Could you give me examples?"),
+ rif(getskilllv(TMW2_STUDY) < ACADEMIC_RANK, l("I would like to learn a new skill!"));
+ mes "";
+ switch (@menu) {
+ case 1:
+ goodbye();
+ break;
+ case 2:
+ mesn;
+ mesq l("The Academy Island is situated east of Land of Fire Village.");
+ next;
+ mesn;
+ mesq l("It was built by The Alliance, and can be accessed by a ship in Tulimshar.");
+ next;
+ mesn;
+ mesq l("As you may be aware, the Magic Council is in Tulim, after all.");
+ next;
+ mesn;
+ mesq l("Here you can find professors, academics and researchers. Feel free to enroll in any class as well.");
+ break;
+ case 3:
+ mesn;
+ mesq l("Simply put, they are raw power.");
+ next;
+ mesn;
+ mesq l("There is only so much magical power your body can handle without breaking.");
+ next;
+ mesn;
+ mesq l("By \"breaking\", I do not mean death. It is something worse.");
+ next;
+ mesn;
+ mesq l("How to expand this limit? Well, you'll need to touch a Mana Stone. If you can handle more raw power, your limit will extend.");
+ next;
+ mesn;
+ mesq l("It also increases naturally as you grow, albeit less.");
+ next;
+ mesn;
+ mesq l("Keep in mind, we at the Academy do not have a Mana Stone.");
+ break;
+ case 4:
+ mesn;
+ mesq l("Ah, research points (RP). They are knowledge which can be used in honing your skills.");
+ next;
+ mesn;
+ mesq l("You will need a certain amount of them to upgrade any skill, which will be spent and no longer available for use.");
+ next;
+ mesn;
+ mesq l("But the more you use a certain skill, the less research points will be required to upgrade it. And that bonus is permanent.");
+ next;
+ mesn;
+ mesq l("As to how to obtain research points... Randomly when casting, by enrolling in a class with my wife Emma, by studying monsters, and randomly but very rarely with the Professor in Tulimshar.");
+ break;
+ case 5:
+ mesn;
+ mesq l("Those with most %s on this world becomes scholars.", "[@@https://wiki.moubootaurlegends.org/|"+l("research")+"@@]");
+ next;
+ mesn;
+ mesq l("Scholars dedicate part of their time so others can learn about the world, and as such, they are always welcome to this Academy.");
+ next;
+ mesn;
+ mesq l("If they enroll, they will become able to study monsters and to visit the Mystical Forest west of here as well.");
+ next;
+ mesn;
+ mesq l("Of course, some get scholarship in honor of the cause or by notable knowledge and prowess; These are a special group not worth mentioning.");
+ break;
+ case 6:
+ HallOfAcademic();
+ break;
+ case 7:
+ mesn;
+ mesq l("That is not how things are done here.");
+ next;
+ mesn;
+ mesq l("First, you need to contribute to the common knowledge of this world. Like, write a %s, guide new players or something.", "[@@https://wiki.moubootaurlegends.org/|"+l("Wiki article")+"@@]");
+ next;
+ mesn;
+ mesq l("Then someone of a scholarship rank above your must approve it, and say that your work is enough to the next scholar rank.");
+ next;
+ mesn;
+ mesq l("Naturally, it doesn't have to be a wiki article. But it must be noteworthy to the whole community, and wiki articles are one of the easiest ways for that.");
+ next;
+ mesn;
+ mesq l("For the higher titles, you'll need vouch of multiple people. You can vouch for anyone below your rank with %s but never for someone of same or higher rank.", b("@titulate"));
+ next;
+ mesn;
+ mesq l("Do note that abuse will cause both you and the person you vouched for to be kicked from the Academy! So be mindful with to whom you give titles.");
+ next;
+ mesn;
+ mesq l("Abuse can be determined by your peers or by the grandmasters, so be careful.");
+ next;
+ mesn;
+ mesq l("Otherwise, you can also obtain a title during the Magic Olympics. They happen every three months in average, and are the hardest way to obtain a title.");
+ break;
+ case 8:
+ mesn;
+ mesq l("Oh, several things. It depends a bit on what the scholars consider, and the scholars... well, they change.");
+ next;
+ mesn;
+ mesq l("For example, translations do not count. Wiki articles count.");
+ next;
+ mesn;
+ mesq l("Writing/Updating in client-data quests.xml and items.xml with the correct information usually counts as well.");
+ next;
+ mesn;
+ mesq l("But pretty much, anything which contributes to the common knowledge of this world. It might even be writing a NPC telling about the world history, developing software for Wiki/GameInfo/etc., it all depends on the scholars.");
+ break;
+ case 9:
+ mesn;
+ mesq l("The study skill allows you to see the exact health a monster have, as well some details.");
+ next;
+ mesn;
+ mesq l("And if you study them well, you'll also gain more Research Points than you would get with other skills.");
+ next;
+ mesn;
+ mesq l("Think on it like a... perk, for having helped the adventurers in this world. I just need to check if you are eligible, hold still.");
+ next;
+ mesn;
+ mesc l("%s takes a paper from his drawer. It has your photo on it.", .name$);
+ next;
+ mesn;
+ mesq l("%s, %s in Magic Arts, Parity Level %d, tier %d mage.", strcharinfo(0), academicrank(), REBIRTH*100+BaseLevel, MAGIC_LVL);
+ next;
+ if (MAGIC_LVL < (1+getskilllv(TMW2_STUDY))) {
+ mesn;
+ mesq l("The skill would be wasted on a noob mage like you. Go get more magic power first!");
+ break;
+ }
+ if (REBIRTH*100+BaseLevel < (1+getskilllv(TMW2_STUDY))*50) {
+ mesn;
+ mesq l("The skill would be wasted on a noob like you. You are weak. Go gain a few levels and then return here.");
+ break;
+ }
+ // TODO: Need X skills learnt or 1M GP.
+ .@price = (1+getskilllv(TMW2_STUDY)) * 1000;
+ mesn;
+ mesq l("Teaching you how to study will take from my time, so I'll want a small compromise of %s GP to make sure you will actually make good use of it.", fnum(.@price));
+ if (Zeny < .@price)
+ break;
+ next;
+ mesc l("Pay the tuition fee?"), 1;
+ if (askyesno() == ASK_YES) {
+ Zeny-=.@price;
+ skill TMW2_STUDY, getskilllv(TMW2_STUDY)+1, 0;
+ mesn;
+ mesq l("Use its powers for good!");
+ }
+ break;
+ }
+ } while (@menu != 1);
+ close;
+
+OnInit:
+ .distance = 4;
+ .sex = G_MALE;
+ end;
+}
+