summaryrefslogtreecommitdiff
path: root/world/map/npc/xmas/2011/plushMouboo.txt
blob: 9c9b1b9ba169e9cd802a2f00053e764876c06ead (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
// This file is part of Christmas Event 2011
// author: Jenalya
// Plush Mouboo states:
// 1: got order from Rikhard
// 2: Launo said that he needs more material
// 3: Launo created the Plush Mouboo
// 4: gave Plush Mouboo to the bad guy
// 5: delivered the Plush Mouboo without giving it to the bad guy
// 6: delivered fake present instead of Plush Mouboo

030-2.gat,31,77,0|script|Rikhard|329,{

    if (!(gettime(7) == $@xmas2011_year && gettime(6) == 12 && gettime(5) >= $@xmas2011_start_day)
        && !(gettime(7) == ($@xmas2011_year + 1) && gettime(6) == 1 && gettime(5) <= $@xmas2011_reward_end_day))
        goto L_NoEvent;
    if ((gettime(7) == $@xmas2011_year && gettime(6) == 12 && gettime(5) >= $@xmas2011_reward_start_day)
        || (gettime(7) == ($@xmas2011_year + 1) && gettime(6) == 1 && gettime(5) <= $@xmas2011_reward_end_day))
        goto L_RewardTime;

    set @plushmouboo, (xmas11 & $@xmas11_PlushMoubooMask) >> $@xmas11_PlushMoubooShift;

    if (@plushmouboo > 0) goto L_Ordered;
    if (xmas11 & $@xmas11_talkedToChief) goto L_Helping;

    mes "You see some guy grubbing in a huge mound of paper.";
    mes "[Busy Helper]";
    mes "\"Where is this fu-\"";
    mes "He suddenly notices you nearby.";
    mes "[Busy Helper]";
    mes "\"- ahrm, fiddly paper.\"";
    goto L_Close;

L_Helping:
    mes "[Rikhard]";
    mes "\"Ah! You came in at just the right moment! I need someone to deliver this Christmas-present-toy-ordering-form to Launo.";
    mes "Here, take this.\"";
    mes "He puts some piece of paper in your hand.";
    next;
    mes "It seems to be some kind of form, but is very confusing to you. It contains a lot of boxes with some numbers scrabbled in and some hard to read words.";
    menu
        "Er, what is this?",-,
        "Wait a sec, what do you want me to do with that?",-;
    mes "Rikhard mumbles something about hiring nonskilled workers.";
    mes "[Rikhard]";
    mes "\"Ok, listen - we're organizing the Christmas business here. We're keeping track of who was a good or bad kid this year and what was written on the wish lists.";
    mes "And the good children get what they wished for, remember? So, this is a Christmas-present-toy-ordering-form to order a Plush Mouboo for some very well-behaved cute little girl.\"";
    next;
    mes "\"Launo is very skilled at creating plush toys, so you need to bring him this form.\"";
    mes "He waves at you with his hand and then digs into the papers again.";
    set @plushmouboo, 1;
    set xmas11, (xmas11 & ~($@xmas11_PlushMoubooMask) | (@plushmouboo << $@xmas11_PlushMoubooShift));
    goto L_Close;

L_Ordered:
    mes "[Rikhard]";
    mes "\"Did you already give Launo the Christmas-present-toy-ordering-form? Yes?";
    mes "Ok, I have some more paperwork to do, so please don't interrupt.\"";
    goto L_Close;

L_NoEvent:
    mes "[Rikhard]";
    mes "\"How did you come in? At this time of the year the door should be locked!\"";
    warp "030-1.gat", 99, 55;
    goto L_Close;

L_RewardTime:
    mes "[Rikhard]";
    mes "\"With sufficient organization you can achieve everything.\"";
    mes "He smiles happily.";
    goto L_Close;

L_Close:
    set @plushmouboo, 0;
    close;
}

030-2.gat,135,31,0|script|Launo|329,{

    if (!(gettime(7) == $@xmas2011_year && gettime(6) == 12 && gettime(5) >= $@xmas2011_start_day)
        && !(gettime(7) == ($@xmas2011_year + 1) && gettime(6) == 1 && gettime(5) <= $@xmas2011_reward_end_day))
        goto L_NoEvent;
    if ((gettime(7) == $@xmas2011_year && gettime(6) == 12 && gettime(5) >= $@xmas2011_reward_start_day)
        || (gettime(7) == ($@xmas2011_year + 1) && gettime(6) == 1 && gettime(5) <= $@xmas2011_reward_end_day))
        goto L_RewardTime;

    set @plushmouboo, (xmas11 & $@xmas11_PlushMoubooMask) >> $@xmas11_PlushMoubooShift;
    set @cotton_amount, 5;
    set @fur_amount, 2;

    if (@plushmouboo >= 3) goto L_PlushMoubooDone;
    if (@plushmouboo == 2) goto L_PlushMouboo;
    if (@plushmouboo == 1) goto L_Order;
    if (xmas11 & $@xmas11_talkedToChief) goto L_Helping;

    mes "[Busy Helper]";
    mes "\"Mh, mh, mh. This is not good.\"";
    goto L_Close;

L_Helping:
    mes "[Launo]";
    mes "\"Mh? Oh, you're here to help?";
    mes "That's very kind of you.\"";
    next;
    mes "\"Though I can't do anything right now.";
    mes "I'm specialized in making plush toys. Usually I'd just create dozens of them and if they aren't on this year's wishlists, they'd be used next year.\"";
    mes "He sighs.";
    next;
    mes "\"But since we're short in material, we got the order to only create toys that are requested.";
    mes "And now I sit here and wait to get such an order. But the guys up in the office seem to have some problems getting their paperwork done.";
    mes "Maybe you can go up there and ask if there's a plush toy to make?\"";
    goto L_Close;

L_Order:
    mes "Launo sighs.";
    mes "[Launo]";
    mes "\"I wish I had an order for a toy.\"";
    menu
        "I have one for you! Rikhard gave me an order for a Plush Mouboo.",-,
        "Well, bad luck.", L_Close;
    mes "Launos gets a happier look on his face.";
    mes "[Launo]";
    mes "\"A Plush Mouboo? I love doing them!";
    mes "Ok, let's see if I have all the material needed.\"";
    next;
    mes "[Launo]";
    mes "\"Hrm, it seems I need some more Cotton, could you bring me " + @cotton_amount + " Cotton Cloths?";
    mes "And I need some fur to make the belly extra fluffy. " + @fur_amount + " pieces of White Fur would be good, I can dye the color myself.\"";
    set @plushmouboo, 2;
    callsub S_Update_Var;
    goto L_Close;

L_PlushMouboo:
    mes "[Launo]";
    mes "\"I need " + @cotton_amount + " Cotton Cloths and " + @fur_amount + " pieces of White Fur for the Plush Mouboo.\"";
    menu
        "I have it!",-,
        "I'm still working on that.",L_Close;
    if ((countitem("CottonCloth") < @cotton_amount) || (countitem("WhiteFur") < @fur_amount))
        goto L_NoItems;
    getinventorylist;
    if (@inventorylist_count == 100)
        goto L_Full_Inv;
    delitem "CottonCloth", @cotton_amount;
    delitem "WhiteFur", @fur_amount;
    set @plushmouboo, 3;
    callsub S_Update_Var;
    getitem "PlushMouboo", 1;
    mes "[Launo]";
    mes "\"Excellent! I'll start right away.\"";
    next;
    mes "He puts the items you gave him into a pot with brown dye and takes them out again after short while, putting them to dry on the desk.";
    mes "In the meanwhile he rummages in his workbench and gets out some tools and a wood template.";
    next;
    mes "The workbench seems to have a heating mechanism or something since the cloth and fur is already dry.";
    mes "He takes the wood template, puts it on the cloth and draws very tiny lines on it. Then he cuts it out with very quick but confident movements.";
    next;
    mes "After that he takes the different parts and starts to sew them together.";
    mes "He stops before it's finished, leaving a hole where he puts in some stuffing.";
    next;
    mes "He's kneading it a bit to arrange the stuffing properly in the toy and finally stitches up the hole.";
    mes "Finally he adds some knobs for the eyes and presents you the Plush Mouboo.";
    next;
    mes "[Launo]";
    mes "\"Here you go! Isn't it delightful?\"";
    menu
        "Wow, that was quick!",-;
    mes "[Launo]";
    mes "\"Well yeah, I'm used to working quickly. Usually we produce many more toys.\"";
    mes "However, now it needs to be put in a present box and then that box has to be wrapped.\"";
    next;
    mes "\"Could you take care of that? Urmas should have some boxes for you and Reino takes care of the wrapping paper.";
    mes "The place to wrap the presents is at Aaron's desk.\"";
    goto L_Close;

L_PlushMoubooDone:
    mes "[Launo]";
    mes "\"I feel much better now after I got some work done. Please take care of packing, wrapping, and giving it to Aaron.\"";
    goto L_Close;

L_NoEvent:
    mes "[Launo]";
    mes "\"How did you come in? At this time of the year the door should be locked!\"";
    warp "030-1.gat", 99, 55;
    goto L_Close;

L_RewardTime:
    mes "[Launo]";
    mes "\"Huh, it was really stressful this year.";
    mes "But imagining the happy kids cuddling the plush toys I made - that makes amends for all that.\"";
    goto L_Close;

L_NoItems:
    mes "[Launo]";
    mes "\"You don't have it!\"";
    goto L_Close;

L_Full_Inv:
    mes "[Launo]";
    mes "\"You have a full backpack! Come back when you're carrying less things.\"";
    goto L_Close;

L_Close:
    set @cotton_amount, 0;
    set @fur_amount, 0;
    set @plushmouboo, 0;
    set @inventorylist_count, 0;
    close;

S_Update_Var:
    set xmas11, (xmas11 & ~($@xmas11_PlushMoubooMask) | (@plushmouboo << $@xmas11_PlushMoubooShift));
    return;
}