summaryrefslogtreecommitdiff
path: root/npc/000-2-1/chefgado.txt
blob: 0b75ffa06367451f3927f09b572aea6ac255f7c6 (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
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
// Evol scripts.
// Authors:
//    Hal9000
//    Qwerty Dragon
// Description:
//    La Johanne Chef.
// Variable:
//    ShipQuests_ChefGado
//    ShipQuests_Nard
// Values:
//    0   Default, no quest given.
//    1   Quest accepted.
//    2   Ingredients collected, ready to poison Julia.
//    3   Julia poisoned.
//    4   Quest complete. Chef Gago wins.
//    5   Quest complete. Julia wins (poison dish returned).
//    6   Quest complete. Julia wins.

000-2-1,27,28,0	script	Chef Gado	NPC_CHEF_GADO,{
    .@q = getq(ShipQuests_ChefGado);
    .@n = getq(ShipQuests_Nard);
    if (.@q == 1) goto L_QuestAccepted;
    if (.@q == 2) goto L_PoisonAccepted;
    if (.@q == 3) goto L_PoisonJulia;
    if (.@q == 4) goto L_QuestComplete;
    if (.@q == 5 && countitem(PoisonedDish) > 0) goto L_Aborting;
    if (.@q > 4) goto L_QuestAborted;
    if (.@n == 3) goto L_QuestStart;

    mesn;
    .@r = rand(3);
    if (.@r == 0) mesq l("What are you doing in my kitchen?! Get out, it's not a place for kids!");
    if (.@r == 1) mesq l("Where is the damn salt?! Give me the salt, I know you have it!");
    if (.@r == 2) mesq l("Are you going to stand here all day long? Do the dishes or go away.");

    if (getq(General_SmearedHands) < 3) {
        next;
        select
            l("I'll get moving, sorry!"),
            //rif(.@r == 1 && countitem(Salt), l("Offer him the salt")),
            l("Can you teach me cooking?");
        mes "";
        if (@menu == 2) {
            mesn;
            mesq l("NO! I am busy, can't you see?!");
            next;
            mesn;
            mesq l("When we reach Artis, maybe, but not now!");
        }
    }
    close;

L_QuestStart:
    mesn;
    mesq l("So it seems I have another stomach to fill. Those bastards have no respect for who feeds them every damn day!");
    next;

    menu
        l("How rude! What is the reason behind your malice?"), L_Rude,
        l("I swear, I do not eat so much."), -;

    mes "";
    mesn;
    mesq l("Yeah, yeah, of course you don't...");

    close;

L_Rude:
    mes "";
    mesn;
    mesq l("UAHAHAHAAH! I am the cook of that bunch of donkeys, and I can be rude with everyone from this bossy captain to that harpy-lady!");
    next;

    select
        l("Harpy-lady?");

    mes "";
    mesn;
    mesq l("I am sure you know her. Nice dress, large smile and a constant flux of orders and rules. Julia they call her!");
    next;
    mesq l("You have to know that there was a time during which I was the unopposed lieutenant of this crew. Then one day one of those damn sailors brought that 'nice' lady here.");
    next;
    mesq l("I will not tell you all the details, but after a month, she was ruling the ship and I was sent down here, cooking for those traitors!");
    next;
    mesq l("But I swear that one day... Oh... My tasty revenge! Hhm, actually I wonder if... Maybe...");
    next;

    select
        l("M... Maybe?");

    mes "";
    mesn;
    mesq lg("Well, eh-heh... Welcome aboard, cutie!", "Well, eh-heh... Welcome aboard, son!");
    next;
    mesq l("I just realized I am lacking some common things, and one key ingredient, to prepare a... A special recipe.");
    next;
    mesq l("I only need 2 @@, 2 @@s, 1 @@...", getitemlink(PiouLegs), getitemlink(HalfCroconut), getitemlink(Aquada));
    next;
    mesq l("... and 1 @@.", getitemlink(SeaDrops));
    next;

    menu
        l("Sea water?! I will not help you with your evil plan!"), L_Quit,
        l("Sure, why not?"), -;

    setq ShipQuests_ChefGado, 1;
    mes "";
    mesn;
    mesq lg("Well done! Collect all the ingredients and then come back here. You will be rewarded once I am satisfied that they understand who rules this ship!");
    next;
    mesq l("Before you go, let me tell you how to get @@s, because you don't look very smart.", getitemlink(HalfCroconut));

    goto L_OpenCroconut;

L_QuestAccepted:
    mesn;
    mesq l("Have you collected all the ingredients for my recipe? The special one too?");
    next;

    menu
        rif(countitem(PiouLegs) > 1 && countitem(HalfCroconut) > 1 && countitem(Aquada) > 0 && countitem(SeaDrops) > 0, l("All your... Fresh ingredients are ready to be cooked.")), L_GotAll,
        l("What are your needs?"), L_Need,
        l("Where can I find a half croconut?"), L_OpenCroconut,
        l("Not yet. I will be back soon."), L_Quit;

L_OpenCroconut:
    mes "";
    mesn;
    mesq lg("Take a @@ and try opening it using something like a sharp knife. I doubt you'll succeed, you're being so weak in everything.",
            "Take a @@ and try opening it using something like a sharp knife. I doubt you'll succeed, you're being so weak in everything.", getitemlink(Croconut));
    next;
    mesq l("Now move!");

    close;

L_GotAll:
    mes "";

    inventoryplace PoisonedDish, 1;

    delitem PiouLegs, 2;
    delitem HalfCroconut, 1;
    delitem Aquada, 1;
    delitem SeaDrops, 1;

    mesn;
    mesq l("Let me see... Crispy legs, disgusting liquids... Let's start!");
    next;
    mesq l("Water, salt, spicy herbs and meat stuffed with my special surprise!");
    next;
    mesq l("Done. Here, take it! Now, here is the plan. Go talk to her and offer our beautiful lady a bite of her arrogance!");

    setq ShipQuests_ChefGado, 2;
    getitem PoisonedDish, 1;
    close;

L_Need:
    mes "";
    mesn;
    mesq l("Shhht, don't say it that loud...");
    next;
    mesq l("I only need 2 @@, 2 @@s, 1 @@...", getitemlink(PiouLegs), getitemlink(HalfCroconut), getitemlink(Aquada));
    next;
    mesq l("... and 1 @@.", getitemlink(SeaDrops));

    close;

L_PoisonAccepted:
    mesn;
    mesq l("Fool! Just come back here when you'll be done with our little... 'Secret mission'.");

    close;

L_PoisonJulia:
    mesn;
    mesq l("The usurper has been punished! This is a great day! Take this reward as a prize for your loyalty to the old commander!");

    setq ShipQuests_ChefGado, 4;
    Zeny += 200;
    message strcharinfo(0), l("You receive @@ E!", 200);
    inventoryplace Bread, 1;
    getitem Bread, 1;
    getexp 15, 0;

    close;

L_QuestComplete:
    mesn;
    mesq l("Oh, it's you. I think it's better we do not talk for a while. They suspect something.");

    close;

L_Aborting:
    mesn;
    mesq l("Wait, why do you still have the dish with you?!");
    next;

    select
        l("I informed Julia about your monstrous plan.");

    mes "";
    mesn;
    mesq l("Are you mad?!");
    next;
    mesq lg("Give me back this dish, you dirty liar!");

    if (countitem(PoisonedDish) > 0) delitem PoisonedDish, 1;

    next;
    mesq l("You're like the rest of this filthy crew, I can't trust you!");

    close;

L_QuestAborted:
    mesn;
    mesq lg("You're like the rest of this filthy crew. Your name is now on the traitors list!");

    close;

L_Quit:
    closeclientdialog;
    close;

OnInit:
    .sex = GENDER_HIDDEN;
    .distance = 2;
    end;
}