summaryrefslogtreecommitdiff
path: root/npc/017-3/doctor.txt
blob: edc4f2a9bb19832c172a2317dfad337564792ff8 (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
// TMW2/LoF scripts.
// Authors:
//    TMW-LoF Team
//    Jesusalva
// Description:
//    Part from THE EPISODE quest
// Reference:
//    http://forums.landoffire.org/viewtopic.php?f=7&t=1320&sid=80d2c735b55ccb06a39955a8fbca3913

017-3,75,68,0	script	The Doctor	NPC_LOF_DOCTOR,{
    showavatar NPC_LOF_DOCTOR;
    .@q=getq(LoFQuest_EPISODE);
    if (BaseLevel < 30) goto L_Weak;
    if (.@q == 1) goto L_Check;
    if (.@q == 2 && BaseLevel >= 40) goto L_Miler;
    if (.@q >= 2) goto L_Tea;
    mesn;
    mesq l("Quite interesting, quite interesting indeed.");
    menu
        l("Um, might I ask, what is so interesting?"), L_Intro,
        l("Yes, uhh, very interesting indeed. Haha. I better leave..."), -;
    mes "";
    mesc l("@@ stares you as you slowly get away from him. Odd person.", .name$);
    close;

L_Intro:
    mes "";
    mesn;
    mesq l("Well, you are. You're quite interesting. I've been watching you for some time now, as you've been helping so many people: you're quite a master at what you do, you know.");
    menu
        l("Well, thanks."), L_IntroContinue,
        l("Ok then... Uh... Please excuse me....."), -;
    mes "";
    mesc l("@@ stares you as you slowly get away from him. Odd person.", .name$);
    close;

L_IntroContinue:
    mes "";
    mesn;
    mesq l("I don't suppose you have some herbs and a few bottles of potion with you, do you?");
    menu
        l("'Some herbs and potion'? Could you be more specific?"), L_IntroSpecify,
        l("Certainly not. Uhh, please excuse me."), -;
    mes "";
    mesc l("@@ stares you as you slowly get away from him. Odd person.", .name$);
    close;

L_IntroSpecify:
    mes "";
    mesn;
    mesq l("Ah, sorry, of course. I need quite a few herbs, look:");
    mesc l("@@/150 @@", countitem(MauveHerb), getitemlink(MauveHerb));
    mesc l("@@/150 @@", countitem(CobaltHerb), getitemlink(CobaltHerb));
    mesc l("@@/150 @@", countitem(GambogeHerb), getitemlink(GambogeHerb));
    mesc l("@@/100 @@", countitem(AlizarinHerb), getitemlink(AlizarinHerb));
    mesc l("@@/50 @@", countitem(ShadowHerb), getitemlink(ShadowHerb));
    mesc l("@@/10 @@", countitem(HastePotion), getitemlink(HastePotion));
    menu
        l("That shouldn't been too hard, but do I get something in return?"), L_IntroReward,
        l("O.o \"That's a lot. Maybe another day.\""), -;
    mes "";
    mesc l("@@ stares you as you slowly get away from him. Odd person.", .name$);
    close;

L_IntroReward:
    mes "";
    mesn;
    mesq l("I suppose, what would you like?");
    next;
    mesn;
    mesq l("Er, nevermind, I've thought of something to give you. You can go off now and get what I need.");
    setq LoFQuest_EPISODE, 1;
    close;

L_Check:
    mesn;
    mesq l("Did you brought what I asked for?");
    mesc l("@@/150 @@", countitem(MauveHerb), getitemlink(MauveHerb));
    mesc l("@@/150 @@", countitem(CobaltHerb), getitemlink(CobaltHerb));
    mesc l("@@/150 @@", countitem(GambogeHerb), getitemlink(GambogeHerb));
    mesc l("@@/100 @@", countitem(AlizarinHerb), getitemlink(AlizarinHerb));
    mesc l("@@/50 @@", countitem(ShadowHerb), getitemlink(ShadowHerb));
    mesc l("@@/10 @@", countitem(HastePotion), getitemlink(HastePotion));
    next;
    if (askyesno() != ASK_YES)
        close;
    inventoryplace HerbalTea, 5;
    if (
        countitem(MauveHerb) < 150 ||
        countitem(CobaltHerb) < 150 ||
        countitem(GambogeHerb) < 150 ||
        countitem(AlizarinHerb) < 100 ||
        countitem(ShadowHerb) < 50 ||
        countitem(HastePotion) < 10)
        goto L_Missing;
    delitem MauveHerb, 150;
    delitem CobaltHerb, 150;
    delitem GambogeHerb, 150;
    delitem AlizarinHerb, 100;
    delitem ShadowHerb, 50;
    delitem HastePotion, 10;
    getexp 7995, 0;
    setq LoFQuest_EPISODE, 2;
    getitem HerbalTea, 5;
    mesn;
    mesq l("Mmm, it's been so long since I have had herbal tea. You have my gratitude.");
    next;
    mesn strcharinfo(0);
    mesq l("Seriously? What sort of reward is that?");
    next;
    mesn;
    mesq l("Well, I suppose you can have some of my tea.");
    close;

L_Tea:
    mesn;
    mesq l("If you want, you can bring me some more of those herbs and potions.");
    mesc l("@@/30 @@", countitem(MauveHerb), getitemlink(MauveHerb));
    mesc l("@@/30 @@", countitem(CobaltHerb), getitemlink(CobaltHerb));
    mesc l("@@/30 @@", countitem(GambogeHerb), getitemlink(GambogeHerb));
    mesc l("@@/20 @@", countitem(AlizarinHerb), getitemlink(AlizarinHerb));
    mesc l("@@/10 @@", countitem(ShadowHerb), getitemlink(ShadowHerb));
    mesc l("@@/2 @@", countitem(HastePotion), getitemlink(HastePotion));
    menu
        l("Alright, I have them here!"), L_Check2,
        l("No thanks, see ya!"), -;
    close;

L_Check2:
    inventoryplace HerbalTea, 1;
    if (
        countitem(MauveHerb) < 30 ||
        countitem(CobaltHerb) < 30 ||
        countitem(GambogeHerb) < 30 ||
        countitem(AlizarinHerb) < 20 ||
        countitem(ShadowHerb) < 10 ||
        countitem(HastePotion) < 2)
        goto L_Missing;
    delitem MauveHerb, 30;
    delitem CobaltHerb, 30;
    delitem GambogeHerb, 30;
    delitem AlizarinHerb, 20;
    delitem ShadowHerb, 10;
    delitem HastePotion, 2;
    getexp 122, 12;
    getitem HerbalTea, 1;
    mesn;
    mesq l("Thanks, enjoy your tea! I will certainly enjoy mine!");
    close;

L_Weak:
    mesn;
    mesq l("Hmm, it's very interesting, very ... (mumbling).");
    close;

L_Missing:
    mesn;
    mesq l("Sorry, you do not have enough ingredients. You'd better search thoroughly.");
    close;

/////// Second Act
L_Miler:
    mesn;
    mesq l("Thank you for helping me make my tea. I hope the potions have been helpful...");
    next;
    mesn;
    mesq l("That reminds me. I have a friend in Nivalis named Miler who gave me some hints on the recipe. Would you take him a sample of what I gave you?");
    mesq l("If you've used all the ones I've given, you can always bring me more ingredients.");
    menu
        "I'll go right away.", -,
        "Ah, I suppose I need to gather more ingredients first...", -;
    setq LoFQuest_EPISODE, 3;
    close;



OnInit:
    .sex=G_MALE;
    .distance=5;
    end;

}