// TMW2 Script // Author: // Jesusalva // Description: // Trickmaster of Tricksters Class 003-0,35,42,0 script Trickmaster NPC_SITTED_NINJA,{ function basicMagic; function standardMagic; function advancedMagic; mes l(".:: Trickster Class ::."); mesc l("Specialized in miscellaneous skills."); next; mesn; mesc l("You have @@ magic skill points available.", sk_points()); 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 switch (@menuret) { case TMW2_MANABOMB: if (!learn_magic(TMW2_MANABOMB)) mesc l("You do not meet all requisites for this skill."), 1; break; case TF_BACKSLIDING: if (!learn_magic(TF_BACKSLIDING)) mesc l("You do not meet all requisites for this skill."), 1; break; case MG_FIREWALL: if (!learn_magic(MG_FIREWALL)) mesc l("You do not meet all requisites for this skill."), 1; break; case AC_VULTURE: if (!learn_magic(AC_VULTURE)) mesc l("You do not meet all requisites for this skill."), 1; break; case SA_FREECAST: if (!learn_magic(SA_FREECAST)) mesc l("You do not meet all requisites for this skill."), 1; break; case ALL_FULL_THROTTLE: if (!learn_magic(ALL_FULL_THROTTLE)) mesc l("You do not meet all requisites for this skill."), 1; break; case GC_DARKILLUSION: if (!learn_magic(GC_DARKILLUSION)) mesc l("You do not meet all requisites for this skill."), 1; break; case NV_TRICKDEAD: if (!learn_magic(NV_TRICKDEAD)) 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("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 { mes l(".:: Mana Bomb ::."); mesc l("Converts all your mana in damage. Damages all enemies in same tile."); mes ""; mes l(".:: Backsliding ::."); mesc l("Instantly jumps 5 tiles backwards."); mes ""; mes l(".:: Nature Wall ::."); mesc l("Create a natural wall under the cursor, to delay your enemies."); mes ""; mes l(".:: Archers Eye ::."); mesc l("Increase bow range and accuracy."); mes ""; menuint "Mana Bomb", TMW2_MANABOMB, "Backslidng", TF_BACKSLIDING, "Nature Wall", MG_FIREWALL, "Archers Eye", AC_VULTURE, "Cancel", 0; return; } function standardMagic { if (!MAGIC_LVL) goto L_NoMagic; mes l(".:: Free Cast ::."); mesc l("Allows to attack right after casting."); mes ""; mes l(".:: Full Throttle ::."); mesc l("An emergency skill which temporaly raises all your stats."); mes ""; mes l(".:: Sudden Attack ::."); mesc l("Instantly jumps to target and delivers an attack."); mes ""; mes l(".:: Trick Dead ::."); mesc l("Plop dead in the ground. Enemies won't attack you this way."); mes ""; menuint "Free Cast", SA_FREECAST, "Full Throttle", ALL_FULL_THROTTLE, "Sudden Attack", GC_DARKILLUSION, "Trick Dead", NV_TRICKDEAD, "Cancel", 0; return; } function advancedMagic { if (MAGIC_LVL < 2) goto L_NoMagic; mes l(".:: There are no skills ::."); mesc l("You can bug Jesusalva to extend the Battlefield Control skills."); mes ""; menuint "none", 0; return; } OnInit: .sex = G_FEMALE; .distance = 5; end; }