diff options
-rw-r--r-- | db/constants.conf | 1 | ||||
-rw-r--r-- | maps/re/031-6.mcache | bin | 96 -> 102 bytes | |||
-rw-r--r-- | npc/003-1/aahna.txt | 36 | ||||
-rw-r--r-- | npc/031-1/_warps.txt | 1 | ||||
-rw-r--r-- | npc/031-6/_import.txt | 2 | ||||
-rw-r--r-- | npc/031-6/_warps.txt | 3 | ||||
-rw-r--r-- | npc/031-6/siegfried.txt | 91 |
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 Binary files differindex 0c82079c1..534f61768 100644 --- a/maps/re/031-6.mcache +++ b/maps/re/031-6.mcache 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; +} |