From 63e089ea2af74a5f8f0aaa1f9c8423295b004efe Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 21 Feb 2020 23:22:49 -0300 Subject: Move Colin, Enzo, Luca and Mr. Saves to the new Academy Island. Currently, it is way too big. --- npc/003-0/_import.txt | 4 -- npc/003-0/colin.txt | 112 -------------------------------------------------- npc/003-0/enzo.txt | 60 --------------------------- npc/003-0/luca.txt | 94 ------------------------------------------ npc/003-0/saves.txt | 99 -------------------------------------------- npc/027-1/_import.txt | 4 ++ npc/027-1/colin.txt | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++ npc/027-1/enzo.txt | 60 +++++++++++++++++++++++++++ npc/027-1/luca.txt | 94 ++++++++++++++++++++++++++++++++++++++++++ npc/027-1/saves.txt | 99 ++++++++++++++++++++++++++++++++++++++++++++ 10 files changed, 369 insertions(+), 369 deletions(-) delete mode 100644 npc/003-0/colin.txt delete mode 100644 npc/003-0/enzo.txt delete mode 100644 npc/003-0/luca.txt delete mode 100644 npc/003-0/saves.txt create mode 100644 npc/027-1/colin.txt create mode 100644 npc/027-1/enzo.txt create mode 100644 npc/027-1/luca.txt create mode 100644 npc/027-1/saves.txt (limited to 'npc') diff --git a/npc/003-0/_import.txt b/npc/003-0/_import.txt index 3ed596714..e8e5f82a8 100644 --- a/npc/003-0/_import.txt +++ b/npc/003-0/_import.txt @@ -1,9 +1,5 @@ // Map 003-0: Magic Academy // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/003-0/_warps.txt", -"npc/003-0/colin.txt", -"npc/003-0/enzo.txt", -"npc/003-0/luca.txt", "npc/003-0/recepcionist.txt", -"npc/003-0/saves.txt", "npc/003-0/trickmaster.txt", diff --git a/npc/003-0/colin.txt b/npc/003-0/colin.txt deleted file mode 100644 index 207267dbc..000000000 --- a/npc/003-0/colin.txt +++ /dev/null @@ -1,112 +0,0 @@ -// TMW2 script. -// Author: -// Saulc -// Jesusalva -// Description: -// Colin, of Destructive Magic Class. - -003-0,58,29,0 script Colin NPC_PLAYER,{ - if (!MAGIC_LVL) goto L_NoMagic; - mes l(".:: Destructive Magic Class ::."); - mesc l("Specialized in destructive, magical skills."); - next; - mesn; - do { - mesc l("You have @@ magic skill points available.", sk_points()); - next; - mesc l("Fireball - Basic AoE (Area Of Effect) Skill"); - mesc l("Holy Light - Standard Holy Magical Attack"); - mesc l("Magic Strike - Standard Magical Attack"); - - mesc l("Napalm Beat - Spammable AoE Skill"); - mesc l("Frost Diver - Attempt to freeze an enemy, dealing damage"); - mesc l("Fire Walk - Creates a trail of fire, harming any pursuer"); - - mesc l("Frost Nova - Freeze everything in a range"); - mesc l("Note: You can exchange 1 @@ for 3 @@", getitemlink(GemPowder), getitemlink(Quill)), 1; - menuint - l("Fireball"), MG_FIREBALL, - l("Holy Light"), AL_HOLYLIGHT, - l("Magic Strike"), MG_SOULSTRIKE, - l("Napalm Beat"), MG_NAPALMBEAT, - l("Frost Diver"), MG_FROSTDIVER, - l("Fire Walk"), SO_FIREWALK, - l("Frost Nova"), WZ_FROSTNOVA, - rif(getskilllv(MG_SOULSTRIKE), l("Lightining Bolt")), MG_LIGHTNINGBOLT, - rif(countitem(GemPowder), l("Exchange Gempowder for Quill")), -1, - l("Cancel"), 0; - mes ""; - - switch (@menuret) { - case -1: - inventoryplace Quill, 3; - delitem GemPowder, 1; - getitem Quill, 3; - break; - case MG_FIREBALL: - if (!mlearn(MG_FIREBALL, 5, 1, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case AL_HOLYLIGHT: - if (!mlearn(AL_HOLYLIGHT, 1, 1, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case MG_SOULSTRIKE: - if (!mlearn(MG_SOULSTRIKE, 10, 1, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case MG_NAPALMBEAT: - if (!mlearn(MG_NAPALMBEAT, 5, 2, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case MG_FROSTDIVER: - if (!mlearn(MG_FROSTDIVER, 7, 2, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case SO_FIREWALK: - if (!mlearn(SO_FIREWALK, 2, 2, Lockpicks, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case WZ_FROSTNOVA: - if (!mlearn(WZ_FROSTNOVA, 4, 3, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case MG_LIGHTNINGBOLT: - if (!mlearn(MG_LIGHTNINGBOLT, 4, 1, Quill, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - default: - if (@menuret) - Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); - else - closeclientdialog; - break; - } - } while (@menuret); - close; - -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."); - 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."); - next; - mesn; - mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); - close; - -OnInit: - .@npcId = getnpcid(.name$); - setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); - setunitdata(.@npcId, UDT_HEADMIDDLE, SorcererRobe); - setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); - setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); - setunitdata(.@npcId, UDT_HAIRSTYLE, 21); - setunitdata(.@npcId, UDT_HAIRCOLOR, 20); - - .sex = G_MALE; - .distance = 5; - end; -} diff --git a/npc/003-0/enzo.txt b/npc/003-0/enzo.txt deleted file mode 100644 index 2ac2ef4ac..000000000 --- a/npc/003-0/enzo.txt +++ /dev/null @@ -1,60 +0,0 @@ -// TMW2 Script -// Author: -// Jesusalva -// Description: -// Forgetful - -003-0,68,25,0 script Enzo NPC_BLACKWIZARD,{ - mesn l("Enzo, the Forgetful"); - mesq l("What was I doing before...? I forgot!"); - next; - mesc l("Teaching Enzo your skills will make you both forget them."), 1; - mesc l("Once your skill is forgotten, the Magic Skill Points used will be freed."), 1; - mesc l("But be careful: Only 1MSP-costed skills can be forgotten, and learning fees WON'T be given back!"), 1; - do - { - next; - mesc l("Which skill will you FORGET permanently today?"), 1; - menuint - l("Uhm... Bye?"), 0, - rif(getskilllv(AL_HEAL), l("Healing")), AL_HEAL, - rif(getskilllv(TMW2_SAGE), l("Mana Wisdom")), TMW2_SAGE, - rif(getskilllv(HW_MAGICPOWER), l("Accumulate Power")), HW_MAGICPOWER, - rif(getskilllv(SM_PROVOKE), l("Provoke")), SM_PROVOKE, - rif(getskilllv(SA_FREECAST), l("Free Casting")), SA_FREECAST, - rif(getskilllv(TF_BACKSLIDING), l("Tactical Retreat")), TF_BACKSLIDING, - rif(getskilllv(MG_FIREWALL), l("Nature Wall")), MG_FIREWALL, - rif(getskilllv(ALL_FULL_THROTTLE), l("Last Resort")), ALL_FULL_THROTTLE, - rif(getskilllv(SM_BASH), l("Falkon Punch!")), SM_BASH, - rif(getskilllv(MC_MAMMONITE), l("Supreme Attack")), MC_MAMMONITE, - rif(getskilllv(AC_SHOWER), l("Arrow Shower")), AC_SHOWER, - rif(getskilllv(MG_FIREBALL), l("Fireball")), MG_FIREBALL, - rif(getskilllv(AL_HOLYLIGHT), l("Holy Light")), AL_HOLYLIGHT, - rif(getskilllv(MG_SOULSTRIKE), l("Magic Strike")), MG_SOULSTRIKE, - rif(getskilllv(MG_LIGHTNINGBOLT), l("Lightning Bolt")), MG_LIGHTNINGBOLT, - l("None at the moment!"), 0; - if (!@menuret) - close; - mes ""; - mesc l("Skill @@ will be permanently lost!", @menuret), 1; - mesc l("Continue anyway?"), 1; - if (askyesno() == ASK_YES) { - .@lv=getskilllv(@menuret); - skill @menuret, 0, 0; - MAGIC_PTS-=.@lv; - mesc l("Skill @@ has been lost", @menuret), 3; - mesc l("You recovered @@ magic skill points", .@lv), 3; - } else { - mesn l("Enzo, the Forgetful"); - mesq l("Uh, what?"); - } - } while (@menuret); - close; - -OnInit: - .sex = G_MALE; - .distance = 5; - end; - -} - diff --git a/npc/003-0/luca.txt b/npc/003-0/luca.txt deleted file mode 100644 index 2569e9a00..000000000 --- a/npc/003-0/luca.txt +++ /dev/null @@ -1,94 +0,0 @@ -// TMW2 script. -// Author: -// Saulc -// Jesusalva -// Description: -// Luca, of Physical Science Class. - -003-0,34,41,0 script Luca NPC_PLAYER,{ - if (!MAGIC_LVL) goto L_NoMagic; - mes l(".:: Physical Sciences Class ::."); - mesc l("Specialized in skills with weapon-based damage and Assassination."); - next; - mesn; - do { - mesc l("You have @@ magic skill points available.", sk_points()); - next; - mesc l("Falkon Punch - Bash your weapon against your enemies with raised damage and accuracy."); - mesc l("Supreme Attack - Cause a very strong attack with lowered accuracy."); - mesc l("Arrow Shower - Shoot FIVE arrows or bullets to the air and cause Area Of Effect Damage."); - - mesc l("Counter Attack - Next attack will be retaliated, with twice critical ratio."); - - mesc l("Ground Strike - Hit the ground, exploding the surroundings and disabling enemies."); - mesc l("Sharpshooter - Shoot an arrow or bullet which damages everything on its way."); - menuint - l("Falkon Punch"), SM_BASH, - l("Supreme Attack"), MC_MAMMONITE, - l("Arrow Shower"), AC_SHOWER, - l("Counter Attack"), KN_AUTOCOUNTER, - l("Ground Strike"), ASC_METEORASSAULT, - l("Sharpshooter"), SN_SHARPSHOOTING, - l("Cancel"), 0; - mes ""; - - switch (@menuret) { - case SM_BASH: - if (!mlearn(SM_BASH, 10, 1, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case MC_MAMMONITE: - if (!mlearn(MC_MAMMONITE, 10, 1, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case AC_SHOWER: - if (!mlearn(AC_SHOWER, 10, 3, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case KN_AUTOCOUNTER: - if (!mlearn(KN_AUTOCOUNTER, 5, 2, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case ASC_METEORASSAULT: - if (!mlearn(ASC_METEORASSAULT, 3, 2, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case SN_SHARPSHOOTING: - if (!mlearn(SN_SHARPSHOOTING, 1, 3, FluoPowder, 3)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - default: - if (@menuret) - Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); - else - closeclientdialog; - break; - } - } while (@menuret); - close; - -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."); - 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."); - next; - mesn; - mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); - close; - -OnInit: - .@npcId = getnpcid(.name$); - setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); - setunitdata(.@npcId, UDT_HEADMIDDLE, BromenalChest); - setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); - setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); - setunitdata(.@npcId, UDT_HAIRSTYLE, 21); - setunitdata(.@npcId, UDT_HAIRCOLOR, 6); - - .sex = G_MALE; - .distance = 5; - end; -} diff --git a/npc/003-0/saves.txt b/npc/003-0/saves.txt deleted file mode 100644 index f28fb44bb..000000000 --- a/npc/003-0/saves.txt +++ /dev/null @@ -1,99 +0,0 @@ -// TMW2 Script -// Author: -// Jesusalva -// Description: -// Mr. Saves of Scholar Class - -003-0,34,25,0 script Mr Saves NPC_BLACKALCHEMIST,{ - 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"); - - mesc l("Mass Provoke - Provoke all monsters under your cursor"); - mesc l("High Healing - Use a Lifestone for supreme healing."); - - mesc l("Windwalker - Increase walk speed and flee rate."); - mesc l("Last Standing Man - Passive - Raise Max HP and Holy Defense"); - menuint - l("Healing"), AL_HEAL, - l("Mana Wisdom"), TMW2_SAGE, - l("Accumulate Power"), HW_MAGICPOWER, - l("Provoke"), SM_PROVOKE, - l("Mass Provoke"), EVOL_MASS_PROVOKE, - l("High Healing"), AB_HIGHNESSHEAL, - l("Windwalker"), SN_WINDWALK, - l("Last Standing Man"), CR_TRUST, - l("Cancel"), 0; - mes ""; - - switch (@menuret) { - case AL_HEAL: - if (!mlearn(AL_HEAL, 4, 1, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case TMW2_SAGE: - if (!mlearn(TMW2_SAGE, 5, 1, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case HW_MAGICPOWER: - if (!mlearn(HW_MAGICPOWER, 5, 1, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case SM_PROVOKE: - if (!mlearn(SM_PROVOKE, 1, 1, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case EVOL_MASS_PROVOKE: - if (!mlearn(EVOL_MASS_PROVOKE, 10, 2, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case AB_HIGHNESSHEAL: - if (!mlearn(AB_HIGHNESSHEAL, 1, 2, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case SN_WINDWALK: - if (!mlearn(SN_WINDWALK, 3, 3, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - case CR_TRUST: - if (!mlearn(CR_TRUST, 2, 3, SpellBookPage, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; - default: - if (@menuret) - Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); - else - closeclientdialog; - break; - } - } while (@menuret); - close; - -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."); - 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."); - next; - mesn; - mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); - close; - -OnInit: - .sex = G_MALE; - .distance = 5; - end; - -} - diff --git a/npc/027-1/_import.txt b/npc/027-1/_import.txt index 0a47df142..85a86e822 100644 --- a/npc/027-1/_import.txt +++ b/npc/027-1/_import.txt @@ -2,4 +2,8 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/027-1/_mobs.txt", "npc/027-1/_warps.txt", +"npc/027-1/colin.txt", +"npc/027-1/enzo.txt", +"npc/027-1/luca.txt", +"npc/027-1/saves.txt", "npc/027-1/statue.txt", diff --git a/npc/027-1/colin.txt b/npc/027-1/colin.txt new file mode 100644 index 000000000..9f3c2b36c --- /dev/null +++ b/npc/027-1/colin.txt @@ -0,0 +1,112 @@ +// TMW2 script. +// Author: +// Saulc +// Jesusalva +// Description: +// Colin, of Destructive Magic Class. + +027-1,75,55,0 script Colin NPC_PLAYER,{ + if (!MAGIC_LVL) goto L_NoMagic; + mes l(".:: Destructive Magic Class ::."); + mesc l("Specialized in destructive, magical skills."); + next; + mesn; + do { + mesc l("You have @@ magic skill points available.", sk_points()); + next; + mesc l("Fireball - Basic AoE (Area Of Effect) Skill"); + mesc l("Holy Light - Standard Holy Magical Attack"); + mesc l("Magic Strike - Standard Magical Attack"); + + mesc l("Napalm Beat - Spammable AoE Skill"); + mesc l("Frost Diver - Attempt to freeze an enemy, dealing damage"); + mesc l("Fire Walk - Creates a trail of fire, harming any pursuer"); + + mesc l("Frost Nova - Freeze everything in a range"); + mesc l("Note: You can exchange 1 @@ for 3 @@", getitemlink(GemPowder), getitemlink(Quill)), 1; + menuint + l("Fireball"), MG_FIREBALL, + l("Holy Light"), AL_HOLYLIGHT, + l("Magic Strike"), MG_SOULSTRIKE, + l("Napalm Beat"), MG_NAPALMBEAT, + l("Frost Diver"), MG_FROSTDIVER, + l("Fire Walk"), SO_FIREWALK, + l("Frost Nova"), WZ_FROSTNOVA, + rif(getskilllv(MG_SOULSTRIKE), l("Lightining Bolt")), MG_LIGHTNINGBOLT, + rif(countitem(GemPowder), l("Exchange Gempowder for Quill")), -1, + l("Cancel"), 0; + mes ""; + + switch (@menuret) { + case -1: + inventoryplace Quill, 3; + delitem GemPowder, 1; + getitem Quill, 3; + break; + case MG_FIREBALL: + if (!mlearn(MG_FIREBALL, 5, 1, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case AL_HOLYLIGHT: + if (!mlearn(AL_HOLYLIGHT, 1, 1, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case MG_SOULSTRIKE: + if (!mlearn(MG_SOULSTRIKE, 10, 1, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case MG_NAPALMBEAT: + if (!mlearn(MG_NAPALMBEAT, 5, 2, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case MG_FROSTDIVER: + if (!mlearn(MG_FROSTDIVER, 7, 2, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case SO_FIREWALK: + if (!mlearn(SO_FIREWALK, 2, 2, Lockpicks, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case WZ_FROSTNOVA: + if (!mlearn(WZ_FROSTNOVA, 4, 3, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case MG_LIGHTNINGBOLT: + if (!mlearn(MG_LIGHTNINGBOLT, 4, 1, Quill, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + default: + if (@menuret) + Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); + else + closeclientdialog; + break; + } + } while (@menuret); + close; + +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."); + 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."); + next; + mesn; + mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); + close; + +OnInit: + .@npcId = getnpcid(.name$); + setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); + setunitdata(.@npcId, UDT_HEADMIDDLE, SorcererRobe); + setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); + setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); + setunitdata(.@npcId, UDT_HAIRSTYLE, 21); + setunitdata(.@npcId, UDT_HAIRCOLOR, 20); + + .sex = G_MALE; + .distance = 5; + end; +} diff --git a/npc/027-1/enzo.txt b/npc/027-1/enzo.txt new file mode 100644 index 000000000..ccffd43d9 --- /dev/null +++ b/npc/027-1/enzo.txt @@ -0,0 +1,60 @@ +// TMW2 Script +// Author: +// Jesusalva +// Description: +// Forgetful + +027-1,94,115,0 script Enzo NPC_BLACKWIZARD,{ + mesn l("Enzo, the Forgetful"); + mesq l("What was I doing before...? I forgot!"); + next; + mesc l("Teaching Enzo your skills will make you both forget them."), 1; + mesc l("Once your skill is forgotten, the Magic Skill Points used will be freed."), 1; + mesc l("But be careful: Only 1MSP-costed skills can be forgotten, and learning fees WON'T be given back!"), 1; + do + { + next; + mesc l("Which skill will you FORGET permanently today?"), 1; + menuint + l("Uhm... Bye?"), 0, + rif(getskilllv(AL_HEAL), l("Healing")), AL_HEAL, + rif(getskilllv(TMW2_SAGE), l("Mana Wisdom")), TMW2_SAGE, + rif(getskilllv(HW_MAGICPOWER), l("Accumulate Power")), HW_MAGICPOWER, + rif(getskilllv(SM_PROVOKE), l("Provoke")), SM_PROVOKE, + rif(getskilllv(SA_FREECAST), l("Free Casting")), SA_FREECAST, + rif(getskilllv(TF_BACKSLIDING), l("Tactical Retreat")), TF_BACKSLIDING, + rif(getskilllv(MG_FIREWALL), l("Nature Wall")), MG_FIREWALL, + rif(getskilllv(ALL_FULL_THROTTLE), l("Last Resort")), ALL_FULL_THROTTLE, + rif(getskilllv(SM_BASH), l("Falkon Punch!")), SM_BASH, + rif(getskilllv(MC_MAMMONITE), l("Supreme Attack")), MC_MAMMONITE, + rif(getskilllv(AC_SHOWER), l("Arrow Shower")), AC_SHOWER, + rif(getskilllv(MG_FIREBALL), l("Fireball")), MG_FIREBALL, + rif(getskilllv(AL_HOLYLIGHT), l("Holy Light")), AL_HOLYLIGHT, + rif(getskilllv(MG_SOULSTRIKE), l("Magic Strike")), MG_SOULSTRIKE, + rif(getskilllv(MG_LIGHTNINGBOLT), l("Lightning Bolt")), MG_LIGHTNINGBOLT, + l("None at the moment!"), 0; + if (!@menuret) + close; + mes ""; + mesc l("Skill @@ will be permanently lost!", @menuret), 1; + mesc l("Continue anyway?"), 1; + if (askyesno() == ASK_YES) { + .@lv=getskilllv(@menuret); + skill @menuret, 0, 0; + MAGIC_PTS-=.@lv; + mesc l("Skill @@ has been lost", @menuret), 3; + mesc l("You recovered @@ magic skill points", .@lv), 3; + } else { + mesn l("Enzo, the Forgetful"); + mesq l("Uh, what?"); + } + } while (@menuret); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; + +} + diff --git a/npc/027-1/luca.txt b/npc/027-1/luca.txt new file mode 100644 index 000000000..477f48f7d --- /dev/null +++ b/npc/027-1/luca.txt @@ -0,0 +1,94 @@ +// TMW2 script. +// Author: +// Saulc +// Jesusalva +// Description: +// Luca, of Physical Science Class. + +027-1,49,102,0 script Luca NPC_PLAYER,{ + if (!MAGIC_LVL) goto L_NoMagic; + mes l(".:: Physical Sciences Class ::."); + mesc l("Specialized in skills with weapon-based damage and Assassination."); + next; + mesn; + do { + mesc l("You have @@ magic skill points available.", sk_points()); + next; + mesc l("Falkon Punch - Bash your weapon against your enemies with raised damage and accuracy."); + mesc l("Supreme Attack - Cause a very strong attack with lowered accuracy."); + mesc l("Arrow Shower - Shoot FIVE arrows or bullets to the air and cause Area Of Effect Damage."); + + mesc l("Counter Attack - Next attack will be retaliated, with twice critical ratio."); + + mesc l("Ground Strike - Hit the ground, exploding the surroundings and disabling enemies."); + mesc l("Sharpshooter - Shoot an arrow or bullet which damages everything on its way."); + menuint + l("Falkon Punch"), SM_BASH, + l("Supreme Attack"), MC_MAMMONITE, + l("Arrow Shower"), AC_SHOWER, + l("Counter Attack"), KN_AUTOCOUNTER, + l("Ground Strike"), ASC_METEORASSAULT, + l("Sharpshooter"), SN_SHARPSHOOTING, + l("Cancel"), 0; + mes ""; + + switch (@menuret) { + case SM_BASH: + if (!mlearn(SM_BASH, 10, 1, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case MC_MAMMONITE: + if (!mlearn(MC_MAMMONITE, 10, 1, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case AC_SHOWER: + if (!mlearn(AC_SHOWER, 10, 3, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case KN_AUTOCOUNTER: + if (!mlearn(KN_AUTOCOUNTER, 5, 2, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case ASC_METEORASSAULT: + if (!mlearn(ASC_METEORASSAULT, 3, 2, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case SN_SHARPSHOOTING: + if (!mlearn(SN_SHARPSHOOTING, 1, 3, FluoPowder, 3)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + default: + if (@menuret) + Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); + else + closeclientdialog; + break; + } + } while (@menuret); + close; + +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."); + 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."); + next; + mesn; + mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); + close; + +OnInit: + .@npcId = getnpcid(.name$); + setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); + setunitdata(.@npcId, UDT_HEADMIDDLE, BromenalChest); + setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); + setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); + setunitdata(.@npcId, UDT_HAIRSTYLE, 21); + setunitdata(.@npcId, UDT_HAIRCOLOR, 6); + + .sex = G_MALE; + .distance = 5; + end; +} diff --git a/npc/027-1/saves.txt b/npc/027-1/saves.txt new file mode 100644 index 000000000..02b09d7ab --- /dev/null +++ b/npc/027-1/saves.txt @@ -0,0 +1,99 @@ +// TMW2 Script +// Author: +// Jesusalva +// Description: +// Mr. Saves of Scholar Class + +027-1,104,61,0 script Mr Saves NPC_BLACKALCHEMIST,{ + 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"); + + mesc l("Mass Provoke - Provoke all monsters under your cursor"); + mesc l("High Healing - Use a Lifestone for supreme healing."); + + mesc l("Windwalker - Increase walk speed and flee rate."); + mesc l("Last Standing Man - Passive - Raise Max HP and Holy Defense"); + menuint + l("Healing"), AL_HEAL, + l("Mana Wisdom"), TMW2_SAGE, + l("Accumulate Power"), HW_MAGICPOWER, + l("Provoke"), SM_PROVOKE, + l("Mass Provoke"), EVOL_MASS_PROVOKE, + l("High Healing"), AB_HIGHNESSHEAL, + l("Windwalker"), SN_WINDWALK, + l("Last Standing Man"), CR_TRUST, + l("Cancel"), 0; + mes ""; + + switch (@menuret) { + case AL_HEAL: + if (!mlearn(AL_HEAL, 4, 1, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case TMW2_SAGE: + if (!mlearn(TMW2_SAGE, 5, 1, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case HW_MAGICPOWER: + if (!mlearn(HW_MAGICPOWER, 5, 1, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case SM_PROVOKE: + if (!mlearn(SM_PROVOKE, 1, 1, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case EVOL_MASS_PROVOKE: + if (!mlearn(EVOL_MASS_PROVOKE, 10, 2, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case AB_HIGHNESSHEAL: + if (!mlearn(AB_HIGHNESSHEAL, 1, 2, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case SN_WINDWALK: + if (!mlearn(SN_WINDWALK, 3, 3, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + case CR_TRUST: + if (!mlearn(CR_TRUST, 2, 3, SpellBookPage, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; + default: + if (@menuret) + Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); + else + closeclientdialog; + break; + } + } while (@menuret); + close; + +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."); + 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."); + next; + mesn; + mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; + +} + -- cgit v1.2.3-70-g09d2