summaryrefslogtreecommitdiff
path: root/world
diff options
context:
space:
mode:
authorJessica Tölke <jtoelke@mail.upb.de>2013-01-09 23:23:55 +0100
committerJessica Tölke <jtoelke@mail.upb.de>2013-01-09 23:23:55 +0100
commitb4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723 (patch)
treeec9e8c5ea8f0f64a2b0e94285dd627d877f723bd /world
parent1623d7da9290f57bcd0dfe41f61a9581b5a78198 (diff)
downloadserverdata-b4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723.tar.gz
serverdata-b4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723.tar.bz2
serverdata-b4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723.tar.xz
serverdata-b4bafa632ed35fd7bb6a2c1a2d186bf0f24a1723.zip
Katze quest: clear temporary quest state variables before closing the script.
Diffstat (limited to 'world')
-rw-r--r--world/map/npc/015-1/alice.txt24
-rw-r--r--world/map/npc/015-3/barrier.txt6
-rw-r--r--world/map/npc/015-3/katze.txt36
-rw-r--r--world/map/npc/015-3/pot.txt29
4 files changed, 53 insertions, 42 deletions
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: