summaryrefslogtreecommitdiff
path: root/npc/002-1/juliet.txt
blob: 0c9e25c7a7746762a3852d47133aed3d571a6136 (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
// TMW2 scripts.
// Authors:
//    4144
//    Qwerty Dragon
//    Vasily_Makarov
//    Jesusalva
// Description:
//    Allows to change language and talks about what happened to him.
//    Modified by Jesusalva for TMW2. She is the nurse and also does other minor tasks.
// Variables:
//    0 ShipQuests_Julia
// Values:
//    Julia:
//    0   Default, haven't started the game yet.
//    1   Need to see Julia.
//    2   Has been registered by Julia.
//    3   Has talked with Nard

002-1,67,26,0	script	Juliet	NPC_JULIA,2,10,{

    function ynMenu {
        if (select(l("Yes, I do."), l("No, none.")) == 1) {
            return;
        }
        closedialog;
    }

    function sellFood {
        closeclientdialog;
        openshop;
        close;
        return;
    }



    function basicSkill {
        mes "";
        mesn;
        mesq l("Let me check into it...");
        next;
        adddefaultskills;
        mesq l("Here you go, everything is fixed.");
        emotion E_HAPPY;
        next;
        mesq l("Do you have any other questions for me?");
        next;
        ynMenu;
        return;
    }

    function chooseLang {
        mes "";
        mesn;
        mesq l("Of course! But beware that [@@https://www.transifex.com/akaras/saulc-tmw-fork|Translators@@] are always in demand!");
        next;
        mesq l("Tell me which language you speak and I will change the note on the ship passenger list.");
        next;

        asklanguage(LANG_IN_SHIP);

        mes "";
        mesn;
        mesq l("Ok, done.");

        if (getq(ShipQuests_Julia) == 2) {
            next;
            mesq l("Do you have any other questions for me?");
            next;
            ynMenu;
            return;
        }

        next;
        mesq l("I'm sure that you've got some questions for me, feel free to ask them, but first I need to tell you the rules of proper social conduct on board.");

        mesq l("Here they are.");
        next;

        narrator S_LAST_NEXT,
            l("There is a paper with some rules written on it.");

        GameRules 8 | 4;

        mesn;
        mesq l("Oh, and I almost forgot! Do not give the password of your room to anybody! I am the only one who has the other key and I won't ask for yours so keep it secret and try not to use the same password for any other room in the future.");
        next;
        mesq l("If you want to read this page again, there is a copy up on the left wall.");
        next;
        mesq l("You can also read The Book of Laws at any time to see the rules.");
        next;
        mesq l("I think I'm done with that now. Do you have any questions?");
        next;

        setq ShipQuests_Julia, 2;
        return;
    }

    function whereAmI {
        mes "";
        mesn;
        mesq l("You're on a ship, we're on our way to the oldest human city, Tulishmar.");
        next;
        mesq l("We should be there in a few days. For now, you can relax on the ship, or visit the island we're docked at! Its a small island, but a good place to get some exercise and stretch your legs.");
        next;
        mesq l("Do you have any other questions for me?");
        next;
        ynMenu;
        return;
    }

    function whatHappened {
        mes "";
        mesn;
        mesq l("We thought that you could help us understand this, all we know is that we found you cast in the sea, adrift on your raft.");
        next;
        mesq lg("You were in bad shape, you should be happy we found you before the sea killed you.");
        next;

        //select
        //    l("Sorry, but I can't tell you anything about that."),
        //    l("Nothing, sorry.");

        mes "";
        mesn;
        mesq l("Did you have any other questions for me?");
        next;
        ynMenu;
        return;
    }

    function readRules {
        mes "";
        mesn;
        mesq l("Of course, they are on the left wall, go have a look at them.");
        next;
        mesq l("Do you have any other questions for me?");
        next;
        ynMenu;
        return;
    }

    function mainMenu {
        do
        {
            .@q4 = getq(General_Narrator);

            select
                l("I am hungry. Can I buy some food here?"),
                rif(getskilllv(NV_BASIC) < 6, l("Something is wrong with me, I can't smile nor sit.")),
                lg("I made a mistake, I would like to change my language."),
                rif(!.@q4, l("Could you explain to me where I am?")),
                rif(!.@q4, l("What happened to me?")),
                l("Can I read these rules again?"),
                l("Nothing, sorry.");

            switch (@menu) {
                case 1: sellFood; break;
                case 2: basicSkill; break;
                case 3: chooseLang .@s$; break;
                case 4: whereAmI; break;
                case 5: whatHappened; break;
                case 6: readRules; break;
                case 7: closedialog; end;
            }
        } while (1);
    }

    mesn;
    mesq lg("Hello dear!");
    next;
    mesq l("What do you want today?");
    next;

    mainMenu;

OnTouch:
    .@q = getq(ShipQuests_Julia);
    if (.@q > 1) end;

    checkclientversion;

    mesn;
    mesq l("Hi, nice to see you!");
    next;
    mesq l("My name is Juliet, it is me who took care of you after we found you in the sea. I'm glad to see you're okay.");
    next;
    if (getq(ShipQuests_Julia) < 2) {
        mesq l("I'm sure that you've got some questions for me, feel free to ask them, but first I need to tell you the rules all adventurers must respect on this world.");
        next;

        GameRules 8 | 4;

        mesn;
        mesq l("Oh, and I almost forgot! Do not share passwords or pincodes, not even with staff! And do not use the same password somewhere else, they can be stolen!");
        next;
        mesn;
        mesq l("If you want to read this page again, there is a copy up on the wall.");
        next;
        mesn;
        mesq l("Also, take this book so you don't forget the rules. You can always read it, or type ##B@rules##b on the chat.");
        // No inventoryplace here.
        getitem BookOfLaws, 1;
        setq ShipQuests_Julia, 2;
        next;
        mesq l("I think I'm done with that now. Do you have any questions?");
        next;
    }
    mainMenu;
    end;

OnInit:
    .sex = G_FEMALE;
    .distance = 10;
	sellitem Cheese;
	sellitem Aquada;
	sellitem Piberries;

}