summaryrefslogtreecommitdiff
path: root/npc/027-2
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2020-05-24 00:28:51 -0300
committerJesusaves <cpntb1@ymail.com>2020-05-24 00:28:51 -0300
commitb9d4993ba0c0226cff8fd95e683e039ca8e24fe7 (patch)
treecf35ea55d74276d3473a35a6bc7104d19464b107 /npc/027-2
parent961980110af7fb956b449b798244726ffb1cb242 (diff)
downloadserverdata-b9d4993ba0c0226cff8fd95e683e039ca8e24fe7.tar.gz
serverdata-b9d4993ba0c0226cff8fd95e683e039ca8e24fe7.tar.bz2
serverdata-b9d4993ba0c0226cff8fd95e683e039ca8e24fe7.tar.xz
serverdata-b9d4993ba0c0226cff8fd95e683e039ca8e24fe7.zip
Magic Academy: Move Colin to Wizardry Institute.
Diffstat (limited to 'npc/027-2')
-rw-r--r--npc/027-2/_import.txt2
-rw-r--r--npc/027-2/_warps.txt4
-rw-r--r--npc/027-2/colin.txt117
3 files changed, 123 insertions, 0 deletions
diff --git a/npc/027-2/_import.txt b/npc/027-2/_import.txt
index a37473076..c01f816dd 100644
--- a/npc/027-2/_import.txt
+++ b/npc/027-2/_import.txt
@@ -1,2 +1,4 @@
// Map 027-2: Wizardry Institute Indoors
// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/027-2/_warps.txt",
+"npc/027-2/colin.txt",
diff --git a/npc/027-2/_warps.txt b/npc/027-2/_warps.txt
new file mode 100644
index 000000000..15b84fa92
--- /dev/null
+++ b/npc/027-2/_warps.txt
@@ -0,0 +1,4 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 027-2: Wizardry Institute Indoors warps
+027-2,28,29,0 warp #027-2_28_29 0,0,027-1,73,54
+027-2,32,43,0 warp #027-2_32_43 0,0,027-1,77,66
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;
+}