summaryrefslogtreecommitdiff
path: root/npc/000-2-3/nard.txt
blob: 483f4ff55582bdeadc0d21a24bd43cdc44176d7a (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
// Evol scripts.
// Authors:
//    Qwerty Dragon
//    Reid
// Description:
//    Captain Nard dialogs.
//    Nard does the introduction with a small quest.
//    This quest is meant to teach the player how to use a weapon,and to bring food to the ship.
//    4 bits array:
//    ShipQuests
// Variable:
//    0    ShipQuests_Nard
//    1    ShipQuests_Gugli
//    2    ShipQuests_ChefGado
// Values:
//    00   Introduction of the boxes and Nard. This is displayed when the player never spoke to Nard or his box.
//    01   Nard spoke and gave access to the outdoor of the ship.
//    02   Completed the Gugli quest.
//    03   ChefGado Quest accepted.
//    04   ChefGado Quest completed and "Introduction" chapter finalized.
//    05   Reward taken from the box.
//    10   Never talked with Gugli.
//    11   Gugli gives you the task.
//    12   Gave all of the boxes to Gugli.

000-2-3,25,26,0	script	Nard	406,{
    .@nard = getq(ShipQuests_Nard);
    .@gugli = getq(ShipQuests_Gugli);
    .@gado = getq(ShipQuests_ChefGado);

L_Checker:
    if (.@gado > 3 && .@nard == 3) goto L_ChefQuestComplete;
    if (.@nard == 2) goto L_ChefQuestStart;
    if (.@nard == 3) goto L_ChefQuestGiven;
    if (.@nard == 4) goto L_Reward;
    if (.@nard > 4) goto L_Already;
    if (.@gugli == 2) goto L_Done;
    if (.@nard == 1) goto L_NotYet;

    mesn;
    mesq l("Hello.");
    next;
    mesq l("Let me introduce myself, I am Nard, captain of this ship.");
    next;
    mesq lg("I am pleased to see that you have woken up and are active. Elmo came here to tell me this good news!");
    next;

    setcamnpc "Elmo";
    mesn "Elmo";
    mesq l("Oh... Err, yes I did, or, well, good day to you!");
    next;
    restorecam;

    mesn;
    mesq l("Hehehe, he is a bit nervous, please forgive him, it is not everyday we have a new member in the crew!");
    next;
    mesq l("So, how do you feel? I see that Julia did a marvelous job! You look like you're in good health now.");
    next;

L_Menu:
    menu
        lg("I feel ok."), L_Ok,
        l("Who's this Julia?"), L_Julia,
        lg("I'm a bit sick..."), -;

    mes "";
    mesn;
    mesq l("Oh, I was going to ask you if you wanted to help the crew search for some food and explore the island out there.");
    next;

L_MenuQuest:
    menu
        l("What do you need?"), -,
        l("Is there a reward?"), L_NeedHead;

    mes "";
    mesn;
    mesq l("Oh! I like that sort of answer!");
    next;
    mesq lg("We need manpower on the island... Oh forgive me, women are also welcome, of course.",
            "We need manpower on the island.");
    next;

    goto L_NeedContent;

L_NeedHead:
    mes "";
    mesn;

L_NeedContent:
    mesq l("Sure, there is a reward for your task.");
    next;
    mesq l("Our crew is like a family, and if you agree to help us, I would like to invite you to join our family!");
    next;
    mesq l("What? It's not a good reward?");
    next;
    mesq l("Oh well. I'll also give you one of these hats from the box near you, but only after you complete your task!");
    next;
    mesq l("I give you this key, it opens all the doors on this ship.");
    next;
    mesq l("Now go outside and talk with Gugli, he'll tell you what we need.");
    next;

    inventoryplace 718, 1;

    setq ShipQuests_Nard, 1;
    getitem "JohanneKey", 1;

    close;

L_Ok:
    mes "";
    mesn;
    mesq l("Good to know.");
    next;
    mesq l("We have made a stop at a little island, before making it on to the port of Artis.");
    next;
    mesq l("It would be good for you to do some exercise, the ship isn't big enough for that.");
    next;

    goto L_SpecialTask;

L_Julia:
    mes "";
    mesn;
    mesq l("You have an awful case of amnesia.");
    next;
    mesq l("She is the nurse and shipkeeper of this ship.");
    next;
    mesq lg("But most important, she is the one who took care of you when you were unconscious.");
    next;

L_SpecialTask:
    mesq l("I know that you are just starting to feel better, but I'd like to give you a special task.");
    next;

    goto L_MenuQuest;

L_NotYet:
    mesn;
    mesq l("You still haven't completed your tasks.");
    close;

L_Done:
    mesn;
    mesq l("Hi @@.", strcharinfo(0));
    next;
    mesq l("Elmo and Gugli told me that you did all of the tasks outside, congrats!");

    setq ShipQuests_Nard, 2;
    next;
    goto L_ChefQuestRedir;

L_ChefQuestStart:
    mesn;
    mesq l("Elmo told me you are now considered family and are numbered among us in our activities on the island. I do so very much appreciate the efforts you did down there.");
    next;

L_ChefQuestRedir:
    mesq l("Unfortunately, we still need help from you. This time it will be a delicate task, here onboard.");
    next;
    mesq l("Elmo brought reports to me about some frictions between my old and new lieutenants. You probably already met Julia and Gado the Chef.");
    next;
    mesq l("They are each valued individuals and I need them both. In the past, I probably made my share of mistakes. I regret good management is so difficult. I was wondering if you could investigate and... Sort out this situation.");
    next;

    menu
        l("Of the two of them, who has 'good' on their side?"), -;

    mes "";
    mesq l("I do not want to go pointing my finger at someone. I want to be honorable and fair, and I sense the same quality in you, so I put my trust in you. I am sure you will be able to judge and solve this troubling situation.");

    setq ShipQuests_Nard, 3;

    close;

L_ChefQuestGiven:
    mesn;
    mesq l("It seems you still have some work to do.");

    close;

L_ChefQuestComplete:
    mesn;
    mesq l("Congratulations!");
    next;
    mesq l("You are now officially part of my crew! Thanks again for your help.");
    next;
    mesq l("Take your reward from the box next to my desk!");
    next;

    menu
        l("I will take it! Thank you captain!"), -;

    setq ShipQuests_Nard, 4;
    getexp 50, 0;

//  Need to add a skill for the crew at this line.

    mes "";
    mesn "Narrator";
    mes col(l("This is it, the end of the Second Beta Release of Evol Online!"), 9);
    next;
    mes col(lg("We hope you liked this introduction and to see you again in our future releases!"), 9);
    next;
    mes col(l("The adventure begins!"), 9);

    close;

L_Reward:
    mesn;
    mesq l("Hey! There's a reward for you in the box next to me!");

    close;

L_Already:
    mesn;
    mesq l("Sorry, I don't need any help right now. Come back later.");

    close;

OnInit:
    setnpcsex G_MALE;
    setnpcdistance 5;
    end;
}