DEADSOFTWARE

added 2nd set of control keys (sore i kent inta bindengz iet)
[d2df-sdl.git] / src / game / g_language.pas
1 (* Copyright (C) DooM 2D:Forever Developers
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 3 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *)
16 {$MODE DELPHI}
17 unit g_language;
19 interface
21 uses
22 MAPDEF;
24 type
25 TStrings_Locale = (
26 I_CONSOLE_EXEC,
27 I_CONSOLE_DUMPED,
28 I_CONSOLE_ERROR_CALL,
29 I_CONSOLE_ERROR_READ,
30 I_CONSOLE_ERROR_WRITE,
31 I_CONSOLE_SCREENSHOT,
32 I_CONSOLE_UNKNOWN,
33 I_CONSOLE_WELCOME,
35 I_GAME_ERROR_GET_SPAWN,
36 I_GAME_ERROR_CTF,
37 I_GAME_ERROR_MAP_WAD,
38 I_GAME_ERROR_MAP_RES,
39 I_GAME_ERROR_MAP_LOAD,
40 I_GAME_ERROR_MAP_SELECT,
41 I_GAME_ERROR_PLAYER_CREATE,
42 I_GAME_ERROR_TEXTURE_ANIM,
43 I_GAME_ERROR_TEXTURE_SIMPLE,
44 I_GAME_ERROR_MODEL_FALLBACK,
45 I_GAME_ERROR_MODEL,
46 I_GAME_ERROR_SKY,
47 I_GAME_ERROR_MUSIC,
48 I_GAME_ERROR_SAVE,
49 I_GAME_ERROR_LOAD,
50 I_GAME_ERROR_SOUND,
51 I_GAME_ERROR_FRAMES,
52 I_GAME_ERROR_TR_SOUND,
53 I_GAME_ERROR_SWITCH_TEXTURE,
55 I_GAME_PLAYER_NAME,
56 I_GAME_GAME_TIME,
57 I_GAME_PING,
58 I_GAME_PING_MS,
59 I_GAME_PING_HUD,
60 I_GAME_FRAGS,
61 I_GAME_DEATHS,
62 I_GAME_DM,
63 I_GAME_CTF,
64 I_GAME_TDM,
65 I_GAME_COOP,
66 I_GAME_LMS,
67 I_GAME_TLMS,
68 I_GAME_SURV,
69 I_GAME_FRAG_LIMIT,
70 I_GAME_SCORE_LIMIT,
71 I_GAME_TIME_LIMIT,
72 I_GAME_TEAM_SCORE_RED,
73 I_GAME_TEAM_SCORE_BLUE,
74 I_GAME_TEAM_RED,
75 I_GAME_TEAM_BLUE,
76 I_GAME_WIN_RED,
77 I_GAME_WIN_BLUE,
78 I_GAME_WIN_DRAW,
79 I_GAME_MONSTERS,
80 I_GAME_SECRETS,
81 I_GAME_MONSTERS_TOTAL,
82 I_GAME_SECRETS_TOTAL,
84 I_GAME_CHEAT_GODMODE,
85 I_GAME_CHEAT_WEAPONS,
86 I_GAME_CHEAT_HEALTH,
87 I_GAME_CHEAT_DEATH,
88 I_GAME_CHEAT_DOORS,
89 I_GAME_CHEAT_NEXTMAP,
90 I_GAME_CHEAT_CHANGEMAP,
91 I_GAME_CHEAT_FLY,
92 I_GAME_CHEAT_JUMPS,
93 I_GAME_CHEAT_SPEED,
94 I_GAME_CHEAT_SUIT,
95 I_GAME_CHEAT_AIR,
96 I_GAME_CHEAT_BERSERK,
97 I_GAME_CHEAT_JETPACK,
98 I_GAME_CHEAT_NOCLIP,
99 I_GAME_CHEAT_NOTARGET,
100 I_GAME_CHEAT_NORELOAD,
101 I_GAME_CHEAT_AIMLINE,
102 I_GAME_CHEAT_AUTOMAP,
104 I_MENU_START_GAME,
105 I_MENU_MAIN_MENU,
106 I_MENU_NEW_GAME,
107 I_MENU_MULTIPLAYER,
108 I_MENU_OPTIONS,
109 I_MENU_AUTHORS,
110 I_MENU_EXIT,
111 I_MENU_1_PLAYER,
112 I_MENU_2_PLAYERS,
113 I_MENU_CUSTOM_GAME,
114 I_MENU_CAMPAIGN,
115 I_MENU_START_SERVER,
116 I_MENU_START_CLIENT,
117 I_MENU_CLIENT_CONNECT,
118 I_MENU_SELECT_MAP,
119 I_MENU_VIDEO_OPTIONS,
120 I_MENU_SOUND_OPTIONS,
121 I_MENU_SAVED_OPTIONS,
122 I_MENU_DEFAULT_OPTIONS,
123 I_MENU_GAME_OPTIONS,
124 I_MENU_CONTROLS_OPTIONS,
125 I_MENU_PLAYER_OPTIONS,
126 I_MENU_LANGUAGE_OPTIONS,
127 I_MENU_CHANGE_PLAYERS,
128 I_MENU_LOAD_GAME,
129 I_MENU_SAVE_GAME,
130 I_MENU_END_GAME,
131 I_MENU_RESTART,
132 I_MENU_SET_GAME,
134 I_MENU_JOIN_RED,
135 I_MENU_JOIN_BLUE,
136 I_MENU_JOIN_GAME,
137 I_MENU_ADD_PLAYER_2,
138 I_MENU_REM_PLAYER_2,
139 I_MENU_SPECTATE,
141 I_MENU_STATISTICS,
142 I_MENU_MAP,
143 I_MENU_GAME_TYPE,
144 I_MENU_GAME_TYPE_DM,
145 I_MENU_GAME_TYPE_CTF,
146 I_MENU_GAME_TYPE_TDM,
147 I_MENU_GAME_TYPE_COOP,
148 I_MENU_GAME_TYPE_SINGLE,
149 I_MENU_TIME_LIMIT,
150 I_MENU_GOAL_LIMIT,
151 I_MENU_MAX_LIVES,
152 I_MENU_TEAM_DAMAGE,
153 I_MENU_ENABLE_EXITS,
154 I_MENU_WEAPONS_STAY,
155 I_MENU_ENABLE_MONSTERS,
156 I_MENU_BOTS_VS,
157 I_MENU_BOTS_VS_PLAYERS,
158 I_MENU_BOTS_VS_MONSTERS,
159 I_MENU_BOTS_VS_ALL,
161 I_MENU_MAP_WAD,
162 I_MENU_MAP_RESOURCE,
163 I_MENU_MAP_NAME,
164 I_MENU_MAP_AUTHOR,
165 I_MENU_MAP_DESCRIPTION,
166 I_MENU_MAP_SIZE,
167 I_MENU_PLAYERS,
168 I_MENU_PLAYERS_ONE,
169 I_MENU_PLAYERS_TWO,
170 I_MENU_SERVER_PLAYERS,
172 I_MENU_INTER_MISSION_FAIL,
173 I_MENU_INTER_ROUND_OVER,
174 I_MENU_INTER_LEVEL_COMPLETE,
175 I_MENU_INTER_TIME,
176 I_MENU_INTER_KILLS,
177 I_MENU_INTER_KPM,
178 I_MENU_INTER_SECRETS,
179 I_MENU_INTER_NOTICE_TAB,
180 I_MENU_INTER_NOTICE_MAP,
181 I_MENU_INTER_NOTICE_SPACE,
182 I_MENU_INTER_NOTICE_TIME,
183 I_MENU_LOADING,
184 I_MENU_PLAYER_1,
185 I_MENU_PLAYER_2,
186 I_MENU_PLAYER_1_ALT,
187 I_MENU_PLAYER_2_ALT,
189 I_MENU_CONTROL_JOYSTICKS,
190 I_MENU_CONTROL_DEADZONE,
192 I_MENU_CONTROL_GLOBAL,
193 I_MENU_CONTROL_SCREENSHOT,
194 I_MENU_CONTROL_STAT,
195 I_MENU_CONTROL_CHAT,
196 I_MENU_CONTROL_TEAMCHAT,
197 I_MENU_CONTROL_LEFT,
198 I_MENU_CONTROL_RIGHT,
199 I_MENU_CONTROL_UP,
200 I_MENU_CONTROL_DOWN,
201 I_MENU_CONTROL_JUMP,
202 I_MENU_CONTROL_FIRE,
203 I_MENU_CONTROL_USE,
204 I_MENU_CONTROL_NEXT_WEAPON,
205 I_MENU_CONTROL_PREV_WEAPON,
207 I_MENU_COUNT_NONE,
208 I_MENU_COUNT_SMALL,
209 I_MENU_COUNT_NORMAL,
210 I_MENU_COUNT_BIG,
211 I_MENU_COUNT_VERYBIG,
213 I_MENU_GAME_BLOOD_COUNT,
214 I_MENU_GAME_MAX_GIBS,
215 I_MENU_GAME_MAX_CORPSES,
216 I_MENU_GAME_GIBS_COUNT,
217 I_MENU_GAME_MAX_SHELLS,
218 I_MENU_GAME_BLOOD_TYPE,
219 I_MENU_GAME_BLOOD_TYPE_SIMPLE,
220 I_MENU_GAME_BLOOD_TYPE_ADV,
221 I_MENU_GAME_CORPSE_TYPE,
222 I_MENU_GAME_CORPSE_TYPE_SIMPLE,
223 I_MENU_GAME_CORPSE_TYPE_ADV,
224 I_MENU_GAME_GIBS_TYPE,
225 I_MENU_GAME_GIBS_TYPE_SIMPLE,
226 I_MENU_GAME_GIBS_TYPE_ADV,
227 I_MENU_GAME_PARTICLES_COUNT,
228 I_MENU_GAME_SCREEN_FLASH,
229 I_MENU_GAME_BACKGROUND,
230 I_MENU_GAME_MESSAGES,
231 I_MENU_GAME_REVERT_PLAYERS,
232 I_MENU_GAME_CHAT_BUBBLE,
233 I_MENU_GAME_CHAT_TYPE_NONE,
234 I_MENU_GAME_CHAT_TYPE_SIMPLE,
235 I_MENU_GAME_CHAT_TYPE_ADV,
236 I_MENU_GAME_CHAT_TYPE_COLOR,
237 I_MENU_GAME_CHAT_TYPE_TEXTURE,
239 I_MENU_VIDEO_RESOLUTION,
240 I_MENU_VIDEO_BPP,
241 I_MENU_VIDEO_VSYNC,
242 I_MENU_VIDEO_FILTER_SKY,
243 I_MENU_VIDEO_LEGACY_COMPATIBLE,
244 I_MENU_VIDEO_NEED_RESTART,
246 I_MENU_RESOLUTION_SELECT,
247 I_MENU_RESOLUTION_CURRENT,
248 I_MENU_RESOLUTION_LIST,
249 I_MENU_RESOLUTION_FULLSCREEN,
250 I_MENU_RESOLUTION_APPLY,
252 I_MENU_SOUND_MUSIC_LEVEL,
253 I_MENU_SOUND_SOUND_LEVEL,
254 I_MENU_SOUND_MAX_SIM_SOUNDS,
255 I_MENU_SOUND_INACTIVE_SOUNDS,
256 I_MENU_SOUND_INACTIVE_SOUNDS_ON,
257 I_MENU_SOUND_INACTIVE_SOUNDS_OFF,
258 I_MENU_SOUND_ANNOUNCE,
259 I_MENU_SOUND_COMPAT,
260 I_MENU_ANNOUNCE_NONE,
261 I_MENU_ANNOUNCE_ME,
262 I_MENU_ANNOUNCE_MEPLUS,
263 I_MENU_ANNOUNCE_ALL,
264 I_MENU_COMPAT_DF,
265 I_MENU_COMPAT_DOOM2,
267 I_MENU_PLAYER_NAME,
268 I_MENU_PLAYER_TEAM,
269 I_MENU_PLAYER_TEAM_RED,
270 I_MENU_PLAYER_TEAM_BLUE,
271 I_MENU_PLAYER_MODEL,
272 I_MENU_PLAYER_RED,
273 I_MENU_PLAYER_GREEN,
274 I_MENU_PLAYER_BLUE,
276 I_MENU_MODEL_INFO,
277 I_MENU_MODEL_ANIMATION,
278 I_MENU_MODEL_CHANGE_WEAPON,
279 I_MENU_MODEL_ROTATE,
280 I_MENU_MODEL_NAME,
281 I_MENU_MODEL_AUTHOR,
282 I_MENU_MODEL_COMMENT,
283 I_MENU_MODEL_OPTIONS,
284 I_MENU_MODEL_WEAPON,
286 I_MENU_LANGUAGE_RUSSIAN,
287 I_MENU_LANGUAGE_ENGLISH,
289 I_MENU_PAUSE,
290 I_MENU_YES,
291 I_MENU_NO,
292 I_MENU_OK,
293 I_MENU_FINISH,
295 I_MENU_END_GAME_PROMT,
296 I_MENU_RESTART_GAME_PROMT,
297 I_MENU_EXIT_PROMT,
298 I_MENU_SET_DEFAULT_PROMT,
299 I_MENU_LOAD_SAVED_PROMT,
300 I_MENU_ENTERPASSWORD,
302 I_NET_SERVER,
303 I_NET_CLIENT,
304 I_NET_ADDRESS,
305 I_NET_PORT,
306 I_NET_SERVER_NAME,
307 I_NET_SERVER_PASSWORD,
308 I_NET_MAX_CLIENTS,
309 I_NET_USE_MASTER,
311 I_NET_MSG,
312 I_NET_MSG_ERROR,
313 I_NET_MSG_FERROR,
315 I_NET_MSG_HOST,
316 I_NET_MSG_HOST_DISCALL,
317 I_NET_MSG_HOST_DIE,
318 I_NET_MSG_HOST_CONN,
319 I_NET_MSG_HOST_REJECT,
320 I_NET_MSG_HOST_ADD,
321 I_NET_MSG_HOST_DISC,
322 I_NET_MSG_CLIENT_CONN,
323 I_NET_MSG_CLIENT_DONE,
324 I_NET_MSG_CLIENT_DISC,
325 I_NET_MSG_KICK,
327 I_NET_MAP_DL,
328 I_NET_WAD_DL,
330 I_NET_ERR_ENET,
331 I_NET_ERR_HOST,
332 I_NET_ERR_INGAME,
333 I_NET_ERR_CLIENT,
334 I_NET_ERR_CONN,
335 I_NET_ERR_TIMEOUT,
336 I_NET_ERR_HASH,
337 I_NET_ERR_NAME404,
339 I_NET_DISC_NONE,
340 I_NET_DISC_PROTOCOL,
341 I_NET_DISC_VERSION,
342 I_NET_DISC_FULL,
343 I_NET_DISC_KICK,
344 I_NET_DISC_DOWN,
345 I_NET_DISC_PASSWORD,
346 I_NET_DISC_TEMPBAN,
347 I_NET_DISC_BAN,
349 I_NET_SLIST,
350 I_NET_SLIST_NOSERVERS,
351 I_NET_SLIST_SERVERS,
352 I_NET_SLIST_HELP,
353 I_NET_SLIST_WAIT,
354 I_NET_SLIST_PING_MS,
355 I_NET_SLIST_NO_ACCESS,
357 I_NET_SLIST_FETCH,
358 I_NET_SLIST_RETRIEVED,
359 I_NET_SLIST_CONN,
360 I_NET_SLIST_DISC,
361 I_NET_SLIST_LOST,
362 I_NET_SLIST_ERROR,
364 I_NET_RCON_PWD_VALID,
365 I_NET_RCON_PWD_INVALID,
366 I_NET_RCON_NOAUTH,
368 I_PLAYER_DIED,
369 I_PLAYER_KILL,
370 I_PLAYER_KILL_EXTRAHARD_1,
371 I_PLAYER_KILL_EXTRAHARD_2,
372 I_PLAYER_KILL_ACID,
373 I_PLAYER_KILL_TRAP,
374 I_PLAYER_KILL_FALL,
375 I_PLAYER_KILL_SELF,
376 I_PLAYER_KILL_WATER,
378 I_PLAYER_KILL_2X,
379 I_PLAYER_KILL_3X,
380 I_PLAYER_KILL_4X,
381 I_PLAYER_KILL_MX,
383 I_PLAYER_JOIN,
384 I_PLAYER_LEAVE,
385 I_PLAYER_KICK,
386 I_PLAYER_BAN,
387 I_PLAYER_NAME,
388 I_PLAYER_CHTEAM_RED,
389 I_PLAYER_CHTEAM_BLUE,
391 I_PLAYER_SPECT,
392 I_PLAYER_SPECT1,
393 I_PLAYER_SPECT1S,
394 I_PLAYER_SPECT2,
395 I_PLAYER_SPECT3,
396 I_PLAYER_SPECT4,
398 I_PLAYER_FLAG_GET,
399 I_PLAYER_FLAG_RETURN,
400 I_PLAYER_FLAG_CAPTURE,
401 I_PLAYER_FLAG_DROP,
402 I_PLAYER_FLAG_RED,
403 I_PLAYER_FLAG_BLUE,
405 I_PLAYER_SCORE_RED,
406 I_PLAYER_SCORE_BLUE,
407 I_PLAYER_SCORE_TO_RED,
408 I_PLAYER_SCORE_TO_BLUE,
409 I_PLAYER_SCORE_ADD_OWN,
410 I_PLAYER_SCORE_SUB_OWN,
411 I_PLAYER_SCORE_ADD_ENEMY,
412 I_PLAYER_SCORE_SUB_ENEMY,
413 I_PLAYER_SCORE_WIN_OWN,
414 I_PLAYER_SCORE_WIN_ENEMY,
415 I_PLAYER_SCORE_ADD_TEAM,
416 I_PLAYER_SCORE_SUB_TEAM,
418 I_MESSAGE_FLAG_GET,
419 I_MESSAGE_FLAG_RETURN,
420 I_MESSAGE_FLAG_CAPTURE,
421 I_MESSAGE_FLAG_DROP,
423 I_MESSAGE_LMS_LOSE,
424 I_MESSAGE_LMS_WIN,
425 I_MESSAGE_LMS_START,
426 I_MESSAGE_TLMS_WIN,
427 I_MESSAGE_LMS_SURVIVOR,
429 I_MESSAGE_SCORE_ADD,
430 I_MESSAGE_SCORE_SUB,
432 I_MESSAGE_VOTE_INPROGRESS,
433 I_MESSAGE_VOTE_STARTED,
434 I_MESSAGE_VOTE_PASSED,
435 I_MESSAGE_VOTE_FAILED,
436 I_MESSAGE_VOTE_VOTE,
437 I_MESSAGE_VOTE_REVOKED,
439 I_KEY_UP,
440 I_KEY_DOWN,
441 I_KEY_LEFT,
442 I_KEY_RIGHT,
444 I_MONSTER_DEMON,
445 I_MONSTER_IMP,
446 I_MONSTER_ZOMBIE,
447 I_MONSTER_SERGEANT,
448 I_MONSTER_CYBER,
449 I_MONSTER_CGUN,
450 I_MONSTER_BARON,
451 I_MONSTER_KNIGHT,
452 I_MONSTER_CACODEMON,
453 I_MONSTER_SOUL,
454 I_MONSTER_PAIN,
455 I_MONSTER_MASTERMIND,
456 I_MONSTER_SPIDER,
457 I_MONSTER_MANCUBUS,
458 I_MONSTER_REVENANT,
459 I_MONSTER_ARCHVILE,
460 I_MONSTER_FISH,
461 I_MONSTER_BARREL,
462 I_MONSTER_ROBOT,
463 I_MONSTER_PRIKOLIST,
465 I_LOAD_MUSIC,
466 I_LOAD_MODELS,
467 I_LOAD_MENUS,
468 I_LOAD_CONSOLE,
469 I_LOAD_ITEMS_DATA,
470 I_LOAD_WEAPONS_DATA,
471 I_LOAD_GAME_DATA,
472 I_LOAD_COLLIDE_MAP,
473 I_LOAD_DOOR_MAP,
474 I_LOAD_LIFT_MAP,
475 I_LOAD_WATER_MAP,
476 I_LOAD_WAD_FILE,
477 I_LOAD_MAP,
478 I_LOAD_TEXTURES,
479 I_LOAD_TRIGGERS,
480 I_LOAD_PANELS,
481 I_LOAD_TRIGGERS_TABLE,
482 I_LOAD_LINK_TRIGGERS,
483 I_LOAD_CREATE_TRIGGERS,
484 I_LOAD_ITEMS,
485 I_LOAD_CREATE_ITEMS,
486 I_LOAD_AREAS,
487 I_LOAD_CREATE_AREAS,
488 I_LOAD_MONSTERS,
489 I_LOAD_CREATE_MONSTERS,
490 I_LOAD_MAP_HEADER,
491 I_LOAD_SKY,
492 I_LOAD_MONSTER_TEXTURES,
493 I_LOAD_MONSTER_SOUNDS,
494 I_LOAD_SAVE_FILE,
495 I_LOAD_MAP_STATE,
496 I_LOAD_ITEMS_STATE,
497 I_LOAD_TRIGGERS_STATE,
498 I_LOAD_WEAPONS_STATE,
499 I_LOAD_MONSTERS_STATE,
500 I_LOAD_CONNECT,
501 I_LOAD_SEND_INFO,
502 I_LOAD_WAIT_INFO,
503 I_LOAD_DL_RES,
505 I_CREDITS_CAP_1,
506 I_CREDITS_CAP_2,
507 I_CREDITS_A_1,
508 I_CREDITS_A_1_1,
509 I_CREDITS_A_2,
510 I_CREDITS_A_2_1,
511 I_CREDITS_A_2_2,
512 I_CREDITS_A_3,
513 I_CREDITS_A_3_1,
514 I_CREDITS_A_4,
515 I_CREDITS_A_4_1,
516 I_CREDITS_CAP_3,
517 I_CREDITS_CLO_1,
518 I_CREDITS_CLO_2,
519 I_CREDITS_CLO_3,
520 I_CREDITS_CLO_4,
522 I_MSG_SHOW_FPS_ON,
523 I_MSG_SHOW_FPS_OFF,
524 I_MSG_GAMEMODE_CURRENT,
525 I_MSG_GAMEMODE_CHANGE,
526 I_MSG_FRIENDLY_FIRE_ON,
527 I_MSG_FRIENDLY_FIRE_OFF,
528 I_MSG_WEAPONSTAY_ON,
529 I_MSG_WEAPONSTAY_OFF,
530 I_MSG_ALLOWEXIT_ON,
531 I_MSG_ALLOWEXIT_OFF,
532 I_MSG_ALLOWMON_ON,
533 I_MSG_ALLOWMON_OFF,
534 I_MSG_BOTSVSPLAYERS_ON,
535 I_MSG_BOTSVSPLAYERS_OFF,
536 I_MSG_BOTSVSMONSTERS_ON,
537 I_MSG_BOTSVSMONSTERS_OFF,
538 I_MSG_TIME_ON,
539 I_MSG_TIME_OFF,
540 I_MSG_SCORE_ON,
541 I_MSG_SCORE_OFF,
542 I_MSG_STATS_ON,
543 I_MSG_STATS_OFF,
544 I_MSG_KILL_MSGS_ON,
545 I_MSG_KILL_MSGS_OFF,
546 I_MSG_LIVES_ON,
547 I_MSG_LIVES_OFF,
548 I_MSG_SPECT_HUD_ON,
549 I_MSG_SPECT_HUD_OFF,
550 I_MSG_PING_ON,
551 I_MSG_PING_OFF,
552 I_MSG_NO_WAD,
553 I_MSG_NO_MAPS,
554 I_MSG_NO_MAP,
555 I_MSG_NO_MONSTER,
556 I_MSG_SCORE_LIMIT,
557 I_MSG_TIME_LIMIT,
558 I_MSG_LIVES,
559 I_MSG_WARMUP,
560 I_MSG_WARMUP_START,
561 I_MSG_NEXTMAP_SET,
562 I_MSG_NEXTMAP_UNSET,
563 I_MSG_ONMAPCHANGE,
564 I_MSG_NOT_GAME,
565 I_MSG_NOT_DEBUG,
566 I_MSG_GM_UNAVAIL,
567 I_MSG_SERVERONLY,
568 I_MSG_NOCLIENTS,
569 I_MSG_UNBAN_OK,
570 I_MSG_UNBAN_FAIL,
572 I_TEXTURE_ENDPIC,
574 I_VERSION,
576 I_FATAL_ERROR,
577 I_SIMPLE_ERROR,
578 I_SYSTEM_ERROR_UNKNOWN,
579 I_SYSTEM_ERROR_MSG,
581 I_LAST );
583 const
584 LANGUAGE_RUSSIAN = 'Russian';
585 LANGUAGE_ENGLISH = 'English';
586 LANGUAGE_RUSSIAN_N = 3;
587 LANGUAGE_ENGLISH_N = 2;
589 var
590 _lc: Array [TStrings_Locale] of String;
591 KilledByMonster: Array [MONSTER_DEMON..MONSTER_MAN] of String;
592 CheatEng: Array [I_GAME_CHEAT_GODMODE..I_GAME_CHEAT_AUTOMAP] of String;
593 CheatRus: Array [I_GAME_CHEAT_GODMODE..I_GAME_CHEAT_AUTOMAP] of String;
595 procedure g_Language_Load(fileName: String);
596 procedure g_Language_Set(lang: String);
597 procedure g_Language_Dump(fileName: String);
599 implementation
601 uses
602 SysUtils, g_gui, g_basic, e_log, e_input;
604 const
605 g_lang_default: Array [TStrings_Locale] of Array [1..3] of String = (
606 ('CONSOLE EXEC', 'Executing script: "%s"',
607 'Âûïîëíÿåòñÿ ñêðèïò: "%s"'),
608 ('CONSOLE DUMPED', 'Saved to "%s"',
609 'Ñîõðàíåíî â "%s"'),
610 ('CONSOLE ERROR CALL', 'Console loop detected. Execution terminated.',
611 'Îáíàðóæåí áåñêîíå÷íûé öèêë. Ñêðèïò îñòàíîâëåí.'),
612 ('CONSOLE ERROR READ', 'Error reading file "%s"',
613 'Îøèáêà ïðè ÷òåíèè ôàéëà "%s"'),
614 ('CONSOLE ERROR WRITE', 'Error writing file "%s"',
615 'Îøèáêà ïðè çàïèñè â ôàéë "%s"'),
616 ('CONSOLE SCREENSHOT', 'Screenshot saved to "%s"',
617 'Ñêðèíøîò ñîõðàí¸í â "%s"'),
618 ('CONSOLE UNKNOWN', 'Unknown command "%s"',
619 'Íåèçâåñòíàÿ êîìàíäà "%s"'),
620 ('CONSOLE WELCOME', 'Welcome to Doom 2D: Forever %s',
621 'Äîáðî ïîæàëîâàòü â Doom 2D: Forever %s'),
623 ('GAME ERROR GET SPAWN', 'Can''t find a spawn point!',
624 'Íå óäàëîñü ïîëó÷èòü òî÷êó âîçðîæäåíèÿ!'),
625 ('GAME ERROR CTF', 'There are no flags on this map!',
626 'Íà êàðòå íåò ôëàãîâ!'),
627 ('GAME ERROR MAP WAD', 'Can''t read map WAD "%s"',
628 'Íå óäàëîñü çàãðóçèòü WAD êàðòû: "%s"'),
629 ('GAME ERROR MAP RES', 'Can''t load map resource "%s"',
630 'Íå óäàëîñü çàãðóçèòü ðåñóðñ êàðòû èç WAD: "%s"'),
631 ('GAME ERROR MAP LOAD', 'Can''t load map "%s"',
632 'Íå óäàëîñü çàãðóçèòü êàðòó "%s"'),
633 ('GAME ERROR MAP SELECT', 'Map reading error!',
634 'Êàðòà íå ÷èòàåòñÿ!'),
635 ('GAME ERROR PLAYER CREATE', 'Can''t create player #%d',
636 'Íå óäàëîñü ñîçäàòü Èãðîêà #%d'),
637 ('GAME ERROR TEXTURE ANIM', 'Can''t create animated texture "%s"',
638 'Íå ïîëó÷èëîñü ñîçäàòü àíèìèðîâàííóþ òåêñòóðó "%s"'),
639 ('GAME ERROR TEXTURE SIMPLE', 'Can''t create ordinary Texture "%s"',
640 'Íå ïîëó÷èëîñü ñîçäàòü îáû÷íóþ òåêñòóðó "%s"'),
641 ('GAME ERROR MODEL FALLBACK', 'Model "%s" not found, using default model instead',
642 'Ìîäåëü "%s" íå íàéäåíà, èñïîëüçóåòñÿ ìîäåëü ïî óìîë÷àíèþ'),
643 ('GAME ERROR MODEL', 'Model "%s" not found',
644 'Ìîäåëü "%s" íå íàéäåíà'),
645 ('GAME ERROR SKY', 'Can''t load sky "%s"',
646 'Íå óäàëîñü çàãðóçèòü íåáî "%s"'),
647 ('GAME ERROR MUSIC', 'Can''t load music "%s"',
648 'Íå óäàëîñü çàãðóçèòü ìóçûêó "%s"'),
649 ('GAME ERROR SAVE', 'Saving state error!',
650 'Îøèáêà âî âðåìÿ ñîõðàíåíèÿ!'),
651 ('GAME ERROR LOAD', 'Loading state error!',
652 'Îøèáêà âî âðåìÿ çàãðóçêè!'),
653 ('GAME ERROR SOUND', 'Can''t load sound "%s"',
654 'Íå óäàëîñü çàãðóçèòü çâóê "%s"'),
655 ('GAME ERROR FRAMES', 'Can''t load animation''s frame list "%s"',
656 'Íå óäàëîñü çàãðóçèòü ñïèñîê êàäðîâ àíèìàöèè: "%s"'),
657 ('GAME ERROR TR SOUND', 'Can''t load sound "%s:%s" for trigger',
658 'Íå óäàëîñü çàãðóçèòü çâóê "%s:%s" äëÿ òðèããåðà'),
659 ('GAME ERROR SWITCH TEXTURE', 'Texture switching error: no animation',
660 'Îøèáêà ïðè ïåðåêëþ÷åíèè òåêñòóðû: íåò àíèìàöèè'),
662 ('GAME PLAYER NAME', 'Player name',
663 'Èãðîê'),
664 ('GAME GAME TIME', 'Game time:',
665 'Âðåìÿ èãðû:'),
666 ('GAME PING', 'Ping (Loss)',
667 'Ïèíã (Ïîòåðè)'),
668 ('GAME PING MS', '%d ms (%d%%)',
669 '%d ìñ (%d%%)'),
670 ('GAME PING HUD', 'Ping: ',
671 'Ïèíã: '),
672 ('GAME FRAGS', 'Frags',
673 'Ôðàãîâ'),
674 ('GAME DEATHS', 'Deaths',
675 'Ñìåðòåé'),
676 ('GAME DM', 'Deathmatch',
677 'Deathmatch'),
678 ('GAME CTF', 'Capture the Flag',
679 'Capture the Flag'),
680 ('GAME TDM', 'Team Deathmatch',
681 'Team Deathmatch'),
682 ('GAME COOP', 'Cooperative',
683 'Cooperative'),
684 ('GAME LMS', 'Last Man Standing',
685 'Last Man Standing'),
686 ('GAME TLMS', 'Team LMS',
687 'Team LMS'),
688 ('GAME SURV', 'Survival',
689 'Survival'),
690 ('GAME FRAG LIMIT', 'Frag Limit: %d',
691 'ËÈÌÈÒ ÔÐÀÃÎÂ: %d'),
692 ('GAME SCORE LIMIT', 'Score Limit: %d',
693 'ËÈÌÈÒ Î×ÊÎÂ: %d'),
694 ('GAME TIME LIMIT', 'Time Limit: %d:%.2d:%.2d',
695 'ËÈÌÈÒ ÂÐÅÌÅÍÈ: %d:%.2d:%.2d'),
696 ('GAME TEAM SCORE RED', 'Red Team (%d)',
697 'ÊÐÀÑÍÀß ÊÎÌÀÍÄÀ (%d)'),
698 ('GAME TEAM SCORE BLUE', 'Blue Team (%d)',
699 'ÑÈÍßß ÊÎÌÀÍÄÀ (%d)'),
700 ('GAME TEAM RED', 'Red',
701 'ÊÐÀÑÍÀß'),
702 ('GAME TEAM BLUE', 'Blue',
703 'ÑÈÍßß'),
704 ('GAME WIN RED', 'Red Team Wins!',
705 'ÏÎÁÅÄÈËÀ ÊÐÀÑÍÀß ÊÎÌÀÍÄÀ!'),
706 ('GAME WIN BLUE', 'Blue Team Wins!',
707 'ÏÎÁÅÄÈËÀ ÑÈÍßß ÊÎÌÀÍÄÀ!'),
708 ('GAME WIN DRAW', 'Draw!',
709 'ÍÈ×Üß!'),
710 ('GAME MONSTERS', 'Monsters killed:',
711 'Ìîíñòðîâ óáèòî:'),
712 ('GAME SECRETS', 'Secrets found:',
713 'Ñåêðåòîâ íàéäåíî:'),
714 ('GAME MONSTERS TOTAL', 'Total monsters killed:',
715 'Âñåãî ìîíñòðîâ óáèòî:'),
716 ('GAME SECRETS TOTAL', 'Total secrets found:',
717 'Âñåãî ñåêðåòîâ íàéäåíî:'),
719 ('GAME CHEAT GODMODE', 'MACLEOD',
720 'ÃÎÐÅÖ'),
721 ('GAME CHEAT WEAPONS', 'RAMBO',
722 'RAMBO'),
723 ('GAME CHEAT HEALTH', 'TANK',
724 'TANK'),
725 ('GAME CHEAT DEATH', 'IDDQD',
726 'IDDQD'),
727 ('GAME CHEAT DOORS', 'SESAME',
728 'ÑÈÌÑÈÌ'),
729 ('GAME CHEAT NEXTMAP', 'GOODBYE',
730 'GOODBYE'),
731 ('GAME CHEAT CHANGEMAP', 'GOTO',
732 'ÏÎØÅËÍÀ'),
733 ('GAME CHEAT FLY', 'WHITEEAGLE',
734 'ÁÅËÛÉÎÐÅË'),
735 ('GAME CHEAT JUMPS', 'BULLFROG',
736 'BULLFROG'),
737 ('GAME CHEAT SPEED', 'FORMULA1',
738 'FORMULA1'),
739 ('GAME CHEAT SUIT', 'CONDOM',
740 'CONDOM'),
741 ('GAME CHEAT AIR', 'AQUAMAN',
742 '×ÅÐÍÎÌÎÐ'),
743 ('GAME CHEAT BERSERK', 'PURELOVE',
744 'PURELOVE'),
745 ('GAME CHEAT JETPACK', 'LUCYINTHESKY',
746 'ßÑÂÎÁÎÄÅÍ'),
747 ('GAME CHEAT NOCLIP', 'CASPER',
748 'CASPER'),
749 ('GAME CHEAT NOTARGET', 'JAMESBOND',
750 'ØÒÈÐËÈÖ'),
751 ('GAME CHEAT NORELOAD', 'INFERNO',
752 'INFERNO'),
753 ('GAME CHEAT AIMLINE', 'SNIPER',
754 'ÑÍÀÉÏÅÐ'),
755 ('GAME CHEAT AUTOMAP', 'ID2DT',
756 'ID2DT'),
758 ('MENU START GAME', 'Start Game',
759 'ÍÀ×ÀÒÜ ÈÃÐÓ'),
760 ('MENU MAIN MENU', 'Menu',
761 'ÌÅÍÞ'),
762 ('MENU NEW GAME', 'New Game',
763 'ÍÎÂÀß ÈÃÐÀ'),
764 ('MENU MULTIPLAYER', 'Multiplayer',
765 'ÌÓËÜÒÈÏËÅÅÐ'),
766 ('MENU OPTIONS', 'Options',
767 'ÍÀÑÒÐÎÉÊÈ'),
768 ('MENU AUTHORS', 'Credits',
769 'ÀÂÒÎÐÛ'),
770 ('MENU EXIT', 'Exit',
771 'ÂÛÕÎÄ'),
772 ('MENU 1 PLAYER', 'Single player',
773 'ÎÄÈÍ ÈÃÐÎÊ'),
774 ('MENU 2 PLAYERS', 'Two players',
775 'ÄÂÀ ÈÃÐÎÊÀ'),
776 ('MENU CUSTOM GAME', 'Custom game',
777 'ÑÂÎß ÈÃÐÀ'),
778 ('MENU CAMPAIGN', 'Campaign select',
779 'ÂÛÁÎÐ ÊÀÌÏÀÍÈÈ'),
780 ('MENU START SERVER', 'Start server',
781 'ÑÎÇÄÀÒÜ ÑÅÐÂÅÐ'),
782 ('MENU START CLIENT', 'Join game',
783 'ÂÑÒÓÏÈÒÜ Â ÈÃÐÓ'),
784 ('MENU CLIENT CONNECT', 'Connect',
785 'Ïðèñîåäèíèòüñÿ'),
786 ('MENU SELECT MAP', 'Map',
787 'ÊÀÐÒÀ'),
788 ('MENU VIDEO OPTIONS', 'Video',
789 'ÂÈÄÅÎ'),
790 ('MENU SOUND OPTIONS', 'Sound',
791 'ÇÂÓÊ'),
792 ('MENU SAVED OPTIONS', 'Saved options',
793 'ÑÎÕÐÀͨÍÍÛÅ'),
794 ('MENU DEFAULT OPTIONS', 'Default options',
795 'ÑÒÀÍÄÀÐÒÍÛÅ'),
796 ('MENU GAME OPTIONS', 'Gameplay',
797 'ÈÃÐÀ'),
798 ('MENU CONTROLS OPTIONS', 'Controls',
799 'ÓÏÐÀÂËÅÍÈÅ'),
800 ('MENU PLAYER OPTIONS', 'Players',
801 'ÈÃÐÎÊÈ'),
802 ('MENU LANGUAGE OPTIONS', 'Language',
803 'ßÇÛÊ'),
804 ('MENU CHANGE PLAYERS', 'Change players',
805 'ÑÌÅÍÀ ÑÎÑÒÀÂÀ'),
806 ('MENU LOAD GAME', 'Load game',
807 'ÑÒÀÐÀß ÈÃÐÀ'),
808 ('MENU SAVE GAME', 'Save game',
809 'ÑÎÕÐÀÍÈÒÜ ÈÃÐÓ'),
810 ('MENU END GAME', 'End game',
811 'ÇÀÊÎÍ×ÈÒÜ ÈÃÐÓ'),
812 ('MENU RESTART', 'Restart game',
813 'ÍÀ×ÀÒÜ ÇÀÍÎÂÎ'),
814 ('MENU SET GAME', 'Setup game',
815 'ÐÀÇÍÎÅ'),
817 ('MENU JOIN RED', 'Join Red',
818 'ÂÎÉÒÈ ÇÀ ÊÐÀÑÍÛÕ'),
819 ('MENU JOIN BLUE', 'Join Blue',
820 'ÂÎÉÒÈ ÇÀ ÑÈÍÈÕ'),
821 ('MENU JOIN GAME', 'Join Game',
822 'ÂÎÉÒÈ Â ÈÃÐÓ'),
823 ('MENU ADD PLAYER 2', 'Add Player 2',
824 'ÄÎÁÀÂÈÒÜ ÂÒÎÐÎÃÎ ÈÃÐÎÊÀ'),
825 ('MENU REM PLAYER 2', 'Remove Player 2',
826 'ÓÁÐÀÒÜ ÂÒÎÐÎÃÎ ÈÃÐÎÊÀ'),
827 ('MENU SPECTATE', 'Spectate',
828 'ÍÀÁËÞÄÀÒÜ'),
830 ('MENU STATISTICS', 'Statistics',
831 'ÑÒÀÒÈÑÒÈÊÀ ÈÃÐÛ'),
832 ('MENU MAP', 'Map:',
833 'Êàðòà:'),
834 ('MENU GAME TYPE', 'Game type:',
835 'Ðåæèì èãðû:'),
836 ('MENU GAME TYPE DM', 'DM',
837 'DM'),
838 ('MENU GAME TYPE CTF', 'CTF',
839 'CTF'),
840 ('MENU GAME TYPE TDM', 'TDM',
841 'TDM'),
842 ('MENU GAME TYPE COOP', 'COOP',
843 'COOP'),
844 ('MENU GAME TYPE SINGLE', 'SINGLE',
845 'SINGLE'),
846 ('MENU TIME LIMIT', 'Time Limit:',
847 'Ëèìèò âðåìåíè:'),
848 ('MENU GOAL LIMIT', 'Score Limit:',
849 'Ëèìèò î÷êîâ:'),
850 ('MENU MAX LIVES', 'Lives:',
851 'Æèçíè:'),
852 ('MENU TEAM DAMAGE', 'Friendly Fire:',
853 'Óðîí ñâîèõ:'),
854 ('MENU ENABLE EXITS', 'Enable Exit:',
855 'Âêëþ÷èòü âûõîä:'),
856 ('MENU WEAPONS STAY', 'Weapons stay:',
857 'Îðóæèå îñòà¸òñÿ:'),
858 ('MENU ENABLE MONSTERS', 'Enable monsters:',
859 'Ìîíñòðû:'),
860 ('MENU BOTS VS', 'Bots fight with:',
861 'Áîòû ïðîòèâ:'),
862 ('MENU BOTS VS PLAYERS', 'Players',
863 'Èãðîêîâ'),
864 ('MENU BOTS VS MONSTERS', 'Monsters',
865 'Ìîíñòðîâ'),
866 ('MENU BOTS VS ALL', 'Everybody',
867 'Âñåõ'),
869 ('MENU MAP WAD', 'Select WAD:',
870 'Âûáîð WAD''à:'),
871 ('MENU MAP RESOURCE', 'Select Map:',
872 'Âûáîð êàðòû:'),
873 ('MENU MAP NAME', 'Name:',
874 'Íàçâàíèå:'),
875 ('MENU MAP AUTHOR', 'Author:',
876 'Àâòîð:'),
877 ('MENU MAP DESCRIPTION', 'Description:',
878 'Îïèñàíèå:'),
879 ('MENU MAP SIZE', 'Size:',
880 'Ðàçìåð:'),
881 ('MENU PLAYERS', 'Players:',
882 '×èñëî èãðîêîâ:'),
883 ('MENU PLAYERS ONE', 'One',
884 'Îäèí'),
885 ('MENU PLAYERS TWO', 'Two',
886 'Äâà'),
887 ('MENU SERVER PLAYERS', 'Local Players:',
888 'Ëîêàëüíûå èãðîêè:'),
890 ('MENU INTER MISSION FAIL', 'Mission Failed',
891 'ÌÈÑÑÈß ÏÐÎÂÀËÅÍÀ'),
892 ('MENU INTER ROUND OVER', 'Round Over',
893 'ÐÀÓÍÄ ÎÊÎÍ×ÅÍ'),
894 ('MENU INTER LEVEL COMPLETE', 'Level Complete',
895 'ÓÐÎÂÅÍÜ ÏÐÎÉÄÅÍ'),
896 ('MENU INTER TIME', 'Time:',
897 'ÂÐÅÌß:'),
898 ('MENU INTER KILLS', 'Kills:',
899 'ÓÁÈË:'),
900 ('MENU INTER KPM', 'Kills-per-minute:',
901 'ÓÁÈÉÑÒÂ Â ÌÈÍÓÒÓ:'),
902 ('MENU INTER SECRETS', 'Secrets found:',
903 'ÍÀØÅË ÑÅÊÐÅÒÎÂ:'),
904 ('MENU INTER NOTICE TAB', 'Press [TAB] to view stats',
905 'Íàæìèòå [TAB] äëÿ ïðîñìîòðà ñòàòèñòèêè'),
906 ('MENU INTER NOTICE MAP', 'Please wait until map change',
907 'Ïîäîæäèòå, ïîêà ñìåíèòñÿ êàðòà íà ñåðâåðå'),
908 ('MENU INTER NOTICE SPACE', 'Press [SPACE] to continue',
909 'Íàæìèòå [ÏÐÎÁÅË], ÷òîáû ïðîäîëæèòü'),
910 ('MENU INTER NOTICE TIME', '%d seconds till the next round',
911 'Îñòàëîñü %d ñåêóíä äî ñëåäóþùåãî ðàóíäà'),
912 ('MENU LOADING', 'Loading...',
913 'Çàãðóçêà...'),
914 ('MENU PLAYER 1', 'Player 1',
915 'Ïåðâûé èãðîê'),
916 ('MENU PLAYER 2', 'Player 2',
917 'Âòîðîé èãðîê'),
918 ('MENU PLAYER 1 ALT', 'Player 1 ALT',
919 'Ïåðâûé èãðîê ALT'),
920 ('MENU PLAYER 2 ALT', 'Player 2 ALT',
921 'Âòîðîé èãðîê ALT'),
923 ('MENU CONTROL JOYSTICKS', 'Joystick Settings',
924 'Íàñòðîéêè äæîéñòèêîâ'),
925 ('MENU CONTROL DEADZONE', 'Joystick %d Deadzone',
926 'Ìåðòâàÿ çîíà äæîéñòèêà %d'),
928 ('MENU CONTROL GLOBAL', 'Global Controls',
929 'ÎÁÙÅÅ ÓÏÐÀÂËÅÍÈÅ'),
930 ('MENU CONTROL SCREENSHOT', 'Screenshot:',
931 'Ñêðèíøîò:'),
932 ('MENU CONTROL STAT', 'Statistics:',
933 'Ñòàòèñòèêà:'),
934 ('MENU CONTROL CHAT', 'Chat:',
935 '×àò:'),
936 ('MENU CONTROL TEAMCHAT', 'Team chat:',
937 'Êîìàíäíûé ÷àò:'),
938 ('MENU CONTROL LEFT', 'Left:',
939 'Âëåâî:'),
940 ('MENU CONTROL RIGHT', 'Right:',
941 'Âïðàâî:'),
942 ('MENU CONTROL UP', 'Up:',
943 'Ââåðõ:'),
944 ('MENU CONTROL DOWN', 'Down:',
945 'Âíèç:'),
946 ('MENU CONTROL JUMP', 'Jump:',
947 'Ïðûæîê:'),
948 ('MENU CONTROL FIRE', 'Fire:',
949 'Îãîíü:'),
950 ('MENU CONTROL USE', 'Use:',
951 'Èñïîëüçîâàòü:'),
952 ('MENU CONTROL NEXT WEAPON', 'Next weapon:',
953 'Ñëåä. îðóæèå:'),
954 ('MENU CONTROL PREV WEAPON', 'Prev weapon:',
955 'Ïðåä. îðóæèå:'),
957 ('MENU COUNT NONE', 'None',
958 'Íåò'),
959 ('MENU COUNT SMALL', 'Little bit',
960 'Ìàëî'),
961 ('MENU COUNT NORMAL', 'Normal',
962 'Ñðåäíå'),
963 ('MENU COUNT BIG', 'Lots',
964 'Ìíîãî'),
965 ('MENU COUNT VERYBIG', 'Lots and lots',
966 'Î÷åíü ìíîãî'),
968 ('MENU GAME BLOOD COUNT', 'Blood amount:',
969 'Êîëè÷åñòâî êðîâè:'),
970 ('MENU GAME MAX GIBS', 'Gib limit:',
971 'Ëèìèò êóñêîâ:'),
972 ('MENU GAME MAX CORPSES', 'Corpse limit:',
973 'Ëèìèò òðóïîâ:'),
974 ('MENU GAME GIBS COUNT', 'Gibs count:',
975 'Êóñêîâ çà ðàç:'),
976 ('MENU GAME MAX SHELLS', 'Shells limit:',
977 'Ëèìèò ãèëüç:'),
978 ('MENU GAME BLOOD TYPE', 'Blood type:',
979 'Òèï êðîâè:'),
980 ('MENU GAME BLOOD TYPE SIMPLE', 'Simple',
981 'Ïðîñòàÿ'),
982 ('MENU GAME BLOOD TYPE ADV', 'Dripping',
983 'Êàïàþùàÿ'),
984 ('MENU GAME CORPSE TYPE', 'Corpse type:',
985 'Òèï òðóïîâ:'),
986 ('MENU GAME CORPSE TYPE SIMPLE', 'Simple',
987 'Íåïîäâèæíûå'),
988 ('MENU GAME CORPSE TYPE ADV', 'Interactive',
989 'Ñ ôèçèêîé'),
990 ('MENU GAME GIBS TYPE', 'Gibs type:',
991 'Òèï êóñêîâ:'),
992 ('MENU GAME GIBS TYPE SIMPLE', 'Simple',
993 'Íåïîäâèæíûå'),
994 ('MENU GAME GIBS TYPE ADV', 'Interactive',
995 'Ñ ôèçèêîé'),
996 ('MENU GAME PARTICLES COUNT', 'Particle limit:',
997 'Ëèìèò ÷àñòèö:'),
998 ('MENU GAME SCREEN FLASH', 'Screen flash:',
999 'Âñïûøêè ýêðàíà:'),
1000 ('MENU GAME BACKGROUND', 'Draw background:',
1001 'Ðèñîâàòü ôîí:'),
1002 ('MENU GAME MESSAGES', 'Show messages:',
1003 'Âûâîäèòü ñîîáùåíèÿ:'),
1004 ('MENU GAME REVERT PLAYERS', 'Revert players:',
1005 'Âòîðîé èãðîê ñâåðõó:'),
1006 ('MENU GAME CHAT BUBBLE', 'Chat bubbles:',
1007 'Èêîíêà ÷àòà:'),
1008 ('MENU GAME CHAT TYPE NONE', 'None',
1009 'Íåò'),
1010 ('MENU GAME CHAT TYPE SIMPLE', 'Simple',
1011 'Ïðîñòàÿ'),
1012 ('MENU GAME CHAT TYPE ADV', 'Advanced',
1013 'Ïðîäâèíóòàÿ'),
1014 ('MENU GAME CHAT TYPE COLOR', 'Colored',
1015 'Öâåòíàÿ'),
1016 ('MENU GAME CHAT TYPE TEXTURE', 'Textured',
1017 'Òåêñòóðà'),
1019 ('MENU VIDEO RESOLUTION', 'Set video mode',
1020 'Óñòàíîâêà âèäåîðåæèìà'),
1021 ('MENU VIDEO BPP', 'Color depth:',
1022 'Ãëóáèíà öâåòà:'),
1023 ('MENU VIDEO VSYNC', 'Vertical sync',
1024 'Âåðò. ñèíõðîíèçàöèÿ:'),
1025 ('MENU VIDEO FILTER SKY', 'Anisotropic sky',
1026 'Ôèëüòðàöèÿ íåáà:'),
1027 ('MENU VIDEO LEGACY COMPATIBLE', 'Compatibility with NPOT textures:',
1028 'Ñîâìåñòèìîñòü ñ NPOT-òåêñòóðàìè:'),
1029 ('MENU VIDEO NEED RESTART', 'Video settings will be changed after game restart.',
1030 'Äàííûå íàñòðîéêè âèäåî âñòóïÿò â ñèëó ïîñëå ïåðåçàïóñêà èãðû.'),
1032 ('MENU RESOLUTION SELECT', 'SET VIDEO MODE',
1033 'ÓÑÒÀÍÎÂÊÀ ÂÈÄÅÎÐÅÆÈÌÀ'),
1034 ('MENU RESOLUTION CURRENT', 'Current:',
1035 'Òåêóùèé:'),
1036 ('MENU RESOLUTION LIST', 'New:',
1037 'Íîâûé:'),
1038 ('MENU RESOLUTION FULLSCREEN', 'Fullscreen:',
1039 'Ïîëíûé ýêðàí:'),
1040 ('MENU RESOLUTION APPLY', 'Apply',
1041 'Ïðèìåíèòü'),
1043 ('MENU SOUND MUSIC LEVEL', 'Music volume:',
1044 'Ãðîìêîñòü ìóçûêè:'),
1045 ('MENU SOUND SOUND LEVEL', 'Sound volume:',
1046 'Ãðîìêîñòü çâóêà:'),
1047 ('MENU SOUND MAX SIM SOUNDS', 'Similar Sound FX amount:',
1048 'Êîë-âî îäíîãî çâóêà:'),
1049 ('MENU SOUND INACTIVE SOUNDS', 'Window inactive:',
1050 'Îêíî íåàêòèâíî:'),
1051 ('MENU SOUND INACTIVE SOUNDS ON', 'Play sounds',
1052 'Çâóêè åñòü'),
1053 ('MENU SOUND INACTIVE SOUNDS OFF', 'Mute sounds',
1054 'Çâóêîâ íåò'),
1055 ('MENU SOUND ANNOUNCE', 'Announcements:',
1056 'Îáúÿâëåíèÿ:'),
1057 ('MENU SOUND COMPAT', 'Sound FX set:',
1058 'Íàáîð çâóêîâ:'),
1059 ('MENU ANNOUNCE NONE', 'None',
1060 'Íåò'),
1061 ('MENU ANNOUNCE ME', 'Only own announcers',
1062 'Òîëüêî ìîè'),
1063 ('MENU ANNOUNCE MEPLUS', 'Own + multikills',
1064 'Ìîè + ìóëüòèêèëëû'),
1065 ('MENU ANNOUNCE ALL', 'All announcers',
1066 'Âñå'),
1067 ('MENU COMPAT DF', 'Doom 2D',
1068 'Doom 2D'),
1069 ('MENU COMPAT DOOM2', 'Doom II',
1070 'Doom II'),
1072 ('MENU PLAYER NAME', 'Name:',
1073 'Èìÿ:'),
1074 ('MENU PLAYER TEAM', 'Team:',
1075 'Êîìàíäà:'),
1076 ('MENU PLAYER TEAM RED', 'Red',
1077 'Êðàñíàÿ'),
1078 ('MENU PLAYER TEAM BLUE', 'Blue',
1079 'Ñèíÿÿ'),
1080 ('MENU PLAYER MODEL', 'Model:',
1081 'Ìîäåëü:'),
1082 ('MENU PLAYER RED', 'Red:',
1083 'Êðàñíûé:'),
1084 ('MENU PLAYER GREEN', 'Green:',
1085 'Çåëåíûé:'),
1086 ('MENU PLAYER BLUE', 'Blue:',
1087 'Ñèíèé:'),
1089 ('MENU MODEL INFO', 'Model info',
1090 'Èíôîðìàöèÿ î ìîäåëè'),
1091 ('MENU MODEL ANIMATION', 'Change animation',
1092 'Ñìåíèòü àíèìàöèþ'),
1093 ('MENU MODEL CHANGE WEAPON', 'Change weapon',
1094 'Ñìåíèòü îðóæèå'),
1095 ('MENU MODEL ROTATE', 'Reflect model',
1096 'Ðàçâåðíóòü ìîäåëü'),
1097 ('MENU MODEL NAME', 'Name:',
1098 'Èìÿ:'),
1099 ('MENU MODEL AUTHOR', 'Author:',
1100 'Àâòîð:'),
1101 ('MENU MODEL COMMENT', 'Description:',
1102 'Êîììåíòàðèé:'),
1103 ('MENU MODEL OPTIONS', 'Model Options:',
1104 'Îïöèè ìîäåëè:'),
1105 ('MENU MODEL WEAPON', 'Weapon:',
1106 'Îðóæèå:'),
1108 ('MENU LANGUAGE RUSSIAN', 'Ðóññêèé',
1109 'Ðóññêèé'),
1110 ('MENU LANGUAGE ENGLISH', 'English',
1111 'English'),
1113 ('MENU PAUSE', 'Pause',
1114 'ÏÀÓÇÀ'),
1115 ('MENU YES', 'Yes',
1116 'Äà'),
1117 ('MENU NO', 'No',
1118 'Íåò'),
1119 ('MENU OK', 'OK',
1120 'OK'),
1121 ('MENU FINISH', 'Done',
1122 'Ãîòîâî'),
1124 ('MENU END GAME PROMT', 'Do you want to end the game?',
1125 'Âû äåéñòâèòåëüíî õîòèòå çàêîí÷èòü èãðó?'),
1126 ('MENU RESTART GAME PROMT', 'Do you want to restart level?',
1127 'Âû äåéñòâèòåëüíî õîòèòå íà÷àòü óðîâåíü çàíîâî?'),
1128 ('MENU EXIT PROMT', 'Chickening out already?',
1129 'Âû äåéñòâèòåëüíî õîòèòå âûéòè èç Doom 2D: Forever?'),
1130 ('MENU SET DEFAULT PROMT', 'Load default settings?',
1131 'Èçìåíèòü âñå íàñòðîéêè íà ñòàíäàðòíûå?'),
1132 ('MENU LOAD SAVED PROMT', 'Load saved settings?',
1133 'Âåðíóòü âñå íàñòðîéêè íà ñîõðàí¸ííûå?'),
1134 ('MENU ENTER PASSWORD', 'This server requires a password to join.',
1135 'Ýòîò ñåðâåð òðåáóåò ïàðîëü.'),
1137 ('NET SERVER', 'Server',
1138 'Ñåðâåð'),
1139 ('NET CLIENT', 'Client',
1140 'Êëèåíò'),
1141 ('NET ADDRESS', 'Address:',
1142 'Àäðåñ:'),
1143 ('NET PORT', 'Port:',
1144 'Ïîðò:'),
1145 ('NET SERVER NAME', 'Server name:',
1146 'Íàçâàíèå:'),
1147 ('NET SERVER PASSWORD', 'Password:',
1148 'Ïàðîëü:'),
1149 ('NET MAX CLIENTS', 'Player limit:',
1150 'Ëèìèò èãðîêîâ:'),
1151 ('NET USE MASTER', 'Public server:',
1152 'Ïóáëè÷íûé ñåðâåð:'),
1154 ('NET MSG', 'NET: ',
1155 'NET: '),
1156 ('NET MSG ERROR', 'NET: ERROR: ',
1157 'NET: ÎØÈÁÊÀ: '),
1158 ('NET MSG FERROR', 'NET: FATAL ERROR: ',
1159 'NET: ÊÐÈÒÈ×ÅÑÊÀß ÎØÈÁÊÀ: '),
1161 ('NET MSG HOST', 'Starting server on the port %d...',
1162 'Âêëþ÷àåì ñåðâåð íà ïîðòó %d...'),
1163 ('NET MSG HOST DISCALL', 'Disconnecting clients...',
1164 'Îòêëþ÷àåì èãðîêîâ...'),
1165 ('NET MSG HOST DIE', 'Shutting down server...',
1166 'Âûêëþ÷àåì ñåðâåð...'),
1167 ('NET MSG HOST CONN', 'Somebody is trying to connect from %s:%d.',
1168 'Ïîïûòêà ñîåäèíåíèÿ ñ àäðåñà %s:%d.'),
1169 ('NET MSG HOST REJECT', 'Connection rejected. Reason: ',
1170 ' ñîåäèíåíèè îòêàçàíî. Ïðè÷èíà: '),
1171 ('NET MSG HOST ADD', 'Client #%d added. Awaiting info...',
1172 'Äîáàâëåí êëèåíò ¹%d. Æäåì îòâåòà...'),
1173 ('NET MSG HOST DISC', 'Client #%d disconnected.',
1174 'Êëèåíò ¹%d îòêëþ÷åí.'),
1175 ('NET MSG CLIENT CONN', 'Trying to connect to %s:%d...',
1176 'Ïûòàåìñÿ ñîåäèíèòüñÿ ñ %s:%d...'),
1177 ('NET MSG CLIENT DONE', 'Connected!',
1178 'Ñîåäèíåíèå âûïîëíåíî.'),
1179 ('NET MSG CLIENT DISC', 'Disconnected.',
1180 'Îòêëþ÷åíèå âûïîëíåíî.'),
1181 ('NET MSG KICK', 'You were dropped from the game! Reason: ',
1182 'Âàñ âûáðîñèëî ñ ñåðâåðà! Ïðè÷èíà: '),
1184 ('NET MAP DL', 'Map %s not found. Downloading from the server...',
1185 'Êàðòà %s íå íàéäåíà. Ñêà÷èâàåì ñ ñåðâåðà...'),
1186 ('NET WAD DL', 'WAD %s not found. Downloading from the server...',
1187 'WAD %s íå íàéäåí. Ñêà÷èâàåì ñ ñåðâåðà...'),
1189 ('NET ERR ENET', 'Failed to init ENet!',
1190 'Íå ïîëó÷èëîñü ïîäêëþ÷èòü ENet!'),
1191 ('NET ERR HOST', 'Could not start server on port %d!',
1192 'Íå ïîëó÷èëîñü âêëþ÷èòü ñåðâåð íà ïîðòó %d!'),
1193 ('NET ERR INGAME', 'You are already in the net game!',
1194 'Âû óæå â ñåòåâîé èãðå!'),
1195 ('NET ERR CLIENT', 'Could not create client!',
1196 'Íå ïîëó÷èëîñü ñîçäàòü êëèåíò!'),
1197 ('NET ERR CONN', 'Connection failed!',
1198 'Íå âûøëî ñîåäèíèòüñÿ!'),
1199 ('NET ERR TIMEOUT', 'Connection timed out!',
1200 'Ñåðâåð íå îòâå÷àåò!'),
1201 ('NET ERR HASH', 'Your WAD is different from server''s!',
1202 'Âàø WAD îòëè÷àåòñÿ îò ñåðâåðíîãî!'),
1203 ('NET ERR NAME404', 'Player or client %s not found!',
1204 'Èãðîê èëè êëèåíò %s íå íàéäåí!'),
1206 ('NET DISC NONE', 'Server is down.',
1207 'Ñåðâåð íå îòâå÷àåò.'),
1208 ('NET DISC PROTOCOL', 'Net protocol version mismatch.',
1209 'Âåðñèè ñåòåâûõ ïðîòîêîëîâ íå ñîâïàäàþò.'),
1210 ('NET DISC VERSION', 'Game version mismatch.',
1211 'Âåðñèÿ èãðû íå ñîâïàäàåò ñ âåðñèåé ñåðâåðà.'),
1212 ('NET DISC FULL', 'Server is full.',
1213 'Ñåðâåð ïîëîí.'),
1214 ('NET DISC KICK', 'Kicked by server admin.',
1215 'Âû áûëè îòêëþ÷åíû àäìèíèñòðàòîðîì.'),
1216 ('NET DISC DOWN', 'Server is shutting down.',
1217 'Ñåðâåð âûêëþ÷àåòñÿ.'),
1218 ('NET DISC PASSWORD', 'Invalid password.',
1219 'Íåâåðíûé ïàðîëü.'),
1220 ('NET DISC TEMPBAN', 'You are banned until the round end.',
1221 'Âû çàáàíåíû äî êîíöà ðàóíäà.'),
1222 ('NET DISC BAN', 'You are banned. Contact the server administrator.',
1223 'Âû çàáàíåíû. Ñâÿæèòåñü ñ àäìèíèñòðàòîðîì ñåðâåðà.'),
1225 ('NET SLIST', 'Server list',
1226 'Ñïèñîê ñåðâåðîâ'),
1227 ('NET SLIST NOSERVERS', 'No active servers.',
1228 'Íåò àêòèâíûõ ñåðâåðîâ.'),
1229 ('NET SLIST SERVERS', ' server(s)',
1230 ' ñåðâåð(à, îâ)'),
1231 ('NET SLIST HELP', '[ENTER] - join [SPACE] - refresh [ESC] - quit',
1232 '[ENTER] - ïðèñîåäèíèòüñÿ [SPACE] - îáíîâèòü [ESC] - ìåíþ'),
1233 ('NET SLIST WAIT', 'Please wait...',
1234 'Ïîäîæäèòå...'),
1235 ('NET SLIST PING MS', ' ms',
1236 ' ìñ'),
1237 ('NET SLIST NO ACCESS', 'N/A',
1238 'Í/Ä'),
1240 ('NET SLIST FETCH', 'Fetching server list...',
1241 'Ïîëó÷àåì ñïèñîê ñåðâåðîâ...'),
1242 ('NET SLIST RETRIEVED', '%d servers retrieved.',
1243 'Ïîëó÷åíî ñåðâåðîâ: %d'),
1244 ('NET SLIST CONN', 'Connected to masterserver.',
1245 'Ïîäêëþ÷èëèñü ê ìàñòåðñåðâåðó.'),
1246 ('NET SLIST DISC', 'Disconnected from masterserver.',
1247 'Îòêëþ÷èëèñü îò ìàñòåðñåðâåðà.'),
1248 ('NET SLIST LOST', 'Lost connection with masterserver.',
1249 'Ñîåäèíåíèå ñ ìàñòåðñåðâåðîì ïîòåðÿíî.'),
1250 ('NET SLIST ERROR', 'Could not connect to masterserver.',
1251 'Íå óäàëîñü ñîåäèíèòüñÿ ñ ìàñòåðñåðâåðîì.'),
1253 ('NET RCON VALID PWD', 'RCON password accepted. You can use RCON now.',
1254 'Ïàðîëü ïðèíÿò. Òåïåðü âû ìîæåòå èñïîëüçîâàòü RCON.'),
1255 ('NET RCON INVALID PWD', 'RCON password is invalid.',
1256 'Íåâåðíûé RCON ïàðîëü.'),
1257 ('NET RCON NOAUTH', 'You are not authorized to use RCON.',
1258 'Âû íå èìååòå ïðàâà èñïîëüçîâàòü RCON.'),
1260 ('PLAYER DIED', '*** %s died',
1261 '*** %s ïîãèá'),
1262 ('PLAYER KILL', '*** %s was killed by %s',
1263 '*** %s áûë óáèò %s'),
1264 ('PLAYER KILL EXTRAHARD 1', '*** %s was fragged by %s',
1265 '*** %s áûë ðàçîðâàí íà êóñêè %s'),
1266 ('PLAYER KILL EXTRAHARD 2', '*** %s was murdered by %s',
1267 '*** %s áûë çâåðñêè óáèò %s'),
1268 ('PLAYER KILL ACID', '*** %s dissolved in acid',
1269 '*** %s óòîíóë â êèñëîòå'),
1270 ('PLAYER KILL TRAP', '*** %s got caught in a trap',
1271 '*** %s íàïîðîëñÿ íà ëîâóøêó'),
1272 ('PLAYER KILL FALL', '*** %s fell too far',
1273 '*** %s óëåòåë'),
1274 ('PLAYER KILL SELF', '*** %s killed himself',
1275 '*** %s óáèë ñåáÿ'),
1276 ('PLAYER KILL WATER', '*** %s drowned',
1277 '*** %s óòîíóë'),
1279 ('PLAYER KILL 2X', '%s has a double kill!',
1280 '%s óáèë äâîèõ îäíîâðåìåííî!'),
1281 ('PLAYER KILL 3X', '%s has a triple kill!',
1282 '%s óáèë òðîèõ îäíîâðåìåííî!'),
1283 ('PLAYER KILL 4X', '%s has a multi kill!',
1284 '%s óáèë êó÷ó íàðîäó ðàçîì!'),
1285 ('PLAYER KILL MX', '%s has a m-m-m-monster kill!!!',
1286 '%s ïðîñòî ì-ì-ì-ìîíñòð-óáèéöà!!!'),
1288 ('PLAYER JOIN', '%s joined the game.',
1289 '%s ïðèñîåäèíèëñÿ ê èãðå.'),
1290 ('PLAYER LEAVE', '%s left the game.',
1291 '%s ïîêèíóë èãðó.'),
1292 ('PLAYER KICK', '%s was kicked by admin.',
1293 '%s áûë îòêëþ÷åí àäìèíèñòðàòîðîì.'),
1294 ('PLAYER BAN', '%s was banned by admin.',
1295 '%s áûë çàáàíåí àäìèíèñòðàòîðîì.'),
1296 ('PLAYER NAME', '%s is now known as %s.',
1297 '%s òåïåðü èçâåñòåí êàê %s.'),
1298 ('PLAYER CHTEAM RED', '%s is now on Red.',
1299 '%s ïåðåøåë â Êðàñíóþ êîìàíäó.'),
1300 ('PLAYER CHTEAM BLUE', '%s is now on Blue.',
1301 '%s ïåðåøåë â Ñèíþþ êîìàíäó.'),
1303 ('PLAYER SPECT', 'Spectating',
1304 'Íàáëþäåíèå'),
1305 ('PLAYER SPECT1', '[USE] - spawn',
1306 '[ÎÒÊÐÛÒÜ] - îæèòü'),
1307 ('PLAYER SPECT1S', '(next round)',
1308 '(â ñëåäóþùåì ðàóíäå)'),
1309 ('PLAYER SPECT2', '[FIRE] - chase',
1310 '[ÎÃÎÍÜ] - ñëåäèòü'),
1311 ('PLAYER SPECT3', '[JUMP] - reset',
1312 '[ÏÐÛÆÎÊ] - ñáðîñ'),
1313 ('PLAYER SPECT4', 'You can''t spawn until current round ends.',
1314 'Âû íå ñìîæåòå âîçðîäèòüñÿ äî êîíöà ðàóíäà.'),
1316 ('PLAYER FLAG GET', '*** %s stole the %s flag!',
1317 '*** %s ñòàùèë %s ôëàã!'),
1318 ('PLAYER FLAG RETURN', '*** %s returned the %s flag!',
1319 '*** %s âåðíóë %s ôëàã!'),
1320 ('PLAYER FLAG CAPTURE', '*** %s captured the %s flag! (%s ms)',
1321 '*** %s ïðèíåñ %s ôëàã! (%s ìñ)'),
1322 ('PLAYER FLAG DROP', '*** %s dropped the %s flag!',
1323 '*** %s ïîòåðÿë %s ôëàã!'),
1324 ('PLAYER FLAG RED', 'red',
1325 'êðàñíûé'),
1326 ('PLAYER FLAG BLUE', 'blue',
1327 'ñèíèé'),
1329 ('PLAYER SCORE RED', 'Red',
1330 'Êðàñíàÿ'),
1331 ('PLAYER SCORE BLUE', 'Blue',
1332 'Ñèíÿÿ'),
1333 ('PLAYER SCORE TO RED', 'red',
1334 'êðàñíîé'),
1335 ('PLAYER SCORE TO BLUE', 'blue',
1336 'ñèíåé'),
1337 ('PLAYER SCORE ADD OWN', '*** %s got %d points for %s team!',
1338 '*** %s çàðàáîòàë %d î÷êîâ %s êîìàíäå!'),
1339 ('PLAYER SCORE SUB OWN', '*** %s lost %d points of %s team...',
1340 '*** %s ïîòåðÿë %d î÷êîâ %s êîìàíäû...'),
1341 ('PLAYER SCORE ADD ENEMY', '*** %s gave %d points to %s team...',
1342 '*** %s îòäàë %d î÷êîâ %s êîìàíäå...'),
1343 ('PLAYER SCORE SUB ENEMY', '*** %s took %d points from %s team!',
1344 '*** %s îòíÿë %d î÷êîâ ó %s êîìàíäû!'),
1345 ('PLAYER SCORE WIN OWN', '*** %s helped to win %s team!',
1346 '*** %s ïîìîã ïîáåäèòü %s êîìàíäå!'),
1347 ('PLAYER SCORE WIN ENEMY', '*** %s gave victory to %s team...',
1348 '*** %s îòäàë ïîáåäó %s êîìàíäå...'),
1349 ('PLAYER SCORE ADD TEAM', '*** %s team got %d points!',
1350 '*** %s êîìàíäà ïîëó÷àåò %d î÷êîâ!'),
1351 ('PLAYER SCORE SUB TEAM', '*** %s team loses %d points...',
1352 '*** %s êîìàíäà òåðÿåò %d î÷êîâ...'),
1354 ('MESSAGE FLAG GET', '%s flag stolen',
1355 '%s ÔËÀÃ ÓÊÐÀÄÅÍ'),
1356 ('MESSAGE FLAG RETURN', '%s flag returned',
1357 '%s ÔËÀà ÂÎÇÂÐÀÙ¨Í'),
1358 ('MESSAGE FLAG CAPTURE', '%s flag captured',
1359 '%s ÔËÀà ÇÀÕÂÀ×ÅÍ'),
1360 ('MESSAGE FLAG DROP', '%s flag dropped',
1361 '%s ÔËÀà ÏÎÒÅÐßÍ'),
1363 ('MESSAGE LMS LOSE', 'YOU''RE ALL LOSERS',
1364 'ÂÑÅ ÏÐÎÈÃÐÀËÈ'),
1365 ('MESSAGE LMS WIN', '%s WINS',
1366 'ÏÎÁÅÄÈÒÅËÜ - %s!'),
1367 ('MESSAGE LMS START', 'FIGHT!',
1368 'ÏÎÅÕÀËÈ!'),
1369 ('MESSAGE TLMS WIN', '%s TEAM WINS',
1370 '%s ÊÎÌÀÍÄÀ ÏÎÁÅÄÈËÀ!'),
1371 ('MESSAGE LMS SURVIVOR', 'YOU ARE THE LAST ONE ALIVE!',
1372 'ÂÑß ÍÀÄÅÆÄÀ ÒÎËÜÊÎ ÍÀ ÒÅÁß!'),
1374 ('MESSAGE SCORE ADD', '%s TEAM SCORES',
1375 '%s ÊÎÌÀÍÄÀ ÏÎËÓ×ÈËÀ Î×ÊÈ'),
1376 ('MESSAGE SCORE SUB', '%s TEAM LOST SCORES',
1377 '%s ÊÎÌÀÍÄÀ ÏÎÒÅÐßËÀ Î×ÊÈ'),
1379 ('MESSAGE VOTE INPROGRESS', 'A vote is already in progress for "%s".',
1380 'Óæå èäåò ãîëîñîâàíèå çà êîìàíäó "%s".'),
1381 ('MESSAGE VOTE STARTED', '%s called a vote for "%s".'#10'%d votes are required.',
1382 '%s íà÷àë ãîëîñîâàíèå çà êîìàíäó "%s".'#10'Äëÿ âûïîëíåíèÿ êîìàíäû òðåáóåòñÿ ãîëîñîâ: %d.'),
1383 ('MESSAGE VOTE PASSED', 'Vote passed. Executing "%s" in 5 seconds.',
1384 'Ãîëîñîâàíèå ïðîøëî óñïåøíî. Êîìàíäà "%s" áóäåò âûïîëíåíà ÷åðåç 5 ñåêóíä.'),
1385 ('MESSAGE VOTE FAILED', 'Vote failed: not enough people voted.',
1386 'Ãîëîñîâàíèå ïðîâàëèëîñü: íåäîñòàòî÷íî ãîëîñîâ "çà".'),
1387 ('MESSAGE VOTE VOTE', '%s votes "yes" (%d/%d votes total).',
1388 '%s ãîëîñóåò "çà" (%d/%d ãîëîñîâ âñåãî).'),
1389 ('MESSAGE VOTE REVOKED', '%s revokes his vote (%d/%d votes total).',
1390 '%s îòîçâàë ñâîé ãîëîñ (%d/%d ãîëîñîâ âñåãî).'),
1392 ('KEY UP', 'Up',
1393 'Ââåðõ'),
1394 ('KEY DOWN', 'Down',
1395 'Âíèç'),
1396 ('KEY LEFT', 'Left',
1397 'Âëåâî'),
1398 ('KEY RIGHT', 'Right',
1399 'Âïðàâî'),
1401 ('MONSTER DEMON', 'Pinky',
1402 'Äåìîíîì'),
1403 ('MONSTER IMP', 'Imp',
1404 'Áåñîì'),
1405 ('MONSTER ZOMBIE', 'Zombie',
1406 'Çîìáè'),
1407 ('MONSTER SERGEANT', 'Shotgun Guy',
1408 'Ñåðæàíòîì'),
1409 ('MONSTER CYBER', 'Cyberdemon',
1410 'Êèáåðäåìîíîì'),
1411 ('MONSTER CGUN', 'Commando',
1412 'Ïóëåìåò÷èêîì'),
1413 ('MONSTER BARON', 'Hell Baron',
1414 'Áàðîíîì àäà'),
1415 ('MONSTER KNIGHT', 'Hell Knight',
1416 'Ðûöàðåì àäà'),
1417 ('MONSTER CACODEMON', 'Cacodemon',
1418 'Êàêîäåìîíîì'),
1419 ('MONSTER SOUL', 'Lost Soul',
1420 'Îãíåííûì ÷åðåïîì'),
1421 ('MONSTER PAIN', 'Pain Elemental',
1422 'Àâèàáàçîé'),
1423 ('MONSTER MASTERMIND', 'Spider Mastermind',
1424 'Áîëüøèì ïàóêîì'),
1425 ('MONSTER SPIDER', 'Arachnotron',
1426 'Àðàõíîòðîíîì'),
1427 ('MONSTER MANCUBUS', 'Mancubus',
1428 'Ìàíêóáóñîì'),
1429 ('MONSTER REVENANT', 'Revenant',
1430 'Ñêåëåòîì'),
1431 ('MONSTER ARCHVILE', 'Arch-Vile',
1432 'Êîëäóíîì'),
1433 ('MONSTER FISH', 'Piranha',
1434 'Ðûáîé'),
1435 ('MONSTER BARREL', 'Barrel explosion',
1436 'âçðûâîì Áî÷êè'),
1437 ('MONSTER ROBOT', 'Robot',
1438 'Ðîáîòîì'),
1439 ('MONSTER PRIKOLIST', 'Prikolist',
1440 'Ïðèêîëèñòîì'),
1442 ('LOAD MUSIC', 'Music',
1443 'Ìóçûêà'),
1444 ('LOAD MODELS', 'Models',
1445 'Ìîäåëè'),
1446 ('LOAD MENUS', 'Menu sets',
1447 'Ìåíþ'),
1448 ('LOAD CONSOLE', 'Console',
1449 'Êîíñîëü'),
1450 ('LOAD ITEMS DATA', 'Items Data',
1451 'Ðåñóðñû ïðåäìåòîâ'),
1452 ('LOAD WEAPONS DATA', 'Weapons Data',
1453 'Ðåñóðñû îðóæèÿ'),
1454 ('LOAD GAME DATA', 'Game Data',
1455 'Ðåñóðñû ìîíñòðîâ è òä'),
1456 ('LOAD COLLIDE MAP', 'Collision Map',
1457 'Êàðòà ñòîëêíîâåíèé'),
1458 ('LOAD DOOR MAP', 'Door Map',
1459 'Êàðòà äâåðåé'),
1460 ('LOAD LIFT MAP', 'Streams Map',
1461 'Êàðòà ïîòîêîâ'),
1462 ('LOAD WATER MAP', 'Water Map',
1463 'Êàðòà âîäû'),
1464 ('LOAD WAD FILE', 'WAD File',
1465 'WAD-ôàéë'),
1466 ('LOAD MAP', 'Map',
1467 'Êàðòà'),
1468 ('LOAD TEXTURES', 'Textures',
1469 'Òåêñòóðû'),
1470 ('LOAD TRIGGERS', 'Triggers',
1471 'Òðèããåðû'),
1472 ('LOAD PANELS', 'Panels',
1473 'Ïàíåëè'),
1474 ('LOAD TRIGGERS TABLE', 'Trigger table',
1475 'Òàáëèöà òðèããåðîâ'),
1476 ('LOAD LINK TRIGGERS', 'Trigger links',
1477 'Ïðèâÿçêà òðèããåðîâ'),
1478 ('LOAD CREATE TRIGGERS', 'Trigger setup',
1479 'Ðàññòàíîâêà òðèããåðîâ'),
1480 ('LOAD ITEMS', 'Items',
1481 'Ïðåäìåòû'),
1482 ('LOAD CREATE ITEMS', 'Item setup',
1483 'Ñîçäàíèå ïðåäìåòîâ'),
1484 ('LOAD AREAS', 'Areas',
1485 'Îáëàñòè'),
1486 ('LOAD CREATE AREAS', 'Area setup',
1487 'Ñîçäàíèå îáëàñòåé'),
1488 ('LOAD MONSTERS', 'Monsters',
1489 'Ìîíñòðû'),
1490 ('LOAD CREATE MONSTERS', 'Monster setup',
1491 'Ñîçäàíèå ìîíñòðîâ'),
1492 ('LOAD MAP HEADER', 'Map Description',
1493 'Îïèñàíèå êàðòû'),
1494 ('LOAD SKY', 'Background',
1495 'Ôîí'),
1496 ('LOAD MONSTER TEXTURES', 'Monsters'' Textures',
1497 'Òåêñòóðû ìîíñòðîâ'),
1498 ('LOAD MONSTER SOUNDS', 'Monsters'' Sounds',
1499 'Çâóêè ìîíñòðîâ'),
1500 ('LOAD SAVE FILE', 'Save File',
1501 'Ôàéë ñîõðàíåíèÿ'),
1502 ('LOAD MAP STATE', 'Map State',
1503 'Íàñòðîéêà êàðòû'),
1504 ('LOAD ITEMS STATE', 'Items State',
1505 'Ðàññòàíîâêà ïðåäìåòîâ'),
1506 ('LOAD TRIGGERS STATE', 'Triggers State',
1507 'Óñòàíîâêà òðèããåðîâ'),
1508 ('LOAD WEAPONS STATE', 'Weapons State',
1509 'Ðàññòàíîâêà îðóæèÿ'),
1510 ('LOAD MONSTERS STATE', 'Monsters State',
1511 'Ðàññòàíîâêà ìîíñòðîâ'),
1512 ('LOAD CONNECT', 'Connecting ([ESC] to abort)',
1513 'Ñîåäèíåíèå ([ESC] - îòìåíèòü)'),
1514 ('LOAD SEND INFO', 'Sending client info',
1515 'Îòñûëêà èíôîðìàöèè'),
1516 ('LOAD WAIT INFO', 'Awaiting response ([ESC] to abort)',
1517 'Îæèäàíèå îòâåòà ([ESC] - îòìåíèòü)'),
1518 ('LOAD DL RES', 'Downloading resources',
1519 'Ñêà÷èâàíèå ðåñóðñîâ'),
1521 ('CREDITS CAP 1', 'Doom 2D: Forever',
1522 'Doom 2D: Forever'),
1523 ('CREDITS CAP 2', 'version %s, proto %d',
1524 'Âåðñèÿ %s, ïðîòîêîë %d'),
1525 ('CREDITS A 1', 'Project Author:',
1526 'Àâòîð ïðîåêòà:'),
1527 ('CREDITS A 1 1', 'rs.falcon',
1528 'rs.falcon'),
1529 ('CREDITS A 2', 'Programmers:',
1530 'Ïðîãðàììèñòû:'),
1531 ('CREDITS A 2 1', 'rs.falcon, PSS, PrimuS, Stas''M,',
1532 'rs.falcon, PSS, PrimuS, Stas''M,'),
1533 ('CREDITS A 2 2', 'ZURG, OutCast, ketmar',
1534 'ZURG, OutCast, ketmar'),
1535 ('CREDITS A 3', 'Artists:',
1536 'Õóäîæíèêè:'),
1537 ('CREDITS A 3 1', 'Jabberwock, Firehawk',
1538 'Jabberwock, Firehawk'),
1539 ('CREDITS A 4', 'Misc:',
1540 'Àññèñòåíòû:'),
1541 ('CREDITS A 4 1', 'Jabberwock, Black Doomer, DEAD, Grom PE',
1542 'Jabberwock, ×åðíûé Äóìåð, DEAD, Grom PE'),
1543 ('CREDITS CAP 3', 'Special thanks to:',
1544 'Áëàãîäàðèì:'),
1545 ('CREDITS CLO 1', '- Prikol Software for Doom 2D',
1546 '- Prikol Software çà Doom 2D'),
1547 ('CREDITS CLO 2', '- id Software for starting it all',
1548 '- id Software, áåç êîãî íè÷åãî áû íå áûëî'),
1549 ('CREDITS CLO 3', '- Everyone who helped our project',
1550 '- Âñåõ, êòî ïîìîãàë íàøåìó ïðîåêòó'),
1551 ('CREDITS CLO 4', 'www.doom2d.org, 2003-2016',
1552 'www.doom2d.org, 2003-2016'),
1554 ('MSG SHOW FPS ON', 'FPS counter enabled',
1555 'FPS ïîêàçûâàþòñÿ'),
1556 ('MSG SHOW FPS OFF', 'FPS counter disabled',
1557 'FPS íå ïîêàçûâàþòñÿ'),
1558 ('MSG GAMEMODE CURRENT', 'Game Mode: %s',
1559 'Ðåæèì èãðû: %s'),
1560 ('MSG GAMEMODE CHANGE', 'Game Mode: %s (switch to %s next round)',
1561 'Ðåæèì èãðû: %s (áóäåò %s â ñëåäóþùåì ðàóíäå)'),
1562 ('MSG FRIENDLY FIRE ON', 'Friendly Fire enabled',
1563 'Óðîí ñâîèõ âêëþ÷åí'),
1564 ('MSG FRIENDLY FIRE OFF', 'Friendly Fire disabled',
1565 'Óðîíà ñâîèõ íåò'),
1566 ('MSG WEAPONSTAY ON', 'Weapon Stay enabled',
1567 'Îðóæèå îñòàåòñÿ ïîñëå ïîäáîðà'),
1568 ('MSG WEAPONSTAY OFF', 'Weapon Stay disabled',
1569 'Îðóæèå èñ÷åçàåò ïîñëå ïîäáîðà'),
1570 ('MSG ALLOWEXIT ON', 'Exit enabled*',
1571 'Âûõîä ñ êàðòû ðàçðåøåí*'),
1572 ('MSG ALLOWEXIT OFF', 'Exit disabled*',
1573 'Âûõîä ñ êàðòû çàïðåùåí*'),
1574 ('MSG ALLOWMON ON', 'Monsters in DM enabled*',
1575 'Ìîíñòðû â DM âêëþ÷åíû*'),
1576 ('MSG ALLOWMON OFF', 'Monsters in DM disabled*',
1577 'Ìîíñòðû â DM âûêëþ÷åíû*'),
1578 ('MSG BOTSVSPLAYERS ON', 'Bots attack players',
1579 'Áîòû ïðîòèâ èãðîêîâ'),
1580 ('MSG BOTSVSPLAYERS OFF', 'Bots ignore players',
1581 'Áîòû çà èãðîêîâ'),
1582 ('MSG BOTSVSMONSTERS ON', 'Bots attack monsters',
1583 'Áîòû ïðîòèâ ìîíñòðîâ'),
1584 ('MSG BOTSVSMONSTERS OFF', 'Bots ignore monsters',
1585 'Áîòû èãíîðèðóþò ìîíñòðîâ'),
1586 ('MSG TIME ON', 'Time on',
1587 'Âðåìÿ ïîêàçûâàåòñÿ'),
1588 ('MSG TIME OFF', 'Time display off',
1589 'Âðåìÿ íå ïîêàçûâàåòñÿ'),
1590 ('MSG SCORE ON', 'Score display on',
1591 'Î÷êè ïîêàçûâàþòñÿ'),
1592 ('MSG SCORE OFF', 'Score display off',
1593 'Î÷êè íå ïîêàçûâàþòñÿ'),
1594 ('MSG STATS ON', 'Stats display on',
1595 'Ñòàòèñòèêà ïîêàçûâàåòñÿ'),
1596 ('MSG STATS OFF', 'Stats display off',
1597 'Ñòàòèñòèêà íå ïîêàçûâàåòñÿ'),
1598 ('MSG KILL MSGS ON', 'Death Messages on',
1599 'Ñîîáùåíèÿ î ñìåðòè åñòü'),
1600 ('MSG KILL MSGS OFF', 'Death Messages off',
1601 'Ñîîáùåíèé î ñìåðòè íåò'),
1602 ('MSG LIVES ON', 'Lives display on',
1603 'Æèçíè ïîêàçûâàþòñÿ'),
1604 ('MSG LIVES OFF', 'Lives display off',
1605 'Æèçíè íå ïîêàçûâàþòñÿ'),
1606 ('MSG SPECT HUD ON', 'Spectator HUD on',
1607 'Ñîñòîÿíèå íàáëþäàòåëÿ ïîêàçûâàåòñÿ'),
1608 ('MSG SPECT HUD OFF', 'Spectator HUD off',
1609 'Ñîñòîÿíèå íàáëþäàòåëÿ íå ïîêàçûâàåòñÿ'),
1610 ('MSG PING ON', 'Client ping display on',
1611 'Ïèíã êëèåíòà ïîêàçûâàåòñÿ'),
1612 ('MSG PING OFF', 'Client ping display off',
1613 'Ïèíã êëèåíòà íå ïîêàçûâàåòñÿ'),
1614 ('MSG NO WAD', 'WAD "%s" doesn''t exist!',
1615 'WAD ôàéë "%s" íå íàéäåí!'),
1616 ('MSG NO MAPS', 'WAD "%s" doesn''t contain any maps!',
1617 'WAD ôàéë "%s" íå ñîäåðæèò êàðò!'),
1618 ('MSG NO MAP', 'Map "%s" doesn''t exist!',
1619 'Êàðòà "%s" íå íàéäåíà!'),
1620 ('MSG NO MONSTER', 'Wrong monster type: "%s"!',
1621 '"%s" - íåò òàêîãî ìîíñòðà!'),
1622 ('MSG SCORE LIMIT', 'Score Limit is %d',
1623 'Ëèìèò î÷êîâ - %d'),
1624 ('MSG TIME LIMIT', 'Time Limit is %d:%.2d:%.2d',
1625 'Ëèìèò âðåìåíè - %d:%.2d:%.2d'),
1626 ('MSG LIVES', 'Max lives: %d',
1627 'Ìàêñ. æèçíåé ó èãðîêîâ: %d'),
1628 ('MSG WARMUP', 'Warmup time: %d seconds*',
1629 'Âðåìÿ íà ïîäãîòîâêó ê èãðå: %d ñåêóíä*'),
1630 ('MSG WARMUP START', '%d seconds until round start.',
1631 '%d ñåêóíä äî íà÷àëà ðàóíäà.'),
1632 ('MSG NEXTMAP SET', 'Next map: %s',
1633 'Ñëåäóþùàÿ êàðòà: %s'),
1634 ('MSG NEXTMAP UNSET', 'Next map is not set.',
1635 'Ñëåäóþùàÿ êàðòà íå çàäàíà.'),
1636 ('MSG ONMAPCHANGE', '* Changes to this variable will be applied upon next map change',
1637 '* Èçìåíåíèÿ âñòóïÿò â ñèëó ïîñëå ñëåäóþùåé ñìåíû êàðòû'),
1638 ('MSG NOT GAME', 'Command can be accepted in a game only.',
1639 'Êîìàíäà ïðèìåíèìà òîëüêî â èãðå.'),
1640 ('MSG NOT DEBUG', 'Command can be accepted in debug mode only.',
1641 'Êîìàíäà ïðèìåíèìà òîëüêî â ðåæèìå îòëàäêè.'),
1642 ('MSG GM UNAVAIL', 'This command is unavailable in the current game mode.',
1643 'Ýòà êîìàíäà íåäîñòóïíà â òåêóùåì ðåæèìå èãðû.'),
1644 ('MSG SERVERONLY', 'This command is for server only.',
1645 'Ýòà êîìàíäà äîñòóïíà òîëüêî â ðåæèìå ñåðâåðà.'),
1646 ('MSG NOCLIENTS', 'No clients connected.',
1647 'Íåò ïîäêëþ÷¸ííûõ êëèåíòîâ.'),
1648 ('MSG UNBAN OK', 'Client %s was unbanned.',
1649 'Áûë ñíÿò áàí ñ êëèåíòà %s.'),
1650 ('MSG UNBAN FAIL', 'Client %s not found in the ban list.',
1651 'Êëèåíò %s íå ÷èñëèòñÿ â ñïèñêå çàáàíåíûõ.'),
1653 ('TEXTURE ENDPIC', 'ENDGAME_EN',
1654 'ENDGAME_RU'),
1656 ('VERSION', 'Doom 2D: Forever %s',
1657 'Doom 2D: Forever %s'),
1659 ('FATAL ERROR', 'Fatal error: %s',
1660 'Êðèòè÷åñêàÿ îøèáêà: %s'),
1661 ('SIMPLE ERROR', 'Error: %s',
1662 'Îøèáêà: %s'),
1663 ('SYSTEM ERROR UNKNOWN', 'Something went seriously wrong. Guru meditation: $%.8x',
1664 'Õüþñòîí, ó íàñ íåèçâåñòíàÿ íàóêå ïðîáëåìà: $%.8x'),
1665 ('SYSTEM ERROR MSG', 'Something went wrong. Post Mortem: %s',
1666 'Ïðîèçîøëî ÷òî-òî íåëàäíîå: %s'),
1668 ('', '', '') );
1671 procedure SetupArrays();
1672 var
1673 i: LongWord;
1674 begin
1675 // Íàçâàíèÿ êëàâèø ïåðåìåùåíèÿ êóðñîðà:
1676 e_KeyNames[IK_UP] := _lc[I_KEY_UP] + ' ' + Chr(30);
1677 e_KeyNames[IK_LEFT] := _lc[I_KEY_LEFT] + ' ' + Chr(17);
1678 e_KeyNames[IK_RIGHT] := _lc[I_KEY_RIGHT] + ' ' + Chr(16);
1679 e_KeyNames[IK_DOWN] := _lc[I_KEY_DOWN] + ' ' + Chr(31);
1681 // Èìåíà ìîíñòðîâ â òâîðèòåëüíîì ïàäåæå:
1682 KilledByMonster[MONSTER_DEMON] := _lc[I_MONSTER_DEMON];
1683 KilledByMonster[MONSTER_IMP] := _lc[I_MONSTER_IMP];
1684 KilledByMonster[MONSTER_ZOMBY] := _lc[I_MONSTER_ZOMBIE];
1685 KilledByMonster[MONSTER_SERG] := _lc[I_MONSTER_SERGEANT];
1686 KilledByMonster[MONSTER_CYBER] := _lc[I_MONSTER_CYBER];
1687 KilledByMonster[MONSTER_CGUN] := _lc[I_MONSTER_CGUN];
1688 KilledByMonster[MONSTER_BARON] := _lc[I_MONSTER_BARON];
1689 KilledByMonster[MONSTER_KNIGHT] := _lc[I_MONSTER_KNIGHT];
1690 KilledByMonster[MONSTER_CACO] := _lc[I_MONSTER_CACODEMON];
1691 KilledByMonster[MONSTER_SOUL] := _lc[I_MONSTER_SOUL];
1692 KilledByMonster[MONSTER_PAIN] := _lc[I_MONSTER_PAIN];
1693 KilledByMonster[MONSTER_SPIDER] := _lc[I_MONSTER_MASTERMIND];
1694 KilledByMonster[MONSTER_BSP] := _lc[I_MONSTER_SPIDER];
1695 KilledByMonster[MONSTER_MANCUB] := _lc[I_MONSTER_MANCUBUS];
1696 KilledByMonster[MONSTER_SKEL] := _lc[I_MONSTER_REVENANT];
1697 KilledByMonster[MONSTER_VILE] := _lc[I_MONSTER_ARCHVILE];
1698 KilledByMonster[MONSTER_FISH] := _lc[I_MONSTER_FISH];
1699 KilledByMonster[MONSTER_BARREL] := _lc[I_MONSTER_BARREL];
1700 KilledByMonster[MONSTER_ROBO] := _lc[I_MONSTER_ROBOT];
1701 KilledByMonster[MONSTER_MAN] := _lc[I_MONSTER_PRIKOLIST];
1703 // ×èò-êîäû:
1704 for i := LongWord(Low(CheatEng)) to LongWord(High(CheatEng)) do
1705 begin
1706 CheatEng[TStrings_Locale(i)] := g_lang_default[TStrings_Locale(i)][LANGUAGE_ENGLISH_N];
1707 CheatRus[TStrings_Locale(i)] := g_lang_default[TStrings_Locale(i)][LANGUAGE_RUSSIAN_N];
1708 end;
1709 end;
1711 procedure g_Language_Load(fileName: String);
1712 var
1713 F: TextFile;
1714 key, value: String;
1715 i: TStrings_Locale;
1716 k: Integer;
1717 ok: Boolean;
1718 begin
1719 // Çíà÷åíèÿ ïî-óìîë÷àíèþ:
1720 for i := Low(TStrings_Locale) to High(TStrings_Locale) do
1721 _lc[i] := g_lang_default[i][LANGUAGE_ENGLISH_N];
1723 if FileExists(fileName) then
1724 begin
1725 AssignFile(F, fileName);
1726 ReSet(F);
1727 k := 0;
1729 // ×èòàåì ôàéë:
1730 while not EoF(F) do
1731 begin
1732 // ×èòàåì ñòðîêó:
1733 ReadLn(F, key);
1734 key := Trim(key);
1736 // Ñòðîêà - êëþ÷ ïåðåâîäà:
1737 if (key <> '') and
1738 (key[1] = '[') and
1739 (Pos(']', key) > 2) then
1740 begin
1741 key := UpperCase(Copy(key, 2, Pos(']', key)-2));
1743 // Ïðîïóñêàåì ïóñòûå ñòðîêè äî ñòðîêè - ïåðåâîäà:
1744 value := '';
1745 while (not EoF(F)) and (value = '') do
1746 begin
1747 ReadLn(F, value);
1748 value := Trim(value);
1749 end;
1751 // Åñòü ñòðîêà - ïåðåâîä:
1752 if value <> '' then
1753 begin
1754 // Èùåì èíäåêñ êëþ÷à ïåðåâîäà:
1755 ok := False;
1756 i := TStrings_Locale(k);
1758 // Îò òåêóùåãî ê ïåðâîìó:
1759 while i > Low(TStrings_Locale) do
1760 begin
1761 if g_lang_default[i][1] = key then
1762 begin
1763 _lc[i] := value;
1764 ok := True;
1765 Break;
1766 end;
1768 Dec(i);
1769 end;
1771 // Ïåðâûé:
1772 if not ok then
1773 begin
1774 i := Low(TStrings_Locale);
1776 if (g_lang_default[i][1] = key) then
1777 begin
1778 _lc[i] := value;
1779 ok := True;
1780 end;
1781 end;
1783 // Îò ñëóäóþùåãî çà òåêóùèì äî ïîñëåäíåãî:
1784 if not ok then
1785 begin
1786 i := TStrings_Locale(k);
1788 while i < High(TStrings_Locale) do
1789 begin
1790 Inc(i);
1792 if g_lang_default[i][1] = key then
1793 begin
1794 _lc[i] := value;
1795 Break;
1796 end;
1797 end;
1798 end;
1799 end;
1801 Inc(k);
1802 end;
1803 end;
1805 CloseFile(F);
1806 end
1807 else
1808 e_WriteLog('Language file "'+fileName+'" not found!', MSG_WARNING);
1810 SetupArrays();
1811 end;
1813 procedure g_Language_Set(lang: String);
1814 var
1815 i: TStrings_Locale;
1816 n: Byte;
1817 begin
1818 if lang = LANGUAGE_RUSSIAN then
1819 n := LANGUAGE_RUSSIAN_N
1820 else
1821 n := LANGUAGE_ENGLISH_N;
1823 for i := Low(TStrings_Locale) to High(TStrings_Locale) do
1824 _lc[i] := g_lang_default[i][n];
1826 SetupArrays();
1827 end;
1829 procedure g_Language_Dump(fileName: String);
1830 var
1831 F: TextFile;
1832 i: TStrings_Locale;
1833 begin
1834 AssignFile(F, fileName);
1835 ReWrite(F);
1837 for i := Low(TStrings_Locale) to High(TStrings_Locale) do
1838 WriteLn(F, _lc[i]);
1840 CloseFile(F);
1841 end;
1843 end.