summaryrefslogtreecommitdiff
path: root/npc/027-1/saves.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/027-1/saves.txt')
-rw-r--r--npc/027-1/saves.txt105
1 files changed, 80 insertions, 25 deletions
diff --git a/npc/027-1/saves.txt b/npc/027-1/saves.txt
index 2a9eaa52f..fb85117b6 100644
--- a/npc/027-1/saves.txt
+++ b/npc/027-1/saves.txt
@@ -5,51 +5,106 @@
// Mr. Saves of Scholar Class
027-1,104,61,0 script Mr Saves NPC_BLACKALCHEMIST,{
+ function basicMagic;
+ function standardMagic;
+ function advancedMagic;
if (!MAGIC_LVL) goto L_NoMagic;
mes l(".:: Scholarship Class ::.");
mesc l("Specialized in support, buff, debuff and strengthening skills.");
next;
mesn;
- do {
mesc l("You have @@ magic skill points available.", sk_points());
next;
- mesc l("Healing - The most basic healing skill, requires no items to use.");
- mesc l("Mana Wisdom - Passive - Raise Mana EXP Gain rate");
- mesc l("Accumulate Power - Raise damage of next skill.");
- mesc l("Provoke - Provoke a single monster");
+ select
+ l("Basic Tricks"),
+ l("Standard Tricks"),
+ l("Advanced Tricks");
+ mes "";
+ .@lv=@menu;
+ do
+ {
+ // Display appropriate menu
+ if (.@lv == 1)
+ basicMagic();
+ else if (.@lv == 2)
+ standardMagic();
+ else if (.@lv == 3)
+ advancedMagic();
+
+ // Handle result
+ mes "";
+ if (@menuret) {
+ if (!learn_magic(@menuret))
+ mesc l("You do not meet all requisites for this skill."), 1;
+ } else {
+ closeclientdialog;
+ }
- mesc l("Area Provoke - Provoke all monsters centered on target.");
- mesc l("High Healing - Use a Lifestone for supreme healing.");
+ } while (@menuret);
+ close;
- mesc l("Windwalker - Increase walk speed and flee rate.");
- mesc l("Last Standing Man - Passive - Raise Max HP and Holy Defense");
+function basicMagic {
+ if (MAGIC_LVL < 1) goto L_NoMagic;
+ mes l(".:: First Aid ::.");
+ mesc l("Minor healing to your wounds.");
+ mes "";
+ mes l(".:: Accumulate Power ::.");
+ mesc l("Raise damage of next skill.");
+ mes "";
+ mes l(".:: Provoke ::.");
+ mesc l("Provoke a single monster to attack you.");
+ mes "";
+ mes l(".:: Windwalker ::.");
+ mesc l("Increase walk speed and flee rate.");
+ mes "";
menuint
- l("Healing"), TMW2_FIRSTAID,
- l("Mana Wisdom"), TMW2_SAGE,
+ l("First Aid"), TMW2_FIRSTAID,
l("Accumulate Power"), HW_MAGICPOWER,
l("Provoke"), SM_PROVOKE,
- l("Area Provoke"), EVOL_AREA_PROVOKE,
- l("High Healing"), TMW2_HEALING,
l("Windwalker"), SN_WINDWALK,
- l("Last Standing Man"), CR_TRUST,
l("Cancel"), 0;
- mes "";
+ return;
+}
- // Handle result
- if (@menuret) {
- if (!learn_magic(@menuret))
- mesc l("You do not meet all requisites for this skill."), 1;
- } else {
- closeclientdialog;
- }
+function standardMagic {
+ if (MAGIC_LVL < 2) goto L_NoMagic;
+ // NOTE: Alternate between First Aid + Healing for less cooldown wait
+ mes l(".:: Healing ::.");
+ mesc l("Minor healing to yourself or to allies.");
+ mes "";
+ mes l(".:: Mana Wisdom ::.");
+ mesc l("(Passive) Increases Mana EXP/Control Gain rate.");
+ mes "";
+ mes l(".:: Last Standing Man ::.");
+ mesc l("(Passive) Raise Max HP and Holy Defense.");
+ mes "";
+ mes l(".:: Area Provoke ::.");
+ mesc l("Provokes all monsters around the target, and the target itself.");
+ mes "";
+ menuint
+ l("Healing"), TMW2_HEALING,
+ l("Mana Wisdom"), TMW2_SAGE,
+ l("Last Standing Man"), CR_TRUST,
+ l("Area Provoke"), EVOL_AREA_PROVOKE,
+ l("Cancel"), 0;
+ return;
+}
- } while (@menuret);
- close;
+function advancedMagic {
+ if (MAGIC_LVL < 3) goto L_NoMagic;
+ mes l(".:: Magnus Healing ::.");
+ mesc l("Heals in area every friendly unit (incl. homuns and mercs). Req. Lifestone to cast.");
+ mes "";
+ menuint
+ l("Magnus Healing"), TMW2_MAGNUSHEAL,
+ l("Cancel"), 0;
+ return;
+}
L_NoMagic:
next;
mesn;
- mesq l("Your lack of magical power is critical. I dare say, you might never in your life get access to a Mana Stone.");
+ mesq l("You do not have enough magic power for these classes.");
next;
mesn;
mesq l("Besides the Magic Council, Andrei Sakar have his own Mana Stone, but I doubt he would train the likes of you, or share his Mana Stone.");