summaryrefslogtreecommitdiff
path: root/world/map/npc/022-1/anwar.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/022-1/anwar.txt')
-rw-r--r--world/map/npc/022-1/anwar.txt197
1 files changed, 197 insertions, 0 deletions
diff --git a/world/map/npc/022-1/anwar.txt b/world/map/npc/022-1/anwar.txt
new file mode 100644
index 00000000..d61e271c
--- /dev/null
+++ b/world/map/npc/022-1/anwar.txt
@@ -0,0 +1,197 @@
+// Anwar needs a magic fertilizer for his field
+// Quest uses Nibble 3 of QUEST_NorthTulimshar
+// Author: Jenalya
+// state 1: Anwar sent to Tinris for help to get a magic fertilizer
+// state 2: Tinris asked for chocolate cake as present for his girlfriend
+// state 3: Tinris asked for ingredients for the fertilizer
+// state 4: Tinris gave you the fertilizer
+// state 5: Anwar tried it out and it doesn't work well, sent you back to Tinris
+// state 6: Tinris asked for more ingredients for a new try
+// state 7: Tinris says it's really hard, gives you the fertilizer and tells you to ask Eomie to cast a spell on it
+// state 8: Eomie sends you to get some stuff so she can interrupt her spell on the spot of grass
+// state 9: Eomie casted a spell on the fertilizer
+// state 10: Anwar used it and it worked. he asks you to help him preparing a thank-you-gift for each Tinris and Eomis
+// state 11: Anwar asked to bring present to Tinris
+// state 12: gave present to Tinris
+// state 13: Anwar asked to bring present to Eomie
+// state 14: gave present to Eomie
+// state 15: reported back to Anwar and done
+
+-|script|#magicfieldNTconfig|-1,{
+OnInit:
+ set $@magicfieldNT_MASK, NIBBLE_3_MASK;
+ set $@magicfieldNT_SHIFT, NIBBLE_3_SHIFT;
+ end;
+}
+
+022-1.gat,41,46,0|script|Anwar|156,{
+
+ set @state, ((QUEST_NorthTulimshar & $@magicfieldNT_MASK) >> $@magicfieldNT_SHIFT);
+
+ set @cloth_amount, 3;
+ set @silk_amount, 30;
+
+ set @firstTry_exp, 400;
+ set @secondTry_exp, 700;
+ set @material_exp, 1000;
+ set @final_exp, 2000;
+
+ if (@state >= 15) goto L_Done;
+ if (@state >= 13) goto L_GiveEomie;
+ if (@state >= 11) goto L_GiveTinris;
+ if (@state == 10) goto L_GiftMaterial;
+ if (@state >= 5) goto L_SecondTry;
+ if (@state >= 1) goto L_FirstTry;
+
+ mes "[Anwar]";
+ mes "\"Hello. You look like one of those young people who come here to go on an adventure.";
+ mes "Would you be interested in doing some small errand for me?\"";
+ menu
+ "Sure!",-,
+ "I'm busy, sorry.",L_Close;
+ mes "[Anwar]";
+ mes "\"That's the spirit! Ok, I'm tired of spending most of my time working on this field. I heard the magicians at the magic school are reasearching about ways to enhance the growth of plants with magic.\"";
+ next;
+ mes "\"I can't go there myself, since this area of the city is full with sneaky ragtags and they will rob my field if I leave here. Could you go to the magic school and ask for some magic enhancement for my field?\"";
+ next;
+ mes "\"To find the school just follow the street south and then go west.\"";
+ set @state, 1;
+ callsub S_Update_Mask;
+ goto L_Close;
+
+L_FirstTry: // @state >= 1 but below 5
+ mes "[Anwar]";
+ mes "\"I hope the wizards at the magic school can help me with the field. I'd really like to have more free time. I want to taylor, but I'm not experienced enough to make a living out of that.\"";
+ if (@state != 4)
+ goto L_Close;
+ menu
+ "Tinris gave me a magic fertilizer for your field, but he isn't sure if it works.",-;
+ mes "[Anwar]";
+ mes "\"Really? Well, let's try it out!\"";
+ mes "He takes the fertilizer and starts to bespatter the field.";
+ next;
+ mes "But it doesn't seem to be good for the plants, they start to shrivel and get brown.";
+ mes "[Anwar]";
+ mes "\"Oh no! What is this? It's damaging my plants! Go back to Tinris and tell him it doesn't work!\"";
+ getexp @firstTry_exp, 0;
+ set @state, 5;
+ callsub S_Update_Mask;
+ goto L_Close;
+
+L_SecondTry: // @state >= 5 but below 10
+ mes "[Anwar]";
+ mes "\"I hope Tinris can come up with a better fertilizer. My plants are suffering from the first try.\"";
+ if (@state != 9)
+ goto L_Close;
+ menu
+ "Here is another one. Eomie casted a spell on it.",-;
+ mes "[Anwar]";
+ mes "\"Eomie? I heard she's amazingly skilled with nature magic. I'll try if this works better.\"";
+ mes "He takes the fertilizer and puts it on only a few plants, then waits a moment to see the result.";
+ next;
+ mes "The plants recovers a bit and get more green again.";
+ mes "[Anwar]";
+ mes "\"Ah, this one is better. I'll put it on the entire field.\"";
+ getexp @secondTry_exp, 0;
+ set @state, 10;
+ callsub S_Update_Mask;
+ next;
+L_GiftMaterial: // @state == 10
+ mes "[Anwar]";
+ mes "\"I want to show my gratitude for Tinris and Eomie. Can you help me once again? I would like to make some clothes for them and need " + @cloth_amount + " pieces of Cotton Cloth and " + @silk_amount + " Silk Cocoons.\"";
+ menu
+ "I have it.",-,
+ "Where to get that?",L_Hint,
+ "I'll see what I can do.",L_Close;
+ getinventorylist;
+ if (@inventorylist_count == 100)
+ goto L_Full_Inv;
+ if ((countitem("CottonCloth") < @cloth_amount) || (countitem("SilkCocoon") < @silk_amount))
+ goto L_NoItem;
+ delitem "CottonCloth", @cloth_amount;
+ delitem "SilkCocoon", @silk_amount;
+ getexp @material_exp, 0;
+
+ getitem "GreenVNeckSweater", 1;
+ set @state, 11;
+ callsub S_Update_Mask;
+ mes "[Anwar]";
+ mes "\"Great! I'll start right away with the present for Tinris. That shouldn't take long.\"";
+ mes "After a short while of cutting and sewing he holds a V-Neck Sweater in his hands. Then he dyes it green.";
+ next;
+ mes "[Anwar]";
+ mes "\"Wonderful! Could you please bring this to Tinris to show him my gratitude?\"";
+ goto L_Close;
+
+L_Hint:
+ mes "[Anwar]";
+ mes "\"As far as I know Cotton Cloth is given out as reward for hunting monsters. You should talk to Aidan on the bazaar.\"";
+ next;
+ mes "\"And silk cocoons are gotten from Silkworms. They live in the woodland area around Hurnscald. You can get there by taking the ferry.\"";
+ goto L_Close;
+
+L_GiveTinris: // @state >= 11 but below 13
+ mes "[Anwar]";
+ mes "\"Did you already bring the Green V-Nack Sweater to Tinris?\"";
+ if (@state != 12)
+ menu
+ "Not yet.",L_Close;
+ menu
+ "Yes, he was very happy.",-;
+ getinventorylist;
+ if (@inventorylist_count == 100)
+ goto L_Full_Inv;
+ mes "[Anwar]";
+ mes "\"Wonderful! I also finished the present for Eomie. Can you bring it to her?\"";
+ getitem "SilkHeadband", 1;
+ set @state, 13;
+ callsub S_Update_Mask;
+ goto L_Close;
+
+L_GiveEomie: // @state >= 13 but below 15
+ getinventorylist;
+ if (@inventorylist_count == 100)
+ goto L_Full_Inv;
+ mes "[Anwar]";
+ mes "\"Did you give the Silk Headband to Eomie?\"";
+ if (@state != 14)
+ menu
+ "Not yet.",L_Close;
+ menu
+ "Yes. She asked me to thank you.",-;
+ mes "Anwar smiles.";
+ mes "[Anwar]";
+ mes "\"I'm so happy. Thank you so much for your help. I made this for you while you went to see Eomie.\"";
+ getexp @final_exp, 0;
+ getitem "DarkGreenCottonTrousers", 1;
+ set @state, 15;
+ callsub S_Update_Mask;
+ goto L_Close;
+
+L_Done: // @state == 15
+ mes "[Anwar]";
+ mes "\"Thank you so much for your help. The plants are growing much better now, I don't have to spend all my time taking care about the field anymore.";
+ mes "Finally I can do what I'm really interested in and work on getting better in tayloring clothes.\"";
+ goto L_Close;
+
+L_NoItem:
+ mes "[Anwar]";
+ mes "\"You don't have it!\"";
+ goto L_Close;
+
+L_FullInv:
+ mes "[Anwar]";
+ mes "\"You carry a lot of stuff. Come back when you have more room.\"";
+ goto L_Close;
+
+L_Close:
+ set @state, 0;
+ set @cloth_amount, 0;
+ set @silk_amount, 0;
+ set @inventorylist_count, 0;
+ close;
+
+S_Update_Mask:
+ set QUEST_NorthTulimshar, (QUEST_NorthTulimshar & ~($@magicfieldNT_MASK)) | (@state << $@magicfieldNT_SHIFT);
+ return;
+}