From b4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723 Mon Sep 17 00:00:00 2001 From: Jessica Tölke Date: Wed, 9 Jan 2013 23:23:55 +0100 Subject: Katze quest: clear temporary quest state variables before closing the script. --- world/map/npc/015-1/alice.txt | 24 +++++++++++++----------- world/map/npc/015-3/barrier.txt | 6 +++++- world/map/npc/015-3/katze.txt | 36 ++++++++++++++++++++---------------- world/map/npc/015-3/pot.txt | 29 +++++++++++++++-------------- 4 files changed, 53 insertions(+), 42 deletions(-) (limited to 'world/map') diff --git a/world/map/npc/015-1/alice.txt b/world/map/npc/015-1/alice.txt index 34f728a1..972d48b3 100644 --- a/world/map/npc/015-1/alice.txt +++ b/world/map/npc/015-1/alice.txt @@ -14,21 +14,18 @@ menu "Yes, sure.", L_findmany, "Herbs?", L_herbs, - "Nope, just enjoying the scenery.", L_close, + "Nope, just enjoying the scenery.", L_Close, "I saw the cat, but it doesn't like me.", L_cat; if (@Hiss == 1) menu "Yes, sure.", L_findmany, "Herbs?", L_herbs, - "Nope, just enjoying the scenery.", L_close, + "Nope, just enjoying the scenery.", L_Close, "There is a monster in that cave!", L_cave; menu "Yes, sure.", L_findmany, "Herbs?", L_herbs, - "Nope, just enjoying the scenery.", L_close; - -L_close: - close; + "Nope, just enjoying the scenery.", L_Close; L_findmany: mes "[Alice]"; @@ -40,7 +37,7 @@ L_findmany: mes "[Alice]"; mes "\"Oooh, how sad. Let me give you a little tip:"; mes "Herbs are often growing in places where they can't be spotted that easily. Don't forget to look behind the trees, too.\""; - close; + goto L_Close; L_plenty: mes "[Alice]"; @@ -48,14 +45,14 @@ L_plenty: mes "When you are not that good at brewing you should consider letting someone else brew them for you."; mes "Good brewers get much better healing potions from them."; mes "The most important characteristic of a good brewer is intelligence.\""; - close; + goto L_Close; L_herbs: mes "[Alice]"; mes "\"Yes, some powerful magic herbs started to grow around here and a mile to the southeast."; mes "Caul in Hurnscald found a way to brew magical healing potions from them, and I have heard a rumor that they may also be good for making colors."; mes "Now everyone is running around in the woods to harvest the herbs.\""; - close; + goto L_Close; L_cave: mes "[Alice]"; @@ -72,16 +69,21 @@ L_cave: "What a stupid cat!", -; mes "[Alice]"; mes "\"Please don't do her any harm. See you later!\""; - close; + goto L_Close; L_cat: mes "[Alice]"; mes "\"You would have to tame her first. Maybe she's thirsty or hungry. Cats also tend to get bored without something to play with. Good luck!\""; next; menu - "Thank you so much!", L_close, + "Thank you so much!", L_Close, "Are you crazy? Taming a cat?", -; mes "[Alice]"; mes "\"Well, it's up to you.\""; + goto L_Close; + +L_Close: + set @cat, 0; + set @Hiss, 0; close; } diff --git a/world/map/npc/015-3/barrier.txt b/world/map/npc/015-3/barrier.txt index 5919fc2d..e799f8af 100644 --- a/world/map/npc/015-3/barrier.txt +++ b/world/map/npc/015-3/barrier.txt @@ -21,7 +21,7 @@ mes "\"Hissss...\""; set @Hiss, 2; callsub S_Update_Hiss; - close; + goto L_Close; L_Not_Naked: warp "015-1.gat", 60, 32; @@ -29,6 +29,10 @@ L_Not_Naked: callsub S_Update_Hiss; mes "\"GRAAUWL! Hissss...\""; mes "Scared of what you hear, you flee back outside."; + goto L_Close; + +L_Close: + set @Hiss, 0; close; S_Update_Hiss: diff --git a/world/map/npc/015-3/katze.txt b/world/map/npc/015-3/katze.txt index 229e38f8..75e87be3 100644 --- a/world/map/npc/015-3/katze.txt +++ b/world/map/npc/015-3/katze.txt @@ -38,7 +38,7 @@ L_NeedsMilk: next; menu "Throw a stone at the cat.", L_ThrowStone, "Leave the cat alone.", -; - close; + goto L_Close; L_ThrowStone: set @cat, 0; @@ -47,7 +47,7 @@ L_ThrowStone: warp "015-1.gat", 60, 32; mes "\"GRAAUWL! Hissss...\""; mes "Yikes, the cat attacked you! Your whole body is scratched. Maybe throwing a stone wasn't such a great idea..."; - close; + goto L_Close; L_PreNeedsFood: L_NeedsFood: @@ -57,7 +57,7 @@ L_NeedsFood: menu "Throw a stone at the cat.", L_ThrowStone, "Leave the cat alone.", -; - close; + goto L_Close; L_PreNeedsFur: @@ -74,7 +74,7 @@ L_NeedsFur: menu "Throw a stone at the cat.", L_ThrowStone, "Leave the cat alone.", -; - close; + goto L_Close; L_MoveFur: delitem "WhiteFur", 1; @@ -83,7 +83,7 @@ L_MoveFur: mes "The cat jumps at the fur! You quickly let go of it. The cat happily returns to its spot, carrying the fur in its mouth."; next; mes "The cat drops the fur and looks at you with half opened eyes. Suddenly she starts talking, and says: \"That was very kind of you.\" She seems to be smiling."; - close; + goto L_Close; L_NeedsWood: mes "[Katze]"; @@ -94,16 +94,16 @@ L_NeedsWood: menu "Want this piece of wood?", L_GiveWood, "Ok, see you later.", -; - close; + goto L_Close; L_GiveWood: mes "[Katze]"; mes "\"Sure! Please put it next to the pot.\""; - close; + goto L_Close; L_PreNeedsStuff: mes "The cat is still eyeing the piece of wood. She probably needs to be left alone for a bit again."; - close; + goto L_Close; L_NeedsStuff: set @cat, 5; @@ -116,7 +116,7 @@ L_NeedsStuff: mes "2 White Furs,"; mes "2 Hard Spikes and"; mes "2 Tiny Healing Potions.\""; - close; + goto L_Close; L_NeedsStuff2: mes "[Katze]"; @@ -126,7 +126,7 @@ L_NeedsStuff2: "Look here.", L_CatChecksStuff, "What do you need again?", L_WhatsNeeded, "No, I haven't got everything yet.", -; - close; + goto L_Close; L_WhatsNeeded: mes "[Katze]"; @@ -135,7 +135,7 @@ L_WhatsNeeded: menu "Please tell me.", L_Please, "Never mind.", -; - close; + goto L_Close; L_Please: mes "[Katze]"; @@ -146,7 +146,7 @@ L_Please: mes "2 White Furs,"; mes "2 Hard Spikes and"; mes "2 Tiny Healing Potions.\""; - close; + goto L_Close; L_CatChecksStuff: if (countitem("SnakeSkin") > 1 @@ -158,7 +158,7 @@ L_CatChecksStuff: goto L_GiveStuff; mes "[Katze]"; mes "\"You don't seem to have everything yet. Come back later when you do.\""; - close; + goto L_Close; L_GiveStuff: delitem "SnakeSkin", 2; @@ -172,12 +172,12 @@ L_GiveStuff: set @catNeedsAlone, 1; mes "[Katze]"; mes "\"Nicely done! Now leave me alone for a while, I need some time to prepare your present.\""; - close; + goto L_Close; L_PreGainEars: mes "[Katze]"; mes "\"Please leave me alone for a while, so I can prepare your present.\""; - close; + goto L_Close; L_GainEars: getitem "CatEars", 1; @@ -189,7 +189,7 @@ L_GainEars: mes "\"Look what I made for you! It makes you look a bit like me! Maybe it will give you a feeling of what it is like to be a cat.\""; mes "The cat winks at you."; mes "[You gain " + @xpval + " experience points]"; - close; + goto L_Close; L_Finished: mes "[Katze]"; @@ -197,6 +197,10 @@ L_Finished: mes "\"Meow, fellow cat.\""; if (getequipid(equip_head) != 1217) mes "\"Meow. Lost your ears?\""; + goto L_Close; + +L_Close: + set @cat, 0; close; S_Update_Katze: diff --git a/world/map/npc/015-3/pot.txt b/world/map/npc/015-3/pot.txt index bb3c4b9c..29eb7a43 100644 --- a/world/map/npc/015-3/pot.txt +++ b/world/map/npc/015-3/pot.txt @@ -23,25 +23,25 @@ if (Katze == 4 && @catNeedsAlone == 1) goto L_HasWood; if (Katze >= 4) - goto L_Finished; + goto L_Close; L_NeedsMilk: if (countitem("Milk") > 0) menu "Pour in some milk.", L_GiveMilk, "Leave it alone.", -; - close; + goto L_Close; L_GiveMilk: delitem "Milk", 1; set @cat, 1; callsub S_Update_Katze; set @catNeedsAlone, 1; - close; + goto L_Close; L_HasMilk: mes "There is milk in it."; - close; + goto L_Close; L_NeedsFood: mes "The milk is gone!"; @@ -60,25 +60,25 @@ L_NeedsFood: menu "Put in a steak.", L_GiveSteak, "Leave it alone.", -; - close; + goto L_Close; L_GiveChicken: delitem "ChickenLeg", 1; set @cat, 2; callsub S_Update_Katze; set @catNeedsAlone, 1; - close; + goto L_Close; L_GiveSteak: delitem "Steak", 1; set @cat, 2; callsub S_Update_Katze; set @catNeedsAlone, 1; - close; + goto L_Close; L_HasFood: mes "There is some food in it."; - close; + goto L_Close; L_NeedsFur: mes "And it's empty!"; @@ -88,18 +88,18 @@ L_NeedsFur: menu "Put a white fur next to the pot.", L_GiveFur, "Leave it alone.", -; - close; + goto L_Close; L_GiveFur: mes "You put down the fur, but the cat doesn't seem to take any notice. Maybe there's something else you could do. You pick the fur up again."; - close; + goto L_Close; L_NeedsWood: if (countitem("RawLog") > 0) menu "Put a wooden log next to the pot.", L_GiveWood, "Leave it alone.", -; - close; + goto L_Close; L_GiveWood: delitem "RawLog", 1; @@ -107,13 +107,14 @@ L_GiveWood: callsub S_Update_Katze; set @catNeedsAlone, 1; mes "You put the wooden log next to the pot. The cat eyes it suspiciously, but remains on her spot."; - close; + goto L_Close; L_HasWood: mes "A wooden log is patiently lying next to it."; - close; + goto L_Close; -L_Finished: +L_Close: + set @cat, 0; close; S_Update_Katze: -- cgit v1.2.3-60-g2f50