summaryrefslogtreecommitdiff
path: root/npc/009-3/sword.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/009-3/sword.txt')
-rw-r--r--npc/009-3/sword.txt177
1 files changed, 177 insertions, 0 deletions
diff --git a/npc/009-3/sword.txt b/npc/009-3/sword.txt
new file mode 100644
index 00000000..f0332db6
--- /dev/null
+++ b/npc/009-3/sword.txt
@@ -0,0 +1,177 @@
+009-3,26,100,0 script #MysticSword#_M NPC400,{
+ if (getskilllv(SKILL_MAGIC))
+ goto L_message;
+ close;
+
+L_message:
+ @Q_MASK = NIBBLE_6_MASK;
+ @Q_SHIFT = NIBBLE_6_SHIFT;
+ @Q_status = (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT;
+
+ // Set up SkillUp function
+ @SUP_id = SKILL_MAGIC_WAR;
+ @SUP_name$ = "War Magic";
+
+ @STATUS_INITIAL = 0;
+ @STATUS_LEARNED_FLAREDART = 1;
+ @STATUS_LEARNED_MAGICBLADE = 2;
+ @STATUS_LEVEL2 = 3;
+ @STATUS_W11 = 4;
+ @STATUS_W12 = 5;
+ @STATUS_W11_12 = 6;
+ @STATUS_L2_ALLSPELLS = 7;
+
+ if (@Q_status == @STATUS_INITIAL) goto L_Initial;
+ if (@Q_status == @STATUS_LEARNED_FLAREDART) goto L_PostFlareDart;
+ if (@Q_status == @STATUS_LEARNED_MAGICBLADE) goto L_PostFlareDart_teach2;
+ if (@Q_status == @STATUS_LEVEL2) goto L_L2_W11;
+ if (@Q_status == @STATUS_W12) goto L_L2_W11;
+ if (@Q_status == @STATUS_W11) goto L_L2_almost_done;
+ if (@Q_status == @STATUS_W11_12) goto L_L2_almost_done;
+
+ mesn l("Magic Sword");
+ mesq l("Come back when thou art stronger.");
+ close;
+
+L_Initial:
+ mesn l("Magic Sword");
+ mesc l("As you look at the sword, you suddenly hear a voice in your head!");
+ mesq l("Welcome to my prison, mortal!");
+ next;
+ mesn l("Magic Sword");
+ mesc l("Well, either you are going mad, or that sword in the stone is talking to you.");
+ next;
+ mesn l("Magic Sword");
+ mesc l("Or, well, both.");
+ next;
+ mesn l("Magic Sword");
+ mesc l("The deep basso voice continues.");
+ mesq l("I know not what brought thee hither, but I kindly ask that thou leavest me alone in my sorrow.");
+ next;
+ menu
+ "Leave", L_close,
+ "Sorry.", L_Next,
+ "Who or what are you?", L_Next,
+ "What sorrow?", L_Next,
+ "Can I help?", L_Next,
+ "Can you teach me magic?", L_Next;
+
+L_Next:
+ mesn l("Magic Sword");
+ mesc l("There is no answer.");
+ close;
+
+L_PostFlareDart:
+ mesn l("Magic Sword");
+ mes "As you look at the sword, you hear a deep voice resounding in your head.";
+ mes "\"Welcome, mortal!\"";
+ next;
+ menu
+ "Hi! How are you?", L_PostFlareDart_hi,
+ "Can you teach me magic?", L_PostFlareDart_teach,
+ "Your sister sent me.", L_PostFlareDart_sister,
+ "Bye!", L_close;
+
+L_PostFlareDart_hi:
+ mesn l("Magic Sword");
+ mes "\"Mortal... I have seen pain and death beyond thine reckoning! Mock me not with thine idle questions!\"";
+ close;
+
+L_PostFlareDart_sister:
+ mesn l("Magic Sword");
+ mes "\"My sister...? Alas! I remember now; abandoned she was, just as I; buried in stone, never to be wielded again.\"";
+ mes "\"Wherefore did she send thee?\"";
+ next;
+ menu
+ "She asked me to ask you to teach me a spell.", L_PostFlareDart_teach;
+
+L_PostFlareDart_teach:
+ mesn l("Magic Sword");
+ mes "\"Beware, mortal... the only spells I can teach thee are those of the school of war. Dark and dreary spells, that lot! Pain and misery is all they bring...\"";
+ next;
+ mesn l("Magic Sword");
+ mes "The sword's voice is growing apprehensive.";
+ mes "\"Once a spell has been learned, it cannot be taken back, no more than a death can be undone. So be careful, mortal... dost thou truly wish to know the secrets of thus destructive power?\"";
+ next;
+ menu
+ "Yes.", L_Next1,
+ "No.", L_close;
+
+L_Next1:
+ mesn l("Magic Sword");
+ mes "\"So thou art bound to the path of War, as am I, as is my sister...\"";
+ next;
+ mesn l("Magic Sword");
+ mesq l("So be it, fellow warrior. Hear the incantation for the blade spell: '%s'", b("Chiza"));
+ mes "\"Hold a knife, sharp or regular, when thou speakest it.\"";
+ learnskill SKILL_CHIZA;
+ @Q_status = @STATUS_LEARNED_MAGICBLADE;
+ callsub S_Update_Var;
+ next;
+ mesn l("Magic Sword");
+ mes "\"But beware... the path of war that thou hast embarked upon is one from which few return. May luck be on thy side...\"";
+ close;
+
+L_PostFlareDart_teach2:
+ mesn l("Magic Sword");
+ mes "\"Seek out my sister, and leave me alone in my sorrows.\"";
+ next;
+ goto L_close;
+
+L_close:
+ close;
+
+L_L2_W11:
+ mesn l("Magic Sword");
+ mes "\"Thou hast returned. That must mean that thy wish to learn the magic of war is still alive?\"";
+ next;
+ menu
+ "No, I just wanted to say `hi'.", L_Farewell2,
+ "Yes, teach me more!", L_Next2;
+
+L_Next2:
+ mesn l("Magic Sword");
+ mes "\"If that is thou wishest, I shall not stop thee. But do not expect to find merriment down this road.\"";
+ mes "\"I must ask that thou sacrificest five thousand monster points for this, however.\"";
+ menu
+ "No, I don't want that.", L_close,
+ "Very well.", L_Next3;
+
+L_Next3:
+ if (Mobpt < 5000)
+ goto L_lacking_mobpoints;
+ mesn l("Magic Sword");
+ mes "\"So be it, then.\"";
+ mes "[1000 experience points]";
+ Mobpt = Mobpt - 5000;
+ getexp 1000, 0;
+ @Q_status = @Q_status + 1;
+ callsub S_Update_Var;
+ next;
+ mesn l("Magic Sword");
+ mes "\"The spell I shall teach thee is the hail of arrows spell. It will make arrows fall down from the heavens unto thy enemies.\"";
+ next;
+ mesn l("Magic Sword");
+ mesq l("Take %s arrows, sprinkle sulphur powder over them, and then speak '%s'. Throw them high up in the air, and watch the hail unfold before thy feet.", l("fifteen"), b("Frillyar"));
+ learnskill SKILL_FRILLYAR;
+ close;
+
+L_L2_almost_done:
+ mesn l("Magic Sword");
+ mesq l("Return to my sister now. I expect that she shall teach thee one more spell.");
+ close;
+
+L_lacking_mobpoints:
+ mesn l("Magic Sword");
+ mes "\"Thou lackest the monster points needed to prove thy worthiness. I shall not reveal more to thee until thou hast slain more monsters.\"";
+ close;
+
+L_Farewell2:
+ mesn l("Magic Sword");
+ mesq l("Please leave me in peace.");
+ close;
+
+S_Update_Var:
+ QUEST_MAGIC = (QUEST_MAGIC & ~(@Q_MASK) | (@Q_status << @Q_SHIFT));
+ return;
+}