From c927a7d771b7ed475e4d8e2e946faace2438d575 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 15 Apr 2021 13:31:18 -0300 Subject: Allow skills to be obtained --- db/pre-re/skill_db.conf | 1 - npc/009-3/sword.txt | 49 +++++++++++++------------- npc/015-1/sword.txt | 94 +++++++++++++++++++++++++------------------------ npc/017-4/waric.txt | 3 +- 4 files changed, 75 insertions(+), 72 deletions(-) diff --git a/db/pre-re/skill_db.conf b/db/pre-re/skill_db.conf index c2071e64..1a2ab65a 100644 --- a/db/pre-re/skill_db.conf +++ b/db/pre-re/skill_db.conf @@ -39111,7 +39111,6 @@ skill_db: ( }, // MakeSulphur Parum EnchantLifestone MakeArrow MakeIronPowder MakeShirt MakeTanktop MakeSTanktop // Kalmurk -// MagicBlade ToxicDart Ingrav Knuckles // ArrowHail Joyplim // FlyingBackpack(?) Shear ) diff --git a/npc/009-3/sword.txt b/npc/009-3/sword.txt index b026b023..0cfd0d93 100644 --- a/npc/009-3/sword.txt +++ b/npc/009-3/sword.txt @@ -29,22 +29,22 @@ L_message: if (@Q_status == @STATUS_W11) goto L_L2_almost_done; if (@Q_status == @STATUS_W11_12) goto L_L2_almost_done; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"Come back when thou art stronger.\""; close; L_Initial: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "As you look at the sword, you suddenly hear a voice in your head!"; mes "\"Welcome to my prison, mortal!\""; next; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "Well, either you are going mad, or that sword in the stone is talking to you."; next; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "Or, well, both."; next; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "The deep basso voice continues."; mes "\"I know not what brought thee hither, but I kindly ask that thou leavest me alone in my sorrow.\""; next; @@ -57,12 +57,12 @@ L_Initial: "Can you teach me magic?", L_Next; L_Next: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "There is no answer."; close; L_PostFlareDart: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "As you look at the sword, you hear a deep voice resounding in your head."; mes "\"Welcome, mortal!\""; next; @@ -73,12 +73,12 @@ L_PostFlareDart: "Bye!", L_close; L_PostFlareDart_hi: - mes "[Magic Sword]"; + 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: - mes "[Magic Sword]"; + 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; @@ -86,10 +86,10 @@ L_PostFlareDart_sister: "She asked me to ask you to teach me a spell.", L_PostFlareDart_teach; L_PostFlareDart_teach: - mes "[Magic Sword]"; + 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; - mes "[Magic Sword]"; + 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; @@ -98,21 +98,22 @@ L_PostFlareDart_teach: "No.", L_close; L_Next1: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"So thou art bound to the path of War, as am I, as is my sister...\""; next; - mes "[Magic Sword]"; - mes "\"So be it, fellow warrior. Hear the incantation for the blade spell: '" + get(.invocation$, "magic-blade") + "'\""; + 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; - mes "[Magic Sword]"; + 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: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"Seek out my sister, and leave me alone in my sorrows.\""; next; goto L_close; @@ -121,7 +122,7 @@ L_close: close; L_L2_W11: - mes "[Magic Sword]"; + 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 @@ -129,7 +130,7 @@ L_L2_W11: "Yes, teach me more!", L_Next2; L_Next2: - mes "[Magic Sword]"; + 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 @@ -139,7 +140,7 @@ L_Next2: L_Next3: if (Mobpt < 5000) goto L_lacking_mobpoints; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"So be it, then.\""; mes "[1000 experience points]"; Mobpt = Mobpt - 5000; @@ -147,25 +148,25 @@ L_Next3: @Q_status = @Q_status + 1; callsub S_Update_Var; next; - mes "[Magic Sword]"; + 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; - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"Take twenty arrows, sprinkle sulphur powder over them, and then speak '" + get(.invocation$, "arrow-hail") + "'. Throw them high up in the air, and watch the hail unfold before thy feet.\""; close; L_L2_almost_done: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"Return to my sister now. I expect that she shall teach thee one more spell.\""; close; L_lacking_mobpoints: - mes "[Magic Sword]"; + 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: - mes "[Magic Sword]"; + mesn l("Magic Sword"); mes "\"Please leave me in peace.\""; close; diff --git a/npc/015-1/sword.txt b/npc/015-1/sword.txt index f4be43b3..3c9594aa 100644 --- a/npc/015-1/sword.txt +++ b/npc/015-1/sword.txt @@ -30,20 +30,20 @@ L_message: if (@Q_status == @STATUS_W12) goto L_L2_almost_done; if (@Q_status == @STATUS_W11_12) goto L_L2_W10; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"I have taught thee all I can teach for now.\""; close; L_Initial: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "At this point, the river deepens, slowing down to a leisurely pace. In its center you notice an unusual stone, waves breaking around it."; mes "Sticking out of the rock is a sword hilt."; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "Suddenly, you hear a strange, metallic voice in your head, the voice of a woman."; mes "\"A blissful day to thee, mortal!\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"What is it is that brings thee to this place?\""; next; menu @@ -53,21 +53,21 @@ L_Initial: "I am trying to learn magic!", L_Initial_learn; L_Noq: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "The voice sounds slightly amused."; mes "\"How sad to hear how manners have degenerated in recent centuries. Farewell for now, dear mortal.\""; close; L_Initial_nothing: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Then I wish thee well in thy travels, wanderer!\""; close; L_Initial_learn: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Magic? Unless I am very mistaken thou already possessest some magic. Yet perhaps I can grant thee some slight aid by providing a magical invocation?\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Alas, my nature is not quite conductive for spells of healing or protection, though I can bestow upon thee the powers for a rather more martial kind of power.\""; next; menu @@ -76,7 +76,7 @@ L_Initial_learn: "I am quite interested.", L_Next; L_Next: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Why is it that thou seekest this power?\""; next; menu @@ -87,36 +87,36 @@ L_Next: "To protect the ones I love!", L_Initial_protect; L_Initial_selfish: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Please return when thou art taking thy quest for magic a little more seriously.\""; close; L_Initial_dontknow: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"A fair and honest thought at so early a point in thine quest.\""; goto L_Initial_ok; L_Initial_protect: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Quite a high and laundable goal thou hast chosen for thyself! I do hope that thou canst live up to it.\""; goto L_Initial_ok; L_Initial_ok: mes "\"Hark, then, mortal! For I shall bestow upon thee the secret of the flare dart spell!\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Oh, my apologies – that was a little overly dramatic. But I do not get to talk to thy kin anymore all that often.\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"For the flare dart spell throw a handful of sulphur powder up into the air, and say, '" + b("flar") + "'.\""; learnskill SKILL_FLAR; @Q_status = @STATUS_LEARNED_FLAREDART; callsub S_Update_Var; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"From then on, thou canst shoot fiery missiles from thy fingers, for a limited time.\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Use it wisely, mortal!.\""; next; goto L_Farewell; @@ -128,13 +128,13 @@ L_FlareStage: "Where can I get sulphur powder?", L_FlareStage_impolite; L_FlareStage_impolite: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "You hear a metallic chime in your head. After a second, you come to the conclusion that it was probably the sword sighing."; mes "\"Greetings to thee, too, mortal, and farewell until thou hast learned some proper manners.\""; close; L_FlareStage_hello: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Well met once more, mortal! What brings thee here?\""; next; menu @@ -143,22 +143,22 @@ L_FlareStage_hello: "Farewell!", L_Farewell; L_FlareStage_moremagic: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"I can indeed! But first I must see if thou art worthy. Find my brother, and talk to him! If thou canst find him, he shall teach thee another spell.\""; next; goto L_Farewell; L_FlareStage_sulphur: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"I do not know, though I suggest to seek out a local alchemist, if there is any.\""; next; goto L_Farewell; L_MagicBladeStage: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Welcome back! Thou hast now learned two basic spells of War magic.\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Dost thou wish to continue thy pursuits of this school of magic?\""; next; menu @@ -166,7 +166,7 @@ L_MagicBladeStage: "Yes.", L_Levelup2_yes; L_Levelup2_yes: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Beware of what thou wishest for, mortal...\""; next; @@ -175,7 +175,7 @@ L_Levelup2_yes: if (MPQUEST && (Mobpt < 1000)) goto L_Lvl2_must_practice; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Thou hast collected " + Mobpt + " Monster Points. For one thousand of them, I shall admit thee to the school of war magic.\""; next; menu @@ -185,18 +185,18 @@ L_Levelup2_yes: L_Next1: Mobpt = Mobpt - 1000; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "The sword begins to chant in your head!"; mes "\"Lords of Thunder, Fire, Rage!\""; mes "\"Grant thy powers to this mage,\""; mes "\"Rising with thy dreadful roar,\""; mes "\"Answer to their call to War!\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "Your heart starts pounding, and suddenly you can hear the sound of drums in your head."; mes "You smell something metallic..."; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "The sensation and the noises vanish as quickly as they came."; @Q_status = @STATUS_LEVEL2; @@ -207,7 +207,7 @@ L_Next1: callfunc "SkillUp"; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Thou hast now taken thy first true step down the path of war magic.\""; if (getskilllv(SKILL_MAGIC) < 2) mes "\"When thou returnest, I shall teach thee another spell, but beware: thou must increase thy overall grasp of magic before thou canst wield it!\""; @@ -215,22 +215,22 @@ L_Next1: goto L_Farewell; L_Lvl2_must_reg: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"To learn further magic, thou must advance in the school of war magic. I shall grant thee this advance if thou provest thy worthiness as a warrior.\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Travel to the city of Tulimshar, and talk to Aidan. Then, collect one thousand Monster Points and return to me.\""; next; goto L_Farewell; L_Lvl2_must_practice: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"To advance thy magical powers, I must admit thee to the school of war magic. Prove to me that thou art a worthy warrior by collecting one thousand Monster Points, and return.\""; next; goto L_Farewell; L_L2_W12: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Welcome back, traveler! Hast thou returned to advance in thy quest for magic?\""; next; menu @@ -238,7 +238,7 @@ L_L2_W12: "Yes.", L_Next2; L_Next2: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Very well. I shall teach thee another spell, if thou provest thy progress by sacrificing another five thousand monster points.\""; next; menu @@ -248,7 +248,7 @@ L_Next2: L_Next3: if (Mobpt < 5000) goto L_lacking_mobpoints; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Indeed thou art worthy. The next spell I shall teach thee will enchant thy knuckles to turn them into powerful weapons; the component is a mere beer.\""; mes "[1000 experience points]"; Mobpt = Mobpt - 5000; @@ -256,23 +256,24 @@ L_Next3: @Q_status = @Q_status + 2; callsub S_Update_Var; next; - mes "[Mystic Sword]"; - mes "\"Speak '" + get(.invocation$, "magic-knuckles") + "' and take a glass of beer and drink it, without ever taking it off thy lips. This will harden and enchant thy fists, turning them into powerful weapons.\""; + mesn l("Mystic Sword"); + mesq l("Speak '%s' and take a glass of beer and drink it, without ever taking it off thy lips. This will harden and enchant thy fists, turning them into powerful weapons.", b("Upmarmu")); + learnskill SKILL_UPMARMU; close; L_L2_almost_done: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Greetings once more, traveler! I have another spell I wish to teach thee, but first thou must learn my brother's arrow spell.\""; close; L_L2_W10: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Welcome back!\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"I shall now teach thee the final spell of this level of war magic. For further spells thou wilt have to increase thy magical powers more.\""; next; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"For this spell, I ask that thou bringest a lump of iron ore. Thou must also sacrifice ten thousand monster points.\""; next; menu @@ -285,7 +286,7 @@ L_Next4: if (MPQUEST && (Mobpt < 10000)) goto L_lacking_mobpoints; - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Raise up the ore, mortal!\""; mes "As you do so, the ore begins to crumble, leaving only iron powder behind."; mes "[1000 experience points]"; @@ -296,23 +297,24 @@ L_Next4: @Q_status = @STATUS_L2_ALLSPELLS; callsub S_Update_Var; next; - mes "[Mystic Sword]"; - mes "\"This powder thou shalst need to cast the lightning spell. Throw it up into the air and shout '" + get(.invocation$, "lightning-strike") + "', and smite thine enemies with lightning.\""; + mesn l("Mystic Sword"); + mesq l("This powder thou shalst need to cast the lightning spell. Throw it up into the air and shout '%s', and smite thine enemies with lightning.", b("Ingrav")); + learnskill SKILL_INGRAV; next; goto L_Farewell; L_No_ore: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Thou dost appear to lack ore. We cannot continue; please fare well and return swiftly!\""; close; L_Farewell: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Then I bid thee farewell for now!\""; close; L_lacking_mobpoints: - mes "[Mystic Sword]"; + mesn l("Mystic Sword"); mes "\"Thou dost not have enough monster points to prove thy worthiness. Return when thou hast slain more monsters!\""; close; diff --git a/npc/017-4/waric.txt b/npc/017-4/waric.txt index 1f7db840..b2508c9d 100644 --- a/npc/017-4/waric.txt +++ b/npc/017-4/waric.txt @@ -234,7 +234,8 @@ L_Next4: next; mes "\"You have to use two roots for this spell. First you have to take one root and break off all the root hair. Shape it into a stick, if you will. Then put it on top of the other root and form an arrow-like structure.\""; next; - mes "\"Once this is done you have to throw it in the air and scream " + get(.invocation$, "toxic-dart") + " and the two roots will turn into toxic darts, a projectile you can throw.\""; + mesq l("Once this is done you have to throw it in the air and scream %s and the two roots will turn into toxic darts, a projectile you can throw.", b("Phlex")); + learnskill SKILL_PHLEX; next; mes "\"If you want to learn more, come back later.\""; OrumQuest = 38; -- cgit v1.2.3-60-g2f50