summaryrefslogtreecommitdiff
path: root/npc/027-2/colin.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/027-2/colin.txt')
-rw-r--r--npc/027-2/colin.txt117
1 files changed, 117 insertions, 0 deletions
diff --git a/npc/027-2/colin.txt b/npc/027-2/colin.txt
new file mode 100644
index 000000000..62a59126a
--- /dev/null
+++ b/npc/027-2/colin.txt
@@ -0,0 +1,117 @@
+// TMW2 script.
+// Author:
+// Saulc
+// Jesusalva
+// Description:
+// Colin, of Destructive Magic Class.
+
+027-2,28,23,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,
+ //l("Nilfheim"), TMW2_NILFHEIM,
+ 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;
+ case TMW2_NILFHEIM:
+ if (!mlearn(TMW2_NILFHEIM, 1, 5, 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;
+}