From a5c40f30ee7fd3081704c8a3b4687c7d26be4538 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 31 Jul 2020 11:00:47 -0300 Subject: Move Luca and Saves to their own folders --- npc/027-3/luca.txt | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 npc/027-3/luca.txt (limited to 'npc/027-3') diff --git a/npc/027-3/luca.txt b/npc/027-3/luca.txt new file mode 100644 index 000000000..d609acec9 --- /dev/null +++ b/npc/027-3/luca.txt @@ -0,0 +1,118 @@ +// TMW2 script. +// Author: +// Saulc +// Jesusalva +// Description: +// Luca, of Physical Science Class. + +027-1,49,102,0 script Luca NPC_PLAYER,{ + function basicMagic; + function standardMagic; + function advancedMagic; + if (!MAGIC_LVL) goto L_NoMagic; + mes l(".:: Physical Sciences Class ::."); + mesc l("Specialized in skills with weapon-based damage and Assassination."); + next; + mesn; + mesc l("You have @@ magic skill points available.", sk_points()); + select + l("Basic Magic"), + l("Standard Magic"), + l("Advanced Magic"); + //l("Mastery Magic"); + 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; + next; + } + } else { + closeclientdialog; + } + + } while (@menuret); + close; + +L_NoMagic: + next; + mesn; + 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."); + 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; + +function basicMagic { + if (MAGIC_LVL < 1) goto L_NoMagic; + mes l(".:: Falkon Strike ::."); + mesc l("Bash your weapon against your enemies with raised damage and accuracy."); + mes ""; + mes l(".:: Ground Strike ::."); + mesc l("Hit the ground, exploding the surroundings and disabling enemies."); + mes ""; + mes l(".:: Sharpshooter ::."); + mesc l("Shoot an arrow or bullet which damages everything on its way."); + mes ""; + menuint + l("Falkon Strike"), SM_BASH, + l("Ground Strike"), ASC_METEORASSAULT, + l("Sharpshooter"), SN_SHARPSHOOTING, + l("Cancel"), 0; + return; +} + +function standardMagic { + if (MAGIC_LVL < 2) goto L_NoMagic; + mes l(".:: Supreme Attack ::."); + mesc l("Cause a very strong attack with lowered accuracy."); + mes ""; + mes l(".:: Arrow Shower ::."); + mesc l("Shoot FIVE arrows or bullets to the air and cause Area Of Effect Damage."); + mes ""; + menuint + l("Supreme Attack"), MC_MAMMONITE, + l("Arrow Shower"), AC_SHOWER, + l("Cancel"), 0; + return; +} + +function advancedMagic { + if (MAGIC_LVL < 3) goto L_NoMagic; + mes l(".:: Counter Attack ::."); + mesc l("Retaliates next attack with a critical hit. This instance lasts a second."); + mes ""; + menuint + l("Counter Attack"), KN_AUTOCOUNTER, + l("Cancel"), 0; + return; +} + +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; +} -- cgit v1.2.3-60-g2f50