diff options
Diffstat (limited to 'npc/001-2/pauline.txt')
-rw-r--r-- | npc/001-2/pauline.txt | 84 |
1 files changed, 28 insertions, 56 deletions
diff --git a/npc/001-2/pauline.txt b/npc/001-2/pauline.txt index 992a371a..a7b9144d 100644 --- a/npc/001-2/pauline.txt +++ b/npc/001-2/pauline.txt @@ -1,18 +1,9 @@ 001-2,77,78,0 script Pauline NPC208,{ - - @Pauline_MASK = NIBBLE_4_MASK; - @Pauline_SHIFT = NIBBLE_4_SHIFT; - - @pauline_state = ((QUEST_MAGIC2 & @Pauline_MASK) >> @Pauline_SHIFT); - - - @pauline_REWARD = 10000; - - if (@pauline_state == 4) goto L_MoreMagic; - if (@pauline_state == 3) goto L_KnowIngredientsPinkie; - if (@pauline_state == 2) goto L_Ingredients; - if (@pauline_state == 1) goto L_Back; + if (getq(MagicQuest_Pauline) == 4) goto L_MoreMagic; + if (getq(MagicQuest_Pauline) == 3) goto L_KnowIngredientsPinkie; + if (getq(MagicQuest_Pauline) == 2) goto L_Ingredients; + if (getq(MagicQuest_Pauline) == 1) goto L_Back; if (getskilllv(SKILL_MAGIC_ASTRAL) > 0) goto L_Magic; @@ -20,7 +11,7 @@ mes "\"I've mastered several schools of magic and fought the Yeti in Kaizei.\""; next; mes "\"The path of magic is a long and difficult one.\""; - goto L_close; + close; L_Magic: mesn; @@ -56,8 +47,7 @@ L_Back: "No.", L_close; L_Spells: - @pauline_state = 1; - callsub S_Update_Mask; + setq(MagicQuest_Pauline, 1); mesn; mes "\"Okay.\""; mes "\"Not long ago I discovered some new caves near Tulimshar. In an abandond chamber I found some paintings on the wall.\""; @@ -83,9 +73,8 @@ L_Next1: mes "\"When you find the right ingredients, come back and bring them to me to try those spells out.\""; next; mesq l("Goodbye."); - @pauline_state = 2; - callsub S_Update_Mask; - goto L_close; + setq(MagicQuest_Pauline, 2); + close; L_Ingredients: mesn; @@ -96,7 +85,7 @@ L_Ingredients: L_Next2: mes "\"Okay. Come back as soon as you know.\""; - goto L_close; + close; L_KnowIngredientsMouboo: mes "\"Did you bring them?\""; @@ -134,17 +123,16 @@ L_Next4: mesc l("Nothing happens."); mesn; mesq l("It seems you did not tell me the correct ingredients. Come back when you find the correct ones."); - goto L_close; + close; L_TrySpellMouboo: mesc l("The Witch takes %s and %s and put them togheter calling %s.", getitemlink(.@it1), getitemlink(.@it2), b("kalboo")); monster "001-1", 55,68, "Good", Mouboo, 1; mesn; mesq l("It worked!"); - @pauline_state = 3; - callsub S_Update_Mask; - getexp @pauline_REWARD, 0; - goto L_close; + setq(MagicQuest_Pauline, 3); + getexp .reward, 0; + close; L_KnowIngredientsPinkie: mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; @@ -175,7 +163,7 @@ L_Next5: mesc l("Nothing happens."); mesn; mesq l("It seems you did not tell me the correct ingredients. Come back when you find the correct ones."); - goto L_close; + close; L_TrySpellPinkie: @@ -183,73 +171,57 @@ L_TrySpellPinkie: monster "001-1", 54,68, "Good", Pinkie, 1; mesn; mesq l("It worked!"); - @pauline_state = 4; - callsub S_Update_Mask; - getexp @pauline_REWARD, 0; - goto L_close; + setq(MagicQuest_Pauline, 4); + getexp .reward, 0; + close; L_MoreMagic: mesn; mes "\"Thanks for telling me the ingredients. As soon as I find out more about those wall paintings I will let you know.\""; - goto L_close; + close; L_Wrong: mes "The Witch looks at you and snorts."; mesn; mes "\"You told me the wrong ingredients. Come back as soon as you know the correct ones.\""; - goto L_close; + close; L_NotEnough: mesn; mes "\"Hey, you don't have this with you!\""; mes "\"Come back when you have the right ingredients.\""; - goto L_close; + close; L_ComeBackLater: mesn; mes "\"Then come back later.\""; - goto L_close; + close; L_close: - @pauline_ingredient1$ = ""; - @pauline_ingredient2$ = ""; - cleararray @items$, "", getarraysize(@items$); - cleararray @item_names$, "", getarraysize(@item_names$); - @pauline_state = 0; - @pauline_REWARD = 0; + closeclientdialog; close; -S_Update_Mask: - QUEST_MAGIC2 = (QUEST_MAGIC2 & ~(@Pauline_MASK)) | (@pauline_state << @Pauline_SHIFT); - return; +OnInit: + .distance = 8; + .reward = 10000; + end; } 001-2,79,74,0 script PaulineDebug NPC208,{ - @Pauline_MASK = NIBBLE_4_MASK; - @Pauline_SHIFT = NIBBLE_4_SHIFT; - - @pauline_state = ((QUEST_MAGIC2 & @Pauline_MASK) >> @Pauline_SHIFT); - mes "Reset Quest State"; - mes @pauline_state; + mes getq(MagicQuest_Pauline); menu "Yes.", L_Next, "No.", L_close; L_Next: - @pauline_state = 0; - callsub S_Update_Mask; + setq(MagicQuest_Pauline, 0); mes "Done"; close; L_close: - @pauline_state = 0; close; -S_Update_Mask: - QUEST_MAGIC2 = (QUEST_MAGIC2 & ~(@Pauline_MASK)) | (@pauline_state << @Pauline_SHIFT); - return; - OnInit: if (!debug) disablenpc "PaulineDebug"; |