diff options
Diffstat (limited to 'npc/020-7')
-rw-r--r-- | npc/020-7/elias.txt | 18 | ||||
-rw-r--r-- | npc/020-7/workers.txt | 15 |
2 files changed, 18 insertions, 15 deletions
diff --git a/npc/020-7/elias.txt b/npc/020-7/elias.txt index 2c60ce465..14f171ef9 100644 --- a/npc/020-7/elias.txt +++ b/npc/020-7/elias.txt @@ -10,11 +10,10 @@ // NivalisQuest_BlueSage STRUCTURE // FIELD 1: // INVESTIGATION -// 1 - ACCESS GRANTED -// 2~11 - FOLLOW LOGIC +// 1 - STBY OUTSIDE +// 2 - ACCESS GRANTED +// 3 - QUEST ASSIGNED BY PEETU // 12 - COMPLETE -// 13 - STDBY OUTSIDE -// 14 - STDBY INSIDE // FIELD 2: // Bitwise (BS_QVISITOR) // FIELD 3: @@ -23,7 +22,7 @@ 020-7,44,41,0 script #BlueSageEntry NPC_HIDDEN,1,1,{ OnTouch: .@q=getq(NivalisQuest_BlueSage); - if (!.@q || .@q == 13) { + if (.@q < 2) { slide 42, 43; doevent "Elias::OnAccessDenied"; } @@ -38,9 +37,8 @@ OnTouch: function eliasConfirmed; mesn; mesq l("Hello, and welcome to Blue Sage's Residence, Library, and Nivalis Townhall."); - // TODO .@q=getq(NivalisQuest_BlueSage); - if (.@q && .@q != 13) + if (.@q >= 2) goto L_Main; next; mesn; @@ -50,7 +48,7 @@ OnTouch: select l("That's sad to hear."), rif(.@qn == 10 && !.@q, l("I have a letter from Rakinorf.")), - rif(.@q == 13, l("So? How was it?")), + rif(.@q == 1, l("So? How was it?")), l("What happened?"); mes ""; switch (@menu) { @@ -60,7 +58,7 @@ OnTouch: next; mesn; mesq l("Please wait here a short while."); - setq NivalisQuest_BlueSage, 13, 0, 0; + setq NivalisQuest_BlueSage, 1, 0, 0; break; case 3: mesn; @@ -71,7 +69,7 @@ OnTouch: next; mesn; mesq l("You may pass. The Sage is on the library waiting for you."); - setq NivalisQuest_BlueSage, 14, 0, 0; + setq NivalisQuest_BlueSage, 2, 0, 0; break; case 4: mesn; diff --git a/npc/020-7/workers.txt b/npc/020-7/workers.txt index 5643c9389..b5d2f734e 100644 --- a/npc/020-7/workers.txt +++ b/npc/020-7/workers.txt @@ -26,6 +26,8 @@ function askQuestion { .@qs=getarg(0); do { .@q=getq(NivalisQuest_BlueSage); + .@q2=getq2(NivalisQuest_BlueSage); + .@q3=getq3(NivalisQuest_BlueSage); next; select rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")), @@ -43,8 +45,8 @@ function askQuestion { next; mesn; mesq l("If Nikolai's helpers weren't so carefully chosen, I'd think this was some kind of a bad joke from someone."); - if (is_between(4, 7, .@q)) - setq1 NivalisQuest_BlueSage, .@q + 3; + if (!(.@q3 & .bsId)) + setq3 NivalisQuest_BlueSage, .@q3 | .bsId; break; } } while (@menu != 3); @@ -52,6 +54,7 @@ function askQuestion { } OnInit: + .bsId=BS_NPC01; .sex=G_MALE; .distance=5; npcsit; @@ -125,6 +128,8 @@ function askQuestion { .@qs=getarg(0); do { .@q=getq(NivalisQuest_BlueSage); + .@q2=getq2(NivalisQuest_BlueSage); + .@q3=getq3(NivalisQuest_BlueSage); next; select rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")), @@ -135,9 +140,8 @@ function askQuestion { case 1: mesn; mesq l("With a mask? Yeah, I remember. That was a strange guy. He came to visit the library, but he lurked around at the workshop area and they had to send him back to the books."); - // It's safe in this context, don't worry - if (.@q % 3 == 0) - setq1 NivalisQuest_BlueSage, .@q + 1; + if (!(.@q2 & .bsId)) + setq2 NivalisQuest_BlueSage, .@q2 | .bsId; break; case 2: mesn; @@ -149,6 +153,7 @@ function askQuestion { } OnInit: + .bsId=BS_NPC01; .sex=G_FEMALE; .distance=5; npcsit; |