aboutsummaryrefslogtreecommitdiff
path: root/engines/glk/jacl/language.h
blob: 6fef37229b8a296c1699199f3a5745b012916ce5 (plain)
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
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
/* ScummVM - Graphic Adventure Engine
 *
 * ScummVM is the legal property of its developers, whose names
 * are too numerous to list here. Please refer to the COPYRIGHT
 * file distributed with this source distribution.
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 *
 */
namespace Glk {
namespace JACL {

/* THIS FILE CONTAINS ALL THE TEXT OUTPUT INTERNALLY BY THE INTERPRETER.
   THE STRINGS FOR ANY GIVEN LANGUAGE ARE DIVIDED INTO TWO SECTIONS, ONE
   THAT CONTAINS THE TEXT OUTPUT DURING REGULAR PLAY AND ONE THAT CONTAINS
   THE TEXT OUTPUT DURING ERROR CONDITIONS (POSSIBLY BEFORE ANY GIVEN GAME
   HAS FINISHED LOADING.

   TO TRANSLATE A GAME TO LANGUAGE THAT IS NOT CURRENTLY SUPPORTED YOU
   NEED TO TRANSLATE english.library AND verbs.library INTO YOUR CHOSEN
   LANGUAGE.

   THE NATIVE_LANGUAGE CONSTANT BELOW INDICATES WHAT SHOULD BE THE DEFAULT
   LANGUAGE OF THE INTERPRETER WHEN IT IS COMPILED. THE 'GAME MESSAGES'
   BLOCK CONTAINS THE SAME STRINGS AS THE FILE english.library (AND OTHER
   LANGUAGES) AND THESE ARE THE VALUES USED BY THE INTERPRETER IF THOSE
   CONSTANTS ARE NO DEFINED BY ANY GIVEN GAME.

   THE 'SYSTEM MESSAGES' BLOCK CONTAINS ERROR MESSAGES AND OTHER SYSTEM-
   LEVEL MESSAGES THAT ARE MOST COMMONLY SEEN DURING THE DEVELOPMENT OF A
   GAME. THESE MESSAGES CANNOT BE OVERRIDDEN BY ANY SPECIFIC GAME. */


#define ENGLISH     1
#define GERMAN      2
#define FRENCH      3

#define NATIVE_LANGUAGE ENGLISH

#if NATIVE_LANGUAGE==ENGLISH
/* GAME MESSAGES */
#define COMMENT_IGNORED "No transcript running, comment ignored.^"
#define COMMENT_RECORDED "Comment recorded.^"
#define YES_WORD "yes"
#define NO_WORD "no"
#define YES_OR_NO "^Please enter ~yes~ or ~no~: "
#define INVALID_SELECTION "Invalid selection.^"
#define RESTARTING "^Restarting...^"
#define RETURN_GAME "^Returning to game.^"
#define SCRIPTING_ON "Scripting on.^"
#define SCRIPTING_OFF "Scripting off.^"
#define SCRIPTING_ALREADY_OFF "Scripting already off.^"
#define SCRIPTING_ALREADY_ON "Scripting already off.^"
#define CANT_WRITE_SCRIPT "Unable to write to script file.^"
#define ERROR_READING_WALKTHRU "Error reading walkthru file.^"
#define BAD_OOPS "You must follow the ~oops~ command with the word you wish to use instead.^"
#define CANT_CORRECT "I can't correct the last command using ~oops~, sorry.^"
#define SURE_QUIT "Are you sure you want to quit?^"
#define SURE_RESTART "Are you sure you want to restart?^"
#define NOT_CLEVER "It wasn't so clever as to be worth repeating.^"
#define NO_MOVES "But you haven't done anything yet!^"
#define TYPE_NUMBER "^Type a number between %d and %d: "
#define BY "By ~"
#define REFERRING_TO "~, are you referring to:^"
#define WALKTHRU_WORD "walkthru"
#define INFO_WORD "info"
#define RESTART_WORD "restart"
#define AGAIN_WORD "again"
#define SCRIPT_WORD "script"
#define UNSCRIPT_WORD "unscript"
#define QUIT_WORD "quit"
#define UNDO_WORD "undo"
#define OOPS_WORD "oops"
#define FROM_WORD "from"
#define EXCEPT_WORD "except"
#define FOR_WORD "for"
#define BUT_WORD "but"
#define AND_WORD "and"
#define THEN_WORD "then"
#define OF_WORD "of"
#define SHE_WORD "she"
#define HE_WORD "he"
#define THAT_WORD "that"
#define THEM_WORD "them"
#define THOSE_WORD "those"
#define THEY_WORD "they"
#define IT_WORD "it"
#define ITSELF_WORD "itself"
#define HIM_WORD "him"
#define HIMSELF_WORD "himself"
#define HER_WORD "her"
#define HERSELF_WORD "herself"
#define THEMSELVES_WORD "themselves"
#define YOU_WORD "you"
#define YOURSELF_WORD "yourself"
#define ONES_WORD "ones"
#define NO_MULTI_VERB "You can't refer to multiple objects directly after the word ~%s~.^"
#define NO_MULTI_START "You can't refer to multiple objects at the start of a command.^"
#define PERSON_CONCEALING "%s doesn't seem to be carrying any such thing.^"
#define PERSON_POSSESSIVE "%s isn't about to let you take anything of theirs.^"
#define CONTAINER_CLOSED "%s is closed.^"
#define CONTAINER_CLOSED_FEM "%s is closed.^"
#define FROM_NON_CONTAINER "The word ~%s~ must be followed by a container.^"
#define DOUBLE_EXCEPT "You can only use the word ~%s~ once per object reference.^"
#define NONE_HELD "You are not holding anything like that.^"
#define NO_OBJECTS "I don't see what you are referring to.^"
#define NO_FILENAME "Save and restore commands must be followed by a filename.^"
#define MOVE_UNDONE "Previous move undone.^^"
#define NO_UNDO "Nothing to undo.^"
#define CANT_SAVE "Unable to save game state to file.^"
#define CANT_RESTORE "Unable to restore game state from file.^"
#define GAME_SAVED "Game saved.^"
#define INCOMPLETE_SENTENCE "The sentence you typed was incomplete.^"
#define UNKNOWN_OBJECT "You can't see any such thing as ~"
#define UNKNOWN_OBJECT_END "~.^"
#define CANT_USE_WORD "You can't use the word ~"
#define IN_CONTEXT "~ in that context.^"
#define DONT_SEE "You don't see "
#define HERE_WORD " here.^"
#define BAD_SAVED_GAME "Attempt to restore incompatible saved-game file."
#define ARENT "aren't"
#define ISNT "isn't"
#define ARE "are"
#define IS "is"
#define DONT "don't"
#define DOESNT "doesn't"
#define DO "do"
#define DOES "does"
#define SCORE_UP "^[YOUR SCORE JUST WENT UP BY "
#define POINT " POINT]^"
#define POINTS " POINTS]^"
#define STARTING "Starting."
#define NO_IT "You must have referred to an appropriate noun previously to use the word ~"
#define NO_IT_END "~.^"
#define BACK_REFERENCE "You must have referred to a noun previously in the same sentence to use the word ~"
#define BACK_REFERENCE_END "~.^"
#define WHEN_YOU_SAY "When you say ~"
#define MUST_SPECIFY "~, you must specify whether you mean "
#define OR_WORD " or "

/* SYSTEM MESSAGES */
#define READ_ERROR "Error reading game file."
#define OLD_INTERPRETER "Interpreter version is older than game file (v%d), can't continue."
#define BAD_CURSOR "You can only use the ~cursor~ command in the status window.^"
#define INCOMPLETE_GRAMMAR "Incomplete grammar statement."
#define GAME_MODIFIED "Game file modified, reloading.\n"
#define NOT_INTEGER "In function \"%s\", \"%s\" command requires integer parameter."
#define NO_NAME_FUNCTION "In line %d, a function must have at least one name."
#define MAXIMUM_ATTRIBUTES_ERR "In line %d, unable to create attribute \"%s\", maximum number of attributes already defined."
#define BAD_PLAYER "In function \"%s\", attempt to use object pointer \"player\" while it does not point to an object (%d)."
#define BAD_PARENT "In function \"%s\", attempt to use the variable 'here' while the variable 'player' does not have a legal parent."
#define BAD_POINTER "In function \"%s\", attempt to use object pointer \"%s\" that does not point to an object (%d)."
#define ILLEGAL_LABEL "In line %d, reserved word \"%s\" used as label."
#define USED_LABEL_INT "In line %d, \"%s\" is already used as a variable label."
#define USED_LABEL_CINT "In line %d, \"%s\" is already used as an integer constant label."
#define USED_LABEL_STR "In line %d, \"%s\" is already used as a string label."
#define USED_LABEL_CSTR "In line %d, \"%s\" is already used as a string constant label."
#define USED_LABEL_ATT "In line %d, \"%s\" is already used as an attribute label."
#define USED_LABEL_OBJ "In line %d, \"%s\" is already used as an object or location label."
#define NO_OBJECT_ERR "In line %d, property \"%s\" defined before first object or location."
#define BAD_INCLUDE "'#include' directive must be followed by file name enclosed in double quotes."
#define BAD_PARAMETER "Unknown or inappropriate type of container '%s' associated with parameter '%s'."
#define BAD_VALUE "Value '%s' cannot be stored in container '%s'."
#define NO_MEDIA "WebJACL: Media file \"%s\" not found, external media support disabled.\n"
#define MEDIA_REGISTERED "WebJACL: Registered %d media.\n"
#define CLEANING_UP "WebJACL: Cleaning up...\n"
#define NO_GAME "No game file specified, can't continue."
#define NO_PORT "WebJACL: No port number specified (-p <number>), using default port %d.\n"
#define WEBJACL_CONFIGURED "WebJACL server configured on %s:%d\n"
#define NOT_FOUND "Unable to open game file, can't continue."
#define CANT_OPEN "Unable to open processed file \"%s\", can't continue."
#define CANT_RUN "A JACL game must contain at least one object (to represent the player), and at least one location (for the player to start in).^"
#define NO_PLAYER "The object pointer 'player' does not point to an object.^"
#define SELF_REFERENCE "In function \"%s\", reference to object \"%s\" whose parent is itself."
#define EXECUTING "Executing function \"%s\".\n"
#define NO_WHILE "In function \"%s\", 'endwhile' command without matching 'while' command."
#define NO_ITERATE "In function \"%s\", 'enditerate' command without matching 'iterate' command."
#define NO_UPDATE "In function \"%s\", 'endupdate' command without matching 'update' command."
#define NO_REPEAT "In function \"%s\", 'until' command without matching 'repeat' command."
#define NO_LOOP "In function \"%s\", 'endloop' command without matching 'loop' command."
#define UNDEFINED_FUNCTION "In function \"%s\", attempt to execute undefined function \"%s\"."
#define DIVIDE_BY_ZERO "In function \"%s\", division by zero error."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define UNKNOWN_COMMAND "In function \"%s\", unknown command \"%s\"."
#define STACK_OVERFLOW "Stack overflow."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define OUT_OF_RANGE "In function \"%s\", element \"%s\" out of range (%d)."
#define GLOBAL_SELF "Reference to 'self' from global function \"%s\"."
#define NON_GLOBAL_FIRST "In line %d, non-global function before object or location."
#define MAXIMUM_EXCEEDED "Maximum number of objects exceeded, can't continue."
#define ERROR_DETECTED "1 error detected."
#define ERRORS_DETECTED "%d errors detected."
#define UNKOWN_OBJECT_RUN "In function \"%s\",  reference to unknown object \"%s\"."
#define UNKNOWN_FUNCTION_RUN "Attempt to execute unknown function \"%s\"."
#define UNKNOWN_KEYWORD_ERR "In line %d, unknown keyword \"%s\"."
#define UNKNOWN_ATTRIBUTE_ERR "In line %d, unknown attribute \"%s\"."
#define UNKNOWN_VALUE_ERR "In line %d, unable to resolve value \"%s\"."
#define UNKNOWN_ATTRIBUTE_RUN "In function \"%s\",  reference to unknown attribute \"%s\"."
#define INSUFFICIENT_PARAMETERS_RUN "In function \"%s\", \"%s\" command with insufficient parameters."
#define INSUFFICIENT_PARAMETERS_ERR "In line %d, \"%s\" keyword with insufficient parameters."
#define UNDEFINED_ITEM_ERR "In line %d, reference to undefined item \"%s\"."
#define UNDEFINED_ITEM_RUN "In function \"%s\", reference to undefined object \"%s\"."
#define UNDEFINED_DIRECTION_RUN "In function \"%s\", reference to undefined direction \"%s\"."
#define UNKNOWN_SCOPE_RUN "In function \"%s\", reference to unknown scope \"%s\"."
#define UNDEFINED_STRING_RUN "In function \"%s\", reference to undefined string \"%s\"."
#define UNDEFINED_CONTAINER_RUN "In function \"%s\", reference to undefined container \"%s\"."
#define OUT_OF_MEMORY "Out of memory, can't continue."
#define CANT_OPEN_PROCESSED "Unable to open output file \"%s\" for writing, can't continue."
#define CANT_OPEN_OR "Unable to open source file \"%s\" or \"%s\", can't continue."
#define CANT_OPEN_SOURCE "Unable to open source file \"%s\", can't continue."
#endif

#if NATIVE_LANGUAGE==FRENCH
/* GAME MESSAGES */
#define COMMENT_IGNORED "Pas de transcription en cours, commentaire ignor�.^"
#define COMMENT_RECORDED "Commentaire enregistr�.^"
#define YES_WORD "oui"
#define NO_WORD "no"
#define YES_OR_NO "^Merci d'entrer ~oui~ ou ~non~: "
#define INVALID_SELECTION "S�lection invalide.^"
#define RESTARTING "^En train de recommencer...^"
#define RETURN_GAME "^Retour au jeu.^"
#define SCRIPTING_ON "D�but de transcription.^"
#define SCRIPTING_OFF "Fin de transcription.^"
#define SCRIPTING_ALREADY_OFF "Transcription d�j� termin�e.^"
#define SCRIPTING_ALREADY_ON "Transcription d�j� en cours.^"
#define CANT_WRITE_SCRIPT "Impossible d'�crire le fichier de transcription.^"
#define ERROR_READING_WALKTHRU "Erreur lors de la lecture du fichier de solution.^"
#define BAD_OOPS "Vous devez faire suivre la commande ~oops~ par le mot que vous souhaitez remplacer.^"
#define CANT_CORRECT "D�sol�, je ne peux corriger la derni�re commande en utilisant ~oops~.^"
#define SURE_QUIT "�tes-vous certain de vouloir quitter ?^"
#define SURE_RESTART "�tes-vous certain de vouloir recommencer ?^"
#define NOT_CLEVER "Ce n'�tait pas si intelligent au point de vouloir r�p�ter cela.^"
#define NO_MOVES "Mais vous n'avez rien fait pour le moment !^"
#define TYPE_NUMBER "^Entrez un nombre entre %d et %d: "
#define BY "By ~"
#define REFERRING_TO "Faites-vous r�f�rence � :^"
#define WALKTHRU_WORD "solution"
#define INFO_WORD "info"
#define RESTART_WORD "recommencer"
#define AGAIN_WORD "encore"
#define SCRIPT_WORD "script"
#define UNSCRIPT_WORD "unscript"
#define QUIT_WORD "quitter"
#define UNDO_WORD "annuler"
#define OOPS_WORD "oops"
#define FROM_WORD "depuis"
#define EXCEPT_WORD "except�"
#define FOR_WORD "pour"
#define BUT_WORD "mais"
#define AND_WORD "et"
#define THEN_WORD "puis"
#define OF_WORD "de"
#define SHE_WORD "elle"
#define HE_WORD "il"
#define THAT_WORD "ce"
#define THEM_WORD "ces"
#define THOSE_WORD "ceux"
#define THEY_WORD "ils"
#define IT_WORD "il"
#define ITSELF_WORD "lui-m�me"
#define HIM_WORD "him"
#define HIMSELF_WORD "lui-m�me"
#define HER_WORD "her"
#define HERSELF_WORD "elle-m�me"
#define THEMSELVES_WORD "eux-m�me"
#define YOU_WORD "you"
#define YOURSELF_WORD "yourself"
#define ONES_WORD "ceux"
#define NO_MULTI_VERB "Vous ne pouvez vous r�f�rer � de multiples objets apr�s le mot  \"%s\".^"
#define NO_MULTI_START "Vous ne pouvez vous r�f�rer � de multiples objets au d�but d'une commande.^"
#define PERSON_CONCEALING "%s ne semble par porter cela.^"
#define PERSON_POSSESSIVE "%s ne vous laissera pas lui prendre ses affaires.^"
#define CONTAINER_CLOSED "%s est ferm�.^"
#define CONTAINER_CLOSED_FEM "%s est ferm�.^"
#define FROM_NON_CONTAINER "Le mot \"%s\" doit �tre suivi par un contenant.^"
#define DOUBLE_EXCEPT "Vous ne pouvez utiliser le mot \"%s\" qu'une fois par r�f�rence d'objet.^"
#define NONE_HELD "Vous ne portez rien de cela.^"
#define NO_OBJECTS "Je ne comprends pas ce � quoi vous vous r�ferez.^"
#define NO_FILENAME "Les commandes de sauvegarde et lecture doivent �tre suivies par un nom de fichier.^"
#define MOVE_UNDONE "Le tour pr�c�dent a �t� annul�.^^"
#define NO_UNDO "Il n'y a rien � annuler.^"
#define CANT_SAVE "Impossible de sauvegarder l'�tat du jeu sur fichier.^"
#define CANT_RESTORE "Impossible de r�cup�rer l'�tat du jeu depuis le fichier.^"
#define GAME_SAVED "Jeu sauvegard�.^"
#define INCOMPLETE_SENTENCE "La phrase que vous avez tap�e n'est pas compl�te.^"
#define UNKNOWN_OBJECT "Vous ne pouvez voir ~"
#define UNKNOWN_OBJECT_END "~.^"
#define CANT_USE_WORD "Vous ne pouvez utiliser le mot ~"
#define IN_CONTEXT "~ dans ce contexte.^"
#define DONT_SEE "Vous ne voyez pas "
#define HERE_WORD " ici.^"
#define BAD_SAVED_GAME "Ficher de sauvegarde incompatible."
#define ARENT "ne sont pas"
#define ISNT "n'est pas"
#define ARE "sont"
#define IS "est"
#define DONT "ne font pas"
#define DOESNT "ne fait pas"
#define DO "font"
#define DOES "fait"
#define SCORE_UP "^[VOTRE SCORE VIENT D'AUGMENTER DE "
#define POINT " POINT]^"
#define POINTS " POINTS]^"
#define STARTING "D�marrage."
#define NO_IT "Vous devez pr�alablement avoir fait r�f�rence � un nom reconnu pour pouvoir utiliser le mot ~"
#define NO_IT_END "~.^"
#define BACK_REFERENCE "Vous devez pr�alablement avoir fait r�f�rence � un nom reconnu dans la m�me phrase pour pouvoir utiliser le mot ~"
#define BACK_REFERENCE_END "~.^"
#define WHEN_YOU_SAY "When you say ~"
#define MUST_SPECIFY "~, vous devez sp�cifier si vous voulez dire "
#define OR_WORD " ou "

/* SYSTEM MESSAGES */
#define READ_ERROR "Erreur de lecture du fichier de jeu."
#define OLD_INTERPRETER "La version de l'interpr�teur est plus ancienne que le fichier de jeu (v%d), impossible de continuer."
#define BAD_CURSOR "You can only use the ~cursor~ command in the status window.^"
#define INCOMPLETE_GRAMMAR "Incomplete grammar statement."
#define GAME_MODIFIED "Game file modified, reloading.\n"
#define NOT_INTEGER "In function \"%s\", \"%s\" command requires integer parameter."
#define NO_NAME_FUNCTION "In line %d, a function must have at least one name."
#define MAXIMUM_ATTRIBUTES_ERR "In line %d, unable to create attribute \"%s\", maximum number of attributes already defined."
#define BAD_PLAYER "In function \"%s\", attempt to use object pointer \"player\" while it does not point to an object (%d)."
#define BAD_PARENT "In function \"%s\", attempt to use the variable 'here' while the variable 'player' does not have a legal parent."
#define BAD_POINTER "In function \"%s\", attempt to use object pointer \"%s\" that does not point to an object (%d)."
#define ILLEGAL_LABEL "In line %d, reserved word \"%s\" used as label."
#define USED_LABEL_INT "In line %d, \"%s\" is already used as a variable label."
#define USED_LABEL_CINT "In line %d, \"%s\" is already used as an integer constant label."
#define USED_LABEL_STR "In line %d, \"%s\" is already used as a string label."
#define USED_LABEL_CSTR "In line %d, \"%s\" is already used as a string constant label."
#define USED_LABEL_ATT "In line %d, \"%s\" is already used as an attribute label."
#define USED_LABEL_OBJ "In line %d, \"%s\" is already used as an object or location label."
#define NO_OBJECT_ERR "In line %d, property \"%s\" defined before first object or location."
#define BAD_INCLUDE "'#include' directive must be followed by file name enclosed in double quotes."
#define BAD_PARAMETER "Unknown or inappropriate type of container '%s' associated with parameter '%s'."
#define BAD_VALUE "Value '%s' cannot be stored in container '%s'."
#define NO_MEDIA "WebJACL: Media file \"%s\" not found, external media support disabled.\n"
#define MEDIA_REGISTERED "WebJACL: Registered %d media.\n"
#define CLEANING_UP "WebJACL: Cleaning up...\n"
#define NO_GAME "No game file specified, can't continue."
#define NO_PORT "WebJACL: No port number specified (-p <number>), using default port %d.\n"
#define WEBJACL_CONFIGURED "WebJACL server configured on %s:%d\n"
#define NOT_FOUND "Unable to open game file, can't continue."
#define CANT_OPEN "Unable to open processed file \"%s\", can't continue."
#define CANT_RUN "A JACL game must contain at least one object (to represent the player), and at least one location (for the player to start in).^"
#define NO_PLAYER "The object pointer 'player' does not point to an object.^"
#define SELF_REFERENCE "In function \"%s\", reference to object \"%s\" whose parent is itself."
#define EXECUTING "Executing function \"%s\".\n"
#define NO_WHILE "In function \"%s\", 'endwhile' command without matching 'while' command."
#define NO_ITERATE "In function \"%s\", 'enditerate' command without matching 'iterate' command."
#define NO_UPDATE "In function \"%s\", 'endupdate' command without matching 'update' command."
#define NO_REPEAT "In function \"%s\", 'until' command without matching 'repeat' command."
#define NO_LOOP "In function \"%s\", 'endloop' command without matching 'loop' command."
#define UNDEFINED_FUNCTION "In function \"%s\", attempt to execute undefined function \"%s\"."
#define DIVIDE_BY_ZERO "In function \"%s\", division by zero error."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define UNKNOWN_COMMAND "In function \"%s\", unknown command \"%s\"."
#define STACK_OVERFLOW "Stack overflow."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define OUT_OF_RANGE "In function \"%s\", element \"%s\" out of range (%d)."
#define GLOBAL_SELF "Reference to 'self' from global function \"%s\"."
#define NON_GLOBAL_FIRST "In line %d, non-global function before object or location."
#define MAXIMUM_EXCEEDED "Maximum number of objects exceeded, can't continue."
#define ERROR_DETECTED "1 error detected."
#define ERRORS_DETECTED "%d errors detected."
#define UNKOWN_OBJECT_RUN "In function \"%s\",  reference to unknown object \"%s\"."
#define UNKNOWN_FUNCTION_RUN "Attempt to execute unknown function \"%s\"."
#define UNKNOWN_KEYWORD_ERR "In line %d, unknown keyword \"%s\"."
#define UNKNOWN_ATTRIBUTE_ERR "In line %d, unknown attribute \"%s\"."
#define UNKNOWN_VALUE_ERR "In line %d, unable to resolve value \"%s\"."
#define UNKNOWN_ATTRIBUTE_RUN "In function \"%s\",  reference to unknown attribute \"%s\"."
#define INSUFFICIENT_PARAMETERS_RUN "In function \"%s\", \"%s\" command with insufficient parameters."
#define INSUFFICIENT_PARAMETERS_ERR "In line %d, \"%s\" keyword with insufficient parameters."
#define UNDEFINED_ITEM_ERR "In line %d, reference to undefined item \"%s\"."
#define UNDEFINED_ITEM_RUN "In function \"%s\", reference to undefined object \"%s\"."
#define UNDEFINED_DIRECTION_RUN "In function \"%s\", reference to undefined direction \"%s\"."
#define UNKNOWN_SCOPE_RUN "In function \"%s\", reference to unknown scope \"%s\"."
#define UNDEFINED_STRING_RUN "In function \"%s\", reference to undefined string \"%s\"."
#define UNDEFINED_CONTAINER_RUN "In function \"%s\", reference to undefined container \"%s\"."
#define OUT_OF_MEMORY "Out of memory, can't continue."
#define CANT_OPEN_PROCESSED "Unable to open output file \"%s\" for writing, can't continue."
#define CANT_OPEN_OR "Unable to open source file \"%s\" or \"%s\", can't continue."
#define CANT_OPEN_SOURCE "Unable to open source file \"%s\", can't continue."
#endif

#if NATIVE_LANGUAGE==GERMAN
/* GAME MESSAGES */
#define COMMENT_IGNORED "No transcript running, comment ignored.^"
#define COMMENT_RECORDED "Comment recorded.^"
#define YES_WORD "yes"
#define NO_WORD "no"
#define YES_OR_NO "^Please enter ~yes~ or ~no~: "
#define YES_WORD "yes"
#define NO_WORD "no"
#define INVALID_SELECTION "Invalid selection.^"
#define RESTARTING "^Restarting...^"
#define RETURN_GAME "^Returning to game.^"
#define SCRIPTING_ON "Scripting on.^"
#define SCRIPTING_OFF "Scripting off.^"
#define SCRIPTING_ALREADY_OFF "Scripting already off.^"
#define SCRIPTING_ALREADY_ON "Scripting already off.^"
#define CANT_WRITE_SCRIPT "Unable to write to script file.^"
#define ERROR_READING_WALKTHRU "Error reading walkthru file.^"
#define BAD_OOPS "You must follow the ~oops~ command with the word you wish to use instead.^"
#define CANT_CORRECT "I can't correct the last command using ~oops~, sorry.^"
#define SURE_QUIT "Are you sure you want to quit?^"
#define SURE_RESTART "Are you sure you want to restart?^"
#define NOT_CLEVER "It wasn't so clever as to be worth repeating.^"
#define NO_MOVES "But you haven't done anything yet!^"
#define TYPE_NUMBER "^Type a number between %d and %d: "
#define BY "By ~"
#define REFERRING_TO "~, are you referring to:^"
#define WALKTHRU_WORD "walkthru"
#define INFO_WORD "info"
#define RESTART_WORD "restart"
#define AGAIN_WORD "again"
#define SCRIPT_WORD "script"
#define UNSCRIPT_WORD "unscript"
#define QUIT_WORD "quit"
#define UNDO_WORD "undo"
#define OOPS_WORD "oops"
#define FROM_WORD "from"
#define EXCEPT_WORD "except"
#define FOR_WORD "for"
#define BUT_WORD "but"
#define AND_WORD "and"
#define THEN_WORD "then"
#define OF_WORD "of"
#define SHE_WORD "she"
#define HE_WORD "he"
#define THAT_WORD "that"
#define THEM_WORD "them"
#define THOSE_WORD "those"
#define THEY_WORD "they"
#define IT_WORD "it"
#define ITSELF_WORD "itself"
#define HIM_WORD "him"
#define HIMSELF_WORD "himself"
#define HER_WORD "her"
#define HERSELF_WORD "herself"
#define THEMSELVES_WORD "themselves"
#define YOU_WORD "you"
#define YOURSELF_WORD "yourself"
#define ONES_WORD "ones"
#define NO_MULTI_VERB "You can't refer to multiple objects directly after the word ~%s~.^"
#define NO_MULTI_START "You can't refer to multiple objects at the start of a command.^"
#define PERSON_CONCEALING "%s doesn't seem to be carrying any such thing.^"
#define PERSON_POSSESSIVE "%s isn't about to let you take anything of theirs.^"
#define CONTAINER_CLOSED "%s is closed.^"
#define CONTAINER_CLOSED_FEM "%s is closed.^"
#define FROM_NON_CONTAINER "The word ~%s~ must be followed by a container.^"
#define DOUBLE_EXCEPT "You can only use the word ~%s~ once per object reference.^"
#define NONE_HELD "You are not holding anything like that.^"
#define NO_OBJECTS "I don't see what you are referring to.^"
#define NO_FILENAME "Save and restore commands must be followed by a filename.^"
#define MOVE_UNDONE "Previous move undone.^^"
#define NO_UNDO "Nothing to undo.^"
#define CANT_SAVE "Unable to save game state to file.^"
#define CANT_RESTORE "Unable to restore game state from file.^"
#define GAME_SAVED "Game saved.^"
#define INCOMPLETE_SENTENCE "The sentence you typed was incomplete.^"
#define UNKNOWN_OBJECT "You can't see any such thing as ~"
#define UNKNOWN_OBJECT_END "~.^"
#define CANT_USE_WORD "You can't use the word ~"
#define IN_CONTEXT "~ in that context.^"
#define DONT_SEE "You don't see "
#define HERE_WORD " here.^"
#define BAD_SAVED_GAME "Attempt to restore incompatible saved-game file."
#define ARENT "aren't"
#define ISNT "isn't"
#define ARE "are"
#define IS "is"
#define DONT "don't"
#define DOESNT "doesn't"
#define DO "do"
#define DOES "does"
#define SCORE_UP "^[YOUR SCORE JUST WENT UP BY "
#define POINT " POINT]^"
#define POINTS " POINTS]^"
#define STARTING "Starting."
#define NO_IT "You must have referred to an appropriate noun previously to use the word ~"
#define NO_IT_END "~.^"
#define BACK_REFERENCE "You must have referred to a noun previously in the same sentence to use the word ~"
#define BACK_REFERENCE_END "~.^"
#define WHEN_YOU_SAY "When you say ~"
#define MUST_SPECIFY "~, you must specify whether you mean "
#define OR_WORD " or "

/* SYSTEM MESSAGES */
#define READ_ERROR "Error reading game file."
#define OLD_INTERPRETER "Interpreter version is older than game file (v%d), can't continue."
#define BAD_CURSOR "You can only use the ~cursor~ command in the status window.^"
#define INCOMPLETE_GRAMMAR "Incomplete grammar statement."
#define GAME_MODIFIED "Game file modified, reloading.\n"
#define NOT_INTEGER "In function \"%s\", \"%s\" command requires integer parameter."
#define NO_NAME_FUNCTION "In line %d, a function must have at least one name."
#define MAXIMUM_ATTRIBUTES_ERR "In line %d, unable to create attribute \"%s\", maximum number of attributes already defined."
#define BAD_PLAYER "In function \"%s\", attempt to use object pointer \"player\" while it does not point to an object (%d)."
#define BAD_PARENT "In function \"%s\", attempt to use the variable 'here' while the variable 'player' does not have a legal parent."
#define BAD_POINTER "In function \"%s\", attempt to use object pointer \"%s\" that does not point to an object (%d)."
#define ILLEGAL_LABEL "In line %d, reserved word \"%s\" used as label."
#define USED_LABEL_INT "In line %d, \"%s\" is already used as a variable label."
#define USED_LABEL_CINT "In line %d, \"%s\" is already used as an integer constant label."
#define USED_LABEL_STR "In line %d, \"%s\" is already used as a string label."
#define USED_LABEL_CSTR "In line %d, \"%s\" is already used as a string constant label."
#define USED_LABEL_ATT "In line %d, \"%s\" is already used as an attribute label."
#define USED_LABEL_OBJ "In line %d, \"%s\" is already used as an object or location label."
#define NO_OBJECT_ERR "In line %d, property \"%s\" defined before first object or location."
#define BAD_INCLUDE "'#include' directive must be followed by file name enclosed in double quotes."
#define BAD_PARAMETER "Unknown or inappropriate type of container '%s' associated with parameter '%s'."
#define BAD_VALUE "Value '%s' cannot be stored in container '%s'."
#define NO_MEDIA "WebJACL: Media file \"%s\" not found, external media support disabled.\n"
#define MEDIA_REGISTERED "WebJACL: Registered %d media.\n"
#define CLEANING_UP "WebJACL: Cleaning up...\n"
#define NO_GAME "No game file specified, can't continue."
#define NO_PORT "WebJACL: No port number specified (-p <number>), using default port %d.\n"
#define WEBJACL_CONFIGURED "WebJACL server configured on %s:%d\n"
#define NOT_FOUND "Unable to open game file, can't continue."
#define CANT_OPEN "Unable to open processed file \"%s\", can't continue."
#define CANT_RUN "A JACL game must contain at least one object (to represent the player), and at least one location (for the player to start in).^"
#define NO_PLAYER "The object pointer 'player' does not point to an object.^"
#define SELF_REFERENCE "In function \"%s\", reference to object \"%s\" whose parent is itself."
#define EXECUTING "Executing function \"%s\".\n"
#define NO_WHILE "In function \"%s\", 'endwhile' command without matching 'while' command."
#define NO_ITERATE "In function \"%s\", 'enditerate' command without matching 'iterate' command."
#define NO_UPDATE "In function \"%s\", 'endupdate' command without matching 'update' command."
#define NO_REPEAT "In function \"%s\", 'until' command without matching 'repeat' command."
#define NO_LOOP "In function \"%s\", 'endloop' command without matching 'loop' command."
#define UNDEFINED_FUNCTION "In function \"%s\", attempt to execute undefined function \"%s\"."
#define DIVIDE_BY_ZERO "In function \"%s\", division by zero error."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define UNKNOWN_COMMAND "In function \"%s\", unknown command \"%s\"."
#define STACK_OVERFLOW "Stack overflow."
#define ILLEGAL_OPERATOR "In function \"%s\", illegal operator \"%s\"."
#define OUT_OF_RANGE "In function \"%s\", element \"%s\" out of range (%d)."
#define GLOBAL_SELF "Reference to 'self' from global function \"%s\"."
#define NON_GLOBAL_FIRST "In line %d, non-global function before object or location."
#define MAXIMUM_EXCEEDED "Maximum number of objects exceeded, can't continue."
#define ERROR_DETECTED "1 error detected."
#define ERRORS_DETECTED "%d errors detected."
#define UNKOWN_OBJECT_RUN "In function \"%s\",  reference to unknown object \"%s\"."
#define UNKNOWN_FUNCTION_RUN "Attempt to execute unknown function \"%s\"."
#define UNKNOWN_KEYWORD_ERR "In line %d, unknown keyword \"%s\"."
#define UNKNOWN_ATTRIBUTE_ERR "In line %d, unknown attribute \"%s\"."
#define UNKNOWN_VALUE_ERR "In line %d, unable to resolve value \"%s\"."
#define UNKNOWN_ATTRIBUTE_RUN "In function \"%s\",  reference to unknown attribute \"%s\"."
#define INSUFFICIENT_PARAMETERS_RUN "In function \"%s\", \"%s\" command with insufficient parameters."
#define INSUFFICIENT_PARAMETERS_ERR "In line %d, \"%s\" keyword with insufficient parameters."
#define UNDEFINED_ITEM_ERR "In line %d, reference to undefined item \"%s\"."
#define UNDEFINED_ITEM_RUN "In function \"%s\", reference to undefined object \"%s\"."
#define UNDEFINED_DIRECTION_RUN "In function \"%s\", reference to undefined direction \"%s\"."
#define UNKNOWN_SCOPE_RUN "In function \"%s\", reference to unknown scope \"%s\"."
#define UNDEFINED_STRING_RUN "In function \"%s\", reference to undefined string \"%s\"."
#define UNDEFINED_CONTAINER_RUN "In function \"%s\", reference to undefined container \"%s\"."
#define OUT_OF_MEMORY "Out of memory, can't continue."
#define CANT_OPEN_PROCESSED "Unable to open output file \"%s\" for writing, can't continue."
#define CANT_OPEN_OR "Unable to open source file \"%s\" or \"%s\", can't continue."
#define CANT_OPEN_SOURCE "Unable to open source file \"%s\", can't continue."
#endif

} // End of namespace JACL
} // End of namespace Glk