diff options
Diffstat (limited to 'npc/023-3/logic.txt')
-rw-r--r-- | npc/023-3/logic.txt | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/npc/023-3/logic.txt b/npc/023-3/logic.txt index 0f0090e11..c9d63f7e3 100644 --- a/npc/023-3/logic.txt +++ b/npc/023-3/logic.txt @@ -87,10 +87,12 @@ OnTouch: npctalkonce l("FIGHT!"); end; } - if (getq(FrostiaQuest_Homunculus) >= 1) { + if (getq(FrostiaQuest_Homunculus) >= 1 && !is_sponsor()) { npctalkonce l("I'm not going any closer to that cursed place!"); end; } + if (getq(FrostiaQuest_Homunculus) >= 1) + end; mesn; mesq l("Congratulations in making this far, @@.", strcharinfo(0)); next; @@ -182,6 +184,8 @@ OnInit: OnTouch: .@q=getq(FrostiaQuest_Homunculus); .@q2=getq(FrostiaQuest_Homunculus); + if (.@q) + end; if ($@LOGIC_0233BOSS) { dispbottom l("A powerful magic barrier repels you!"); slide 81, 86; @@ -208,6 +212,34 @@ OnInit: end; } +// Aethyr Gateway +023-3,26,219,0 script #AethyrGate NPC_HIDDEN,{ + end; + +OnInit: + // In theory, pattern ID must be between 1~9 + // To set $@p1$~$@p9$ with the PERL expression + // But as we're only using $@p0$ (full string) + // the value itself is meaningless + .pid=getnpcid(); + debugmes "Aethyr: Pattern %d", .pid; + //I'm not going to learn PERL just for that + defpattern(.pid, "^(.*)$", "OnTalkNearby"); + activatepset(.pid); + end; + +OnTalkNearby: + // not very obvious stuff by gumi, $@p0$ contains the whole string + // so we must cut it. Could use $@p1$ if perl was proper but... meh. + .@no_nick$ = strip(substr($@p0$, getstrlen(strcharinfo(PC_NAME)) + 3, getstrlen($@p0$) - 1)); + .@message$ = strtoupper(.@no_nick$); + + //0234_Password_BlackBox(.@message$); + callfunc "0234_Password_BlackBox", .@message$; + end; +} + + // TODO: Spike traps and etc. at the corritor // TODO: Rolling Stone Trap |