summaryrefslogtreecommitdiff
path: root/world/map/npc/015-3/katze.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/015-3/katze.txt')
-rw-r--r--world/map/npc/015-3/katze.txt203
1 files changed, 0 insertions, 203 deletions
diff --git a/world/map/npc/015-3/katze.txt b/world/map/npc/015-3/katze.txt
deleted file mode 100644
index 15dea917..00000000
--- a/world/map/npc/015-3/katze.txt
+++ /dev/null
@@ -1,203 +0,0 @@
-// Katze doesn't like the player at first, needs following:
-//
-// 1. Some milk
-// 2. Some steak or chicken leg
-// 3. Some fur
-//
-// Now the cat starts to speak, still needs:
-//
-// 4. Some wood for scratching
-// 5. Some stuff for making somethings nice for the player:
-//
-// * 2 Snake skins
-// * 2 Snake tongues
-// * 2 Maggot slimes
-// * 2 White furs
-// * 2 Hard spikes
-// * 2 Tiny potions
-
-015-3,32,25,0|script|Katze|172
-{
- set @cat, ((Katze & NIBBLE_0_MASK) >> NIBBLE_0_SHIFT);
-
- if (@cat == 1 && @catNeedsAlone == 0) goto L_NeedsFood;
- if (@cat == 1) goto L_NeedsFood;
- if (@cat == 2 && @catNeedsAlone == 0) goto L_NeedsFur;
- if (@cat == 2) goto L_NeedsFur;
- if (@cat == 3) goto L_NeedsWood;
- if (@cat == 4 && @catNeedsAlone == 0) goto L_NeedsStuff;
- if (@cat == 4) goto L_PreNeedsStuff;
- if (@cat == 5) goto L_NeedsStuff2;
- if (@cat == 6 && @catNeedsAlone == 0) goto L_GainEars;
- if (@cat == 6) goto L_PreGainEars;
- if (@cat == 7) goto L_Finished;
- goto L_NeedsMilk;
-
-L_NeedsMilk:
- mes "[Katze]";
- mes "\"Meow.\"";
- next;
- menu "Throw a stone at the cat.", L_ThrowStone,
- "Leave the cat alone.", L_Close;
-
-L_ThrowStone:
- set @cat, 0;
- callsub S_Update_Katze;
- heal ((MaxHp/100) * -30), 0;
- warp "015-1", 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...";
- goto L_Close;
-
-L_NeedsFood:
- mes "[Katze]";
- mes "\"Meow, prrrr...\"";
- next;
- menu
- "Throw a stone at the cat.", L_ThrowStone,
- "Leave the cat alone.", L_Close;
-
-L_NeedsFur:
- mes "[Katze]";
- mes "\"Prrr. Meow, prrr...\"";
- next;
- if (countitem("WhiteFur") > 0)
- menu
- "Make funny movements with the fur near the ground.", L_MoveFur,
- "Throw a stone at the cat.", L_ThrowStone,
- "Leave the cat alone.", L_Close;
- if (countitem("WhiteFur") == 0)
- menu
- "Throw a stone at the cat.", L_ThrowStone,
- "Leave the cat alone.", L_Close;
- goto L_Close;
-
-L_MoveFur:
- delitem "WhiteFur", 1;
- set @cat, 3;
- callsub S_Update_Katze;
- 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.";
- goto L_Close;
-
-L_NeedsWood:
- mes "[Katze]";
- mes "\"Prrrr, now I'd like something to sharpen my claws on.\"";
- next;
-
- if (countitem("RawLog") > 0)
- menu
- "Want this piece of wood?", L_GiveWood,
- "Ok, see you later.", L_Close;
- goto L_Close;
-
-L_GiveWood:
- mes "[Katze]";
- mes "\"Sure! Please put it next to the pot.\"";
- 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.";
- goto L_Close;
-
-L_NeedsStuff:
- set @cat, 5;
- callsub S_Update_Katze;
- mes "[Katze]";
- mes "\"You've been really kind to me. I can make you something nice, but I will need";
- mes "2 Snake Skins,";
- mes "2 Snake Tongues,";
- mes "2 Maggot Slimes,";
- mes "2 White Furs,";
- mes "2 Hard Spikes and";
- mes "2 Tiny Healing Potions.\"";
- goto L_Close;
-
-L_NeedsStuff2:
- mes "[Katze]";
- mes "\"Did you bring what I asked you for?\"";
- next;
- menu
- "Look here.", L_CatChecksStuff,
- "What do you need again?", L_WhatsNeeded,
- "No, I haven't got everything yet.", L_Close;
-
-L_WhatsNeeded:
- mes "[Katze]";
- mes "\"Actually, you should have remembered yourself.\"";
- next;
- menu
- "Please tell me.", L_Please,
- "Never mind.", L_Close;
-
-L_Please:
- mes "[Katze]";
- mes "\"Alright... [the cat glares at you] it was";
- mes "2 Snake Skins,";
- mes "2 Snake Tongues,";
- mes "2 Maggot Slimes,";
- mes "2 White Furs,";
- mes "2 Hard Spikes and";
- mes "2 Tiny Healing Potions.\"";
- goto L_Close;
-
-L_CatChecksStuff:
- if (countitem("SnakeSkin") > 1
- && countitem("SnakeTongue") > 1
- && countitem("MaggotSlime") > 1
- && countitem("WhiteFur") > 1
- && countitem("HardSpike") > 1
- && countitem("TinyHealingPotion") > 1)
- goto L_GiveStuff;
- mes "[Katze]";
- mes "\"You don't seem to have everything yet. Come back later when you do.\"";
- goto L_Close;
-
-L_GiveStuff:
- delitem "SnakeSkin", 2;
- delitem "SnakeTongue", 2;
- delitem "MaggotSlime", 2;
- delitem "WhiteFur", 2;
- delitem "HardSpike", 2;
- delitem "TinyHealingPotion", 2;
- set @cat, 6;
- callsub S_Update_Katze;
- set @catNeedsAlone, 1;
- mes "[Katze]";
- mes "\"Nicely done! Now leave me alone for a while, I need some time to prepare your present.\"";
- goto L_Close;
-
-L_PreGainEars:
- mes "[Katze]";
- mes "\"Please leave me alone for a while, so I can prepare your present.\"";
- goto L_Close;
-
-L_GainEars:
- getitem "CatEars", 1;
- set @xpval, 5000;
- getexp @xpval, 0;
- set @cat, 7;
- callsub S_Update_Katze;
- mes "[Katze]";
- 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]";
- goto L_Close;
-
-L_Finished:
- mes "[Katze]";
- if (getequipid(equip_head) == 1217) // Cat ears
- 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:
- set Katze, (Katze & ~(NIBBLE_0_MASK)) | (@cat << NIBBLE_0_SHIFT);
- return;
-}