summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/constants.conf1
-rw-r--r--maps/re/031-6.mcachebin96 -> 102 bytes
-rw-r--r--npc/003-1/aahna.txt36
-rw-r--r--npc/031-1/_warps.txt1
-rw-r--r--npc/031-6/_import.txt2
-rw-r--r--npc/031-6/_warps.txt3
-rw-r--r--npc/031-6/siegfried.txt91
7 files changed, 98 insertions, 36 deletions
diff --git a/db/constants.conf b/db/constants.conf
index 2eab12e71..b29f0c3f1 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -1894,6 +1894,7 @@ constants_db: {
// TMW-BR Non Animated NPCs
NPC_SHOPPAKEP: 301
+ NPC_RED_OFFICER: 302
NPC_OLDPIRATE: 304
NPC_BRGUARD_SWORD: 306
NPC_BRGUARD_SPEAR: 307
diff --git a/maps/re/031-6.mcache b/maps/re/031-6.mcache
index 0c82079c1..534f61768 100644
--- a/maps/re/031-6.mcache
+++ b/maps/re/031-6.mcache
Binary files differ
diff --git a/npc/003-1/aahna.txt b/npc/003-1/aahna.txt
index b045ebfca..ea642f3ec 100644
--- a/npc/003-1/aahna.txt
+++ b/npc/003-1/aahna.txt
@@ -8,7 +8,6 @@
// TODO: During rainy days, she could ask for an Umbrella
003-1,53,128,0 script Aahna NPC_ELVEN_FEMALE,{
- if (is_admin()) goto L_HDebug;
mesn;
// Comment on the current weather
.@mk = getmapmask("003-1");
@@ -32,41 +31,6 @@ OnInit:
.distance = 5;
end;
-L_HDebug:
- if (!gethominfo(0)) {
- mesc l("You do not own an Homunculus."), 1;
- close;
- }
- if (homstatus()) {
- mesc l("Homunculus is busy."), 1;
- close;
- }
- mesn;
- mesq l("Oh, what lovely Lv %d Type %d Homunculus \"%s\" you have here! I see it's loyalty is %d, too!", gethominfo(6), gethominfo(1), gethominfo(2), gethominfo(3));
- if (!gethominfo(5))
- mesc l("Although I must say you must be too lazy if you haven't even gave it a name yet!");
- next;
- mesn;
- mesq l("Do you want me to change its class or level? Free of charge for debug purposes.");
- next;
- select
- l("Change to [Elli]"),
- l("Change to [Piou]"),
- l("Set level to 30"),
- l("Reset level to 3"),
- l("Add +100 intimacy");
- switch (@menu) {
- case 1: debugmes sethomunclass(6010); break;
- case 2: debugmes sethomunclass(6006); break;
- case 3: sethomunlevel(30); break;
- case 4: sethomunlevel(3); break;
- case 5: atcommand("@homfriendly "+(gethominfo(3)/100+100)); break;
- }
- atcommand("@refresh");
- atcommand("@hominfo");
- next;
- goto L_HDebug;
-
// Server Happy Hour
// Used to be Sunday 18:00~20:00
// Then it is Sunday 16:00~20:00
diff --git a/npc/031-1/_warps.txt b/npc/031-1/_warps.txt
index dccbefe51..46d23c2b3 100644
--- a/npc/031-1/_warps.txt
+++ b/npc/031-1/_warps.txt
@@ -6,5 +6,6 @@
031-1,56,47,0 warp #031-1_56_47 0,0,031-7,56,51
031-1,84,58,0 warp #031-1_84_58 0,0,031-5,95,48
031-1,74,85,0 warp #031-1_74_85 0,0,031-2,74,88
+031-1,76,66,0 warp #031-1_76_66 0,0,031-6,75,69
031-1,92,73,0 warp #031-1_92_73 0,0,031-3,38,64
031-1,92,86,0 warp #031-1_92_86 0,0,031-4,91,89
diff --git a/npc/031-6/_import.txt b/npc/031-6/_import.txt
index 47b9d7bc8..5f5061196 100644
--- a/npc/031-6/_import.txt
+++ b/npc/031-6/_import.txt
@@ -1,2 +1,4 @@
// Map 031-6: Aethyr Indoors
// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/031-6/_warps.txt",
+"npc/031-6/siegfried.txt",
diff --git a/npc/031-6/_warps.txt b/npc/031-6/_warps.txt
new file mode 100644
index 000000000..aceeae7db
--- /dev/null
+++ b/npc/031-6/_warps.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 031-6: Aethyr Indoors warps
+031-6,76,70,0 warp #031-6_76_70 1,0,031-1,76,68
diff --git a/npc/031-6/siegfried.txt b/npc/031-6/siegfried.txt
new file mode 100644
index 000000000..169982be8
--- /dev/null
+++ b/npc/031-6/siegfried.txt
@@ -0,0 +1,91 @@
+// TMW-2 Script
+// Author:
+// Jesusalva
+// Description:
+// Homunculus Evolution System
+
+031-6,75,64,0 script Siegfried NPC_RED_OFFICER,{
+ mesn;
+ mesq l("My name is Siegfried. Welcome to my humble abode.");
+ if (is_staff()) goto L_Main; // TODO FIXME
+ mesq l("In future I'll have something to discuss with you, but today is not the day.");
+ close;
+
+OnInit:
+ .sex = G_MALE;
+ .distance = 5;
+ end;
+
+L_Main:
+ next;
+ mesn;
+ if (!gethominfo(0)) {
+ mesq l("I used to take care of Homunculus a few centuries ago, before it became lost knowledge. A pity that my knowledge is no longer useful to anyone.");
+ close;
+ }
+ if (homstatus()) {
+ mesq l("To be honest, I wouldn't believe anyone claiming to have a homunculus if I don't see for my own eyes. Homunculus creation is, after all, lost knowledge.");
+ close;
+ }
+ mesn;
+ mesq l("Oh, what lovely Lv %d Homunculus you have here!", gethominfo(6));
+ if (!gethominfo(5))
+ mesq l("I don't suppose it have a name yet?");
+ else
+ mesq l("\"%s\", hm? That's a fine name for a Homunculus, in my not so humble opinion.", gethominfo(2));
+ next;
+ .@type = gethominfo(1);
+ .@loya = gethominfo(3) / 100;
+ .@next = 50; // TODO FIXME: PLACEHOLDER, level to evolve, from npc/config tree
+ mesn;
+ if (.@loya < 900)
+ mesq l("When it reaches over 900 intimacy, it'll unlock better skills and bonuses to you. Let me know when this happen.");
+ else if (gethominfo(6) < .@next)
+ mesq l("Once it reaches level %d who knows, something nice might happen.", .@next);
+ else
+ mesq l("And it's so loyal to you... Maybe you should consider requesting the evolution feature soon.");
+ goto L_HDebug;
+
+L_HDebug:
+ if (!is_admin()) close;
+ next;
+ mesn;
+ mesq ("Do you want me to change its class or level? Free of charge for debug purposes.");
+ next;
+ select
+ ("Change to [Elli]"),
+ ("Change to [Piou]"),
+ ("Set level to 50"),
+ ("Reset level to 3"),
+ ("Add +100 intimacy");
+ switch (@menu) {
+ case 1: debugmes sethomunclass(6010); break;
+ case 2: debugmes sethomunclass(6006); break;
+ case 3: sethomunlevel(50); break;
+ case 4: sethomunlevel(3); break;
+ case 5: atcommand("@homfriendly "+(gethominfo(3)/100+100)); break;
+ }
+ atcommand("@refresh");
+ atcommand("@hominfo");
+ next;
+ goto L_HDebug;
+
+// Server Happy Hour
+// Used to be Sunday 18:00~20:00
+// Then it is Sunday 16:00~20:00
+// Currently it is the whole weekend
+OnSat0000:
+ if (debug) end;
+ $@EXP_EVENT=($GAME_STORYLINE >= 5 ? 15 : 10);
+ $@EXP_EVENT_TIME=48;
+ donpcevent "@exprate::OnPlayerCall";
+ end;
+
+OnSun0000:
+ disablenpc .name$;
+ end;
+
+OnMon0000:
+ enablenpc .name$;
+ end;
+}