1 (* Copyright (C) Doom 2D: Forever Developers
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, version 3 of the License ONLY.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
12 * You should have received a copy of the GNU General Public License
13 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 {$INCLUDE ../shared/a_modes.inc}
30 I_CONSOLE_ERROR_WRITE
,
35 I_GAME_ERROR_GET_SPAWN
,
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
,
52 I_GAME_ERROR_TR_SOUND
,
53 I_GAME_ERROR_SWITCH_TEXTURE
,
72 I_GAME_TEAM_SCORE_RED
,
73 I_GAME_TEAM_SCORE_BLUE
,
81 I_GAME_MONSTERS_TOTAL
,
90 I_GAME_CHEAT_CHANGEMAP
,
99 I_GAME_CHEAT_NOTARGET
,
100 I_GAME_CHEAT_NORELOAD
,
101 I_GAME_CHEAT_AIMLINE
,
102 I_GAME_CHEAT_AUTOMAP
,
129 I_MENU_CLIENT_CONNECT
,
131 I_MENU_VIDEO_OPTIONS
,
132 I_MENU_SOUND_OPTIONS
,
133 I_MENU_SAVED_OPTIONS
,
134 I_MENU_DEFAULT_OPTIONS
,
136 I_MENU_CONTROLS_OPTIONS
,
137 I_MENU_PLAYER_OPTIONS
,
138 I_MENU_LANGUAGE_OPTIONS
,
139 I_MENU_CHANGE_PLAYERS
,
157 I_MENU_GAME_TYPE_CTF
,
158 I_MENU_GAME_TYPE_TDM
,
159 I_MENU_GAME_TYPE_COOP
,
160 I_MENU_GAME_TYPE_SINGLE
,
165 I_MENU_RESPAWN_ITEMS
,
166 I_MENU_DEATHMATCH_KEYS
,
169 I_MENU_ENABLE_MONSTERS
,
171 I_MENU_BOTS_VS_PLAYERS
,
172 I_MENU_BOTS_VS_MONSTERS
,
179 I_MENU_MAP_DESCRIPTION
,
184 I_MENU_SERVER_PLAYERS
,
186 I_MENU_INTER_MISSION_FAIL
,
187 I_MENU_INTER_ROUND_OVER
,
188 I_MENU_INTER_LEVEL_COMPLETE
,
192 I_MENU_INTER_SECRETS
,
193 I_MENU_INTER_NOTICE_TAB
,
194 I_MENU_INTER_NOTICE_MAP
,
195 I_MENU_INTER_NOTICE_SPACE
,
196 I_MENU_INTER_NOTICE_TIME
,
204 I_MENU_PLAYER_1_WEAPONS
,
205 I_MENU_PLAYER_2_WEAPONS
,
207 I_MENU_CONTROL_JOYSTICKS
,
208 I_MENU_CONTROL_DEADZONE
,
210 I_MENU_CONTROL_TOUCH
,
211 I_MENU_CONTROL_TOUCH_ALT
,
212 I_MENU_CONTROL_TOUCH_FIRE
,
213 I_MENU_CONTROL_TOUCH_SIZE
,
214 I_MENU_CONTROL_TOUCH_OFFSET
,
216 I_MENU_CONTROL_GLOBAL
,
217 I_MENU_CONTROL_SCREENSHOT
,
220 I_MENU_CONTROL_TEAMCHAT
,
222 I_MENU_CONTROL_RIGHT
,
228 I_MENU_CONTROL_NEXT_WEAPON
,
229 I_MENU_CONTROL_PREV_WEAPON
,
230 I_MENU_CONTROL_STRAFE
,
236 I_MENU_COUNT_VERYBIG
,
238 I_MENU_GAME_BLOOD_COUNT
,
239 I_MENU_GAME_MAX_GIBS
,
240 I_MENU_GAME_MAX_CORPSES
,
241 I_MENU_GAME_GIBS_COUNT
,
242 I_MENU_GAME_MAX_SHELLS
,
243 I_MENU_GAME_BLOOD_TYPE
,
244 I_MENU_GAME_BLOOD_TYPE_SIMPLE
,
245 I_MENU_GAME_BLOOD_TYPE_ADV
,
246 I_MENU_GAME_CORPSE_TYPE
,
247 I_MENU_GAME_CORPSE_TYPE_SIMPLE
,
248 I_MENU_GAME_CORPSE_TYPE_ADV
,
249 I_MENU_GAME_GIBS_TYPE
,
250 I_MENU_GAME_GIBS_TYPE_SIMPLE
,
251 I_MENU_GAME_GIBS_TYPE_ADV
,
252 I_MENU_GAME_PARTICLES_COUNT
,
253 I_MENU_GAME_SCREEN_FLASH
,
254 I_MENU_GAME_BACKGROUND
,
255 I_MENU_GAME_MESSAGES
,
256 I_MENU_GAME_REVERT_PLAYERS
,
257 I_MENU_GAME_CHAT_BUBBLE
,
258 I_MENU_GAME_CHAT_TYPE_NONE
,
259 I_MENU_GAME_CHAT_TYPE_SIMPLE
,
260 I_MENU_GAME_CHAT_TYPE_ADV
,
261 I_MENU_GAME_CHAT_TYPE_COLOR
,
262 I_MENU_GAME_CHAT_TYPE_TEXTURE
,
263 I_MENU_GAME_PLAYER_INDICATOR
,
264 I_MENU_GAME_INDICATOR_NONE
,
265 I_MENU_GAME_INDICATOR_OWN
,
266 I_MENU_GAME_INDICATOR_ALL
,
267 I_MENU_GAME_INDICATOR_STYLE
,
268 I_MENU_GAME_INDICATOR_ARROW
,
269 I_MENU_GAME_INDICATOR_NAME
,
270 I_MENU_GAME_SCALE_FACTOR
,
272 I_MENU_VIDEO_RESOLUTION
,
275 I_MENU_VIDEO_FILTER_SKY
,
276 I_MENU_VIDEO_LEGACY_COMPATIBLE
,
277 I_MENU_VIDEO_NEED_RESTART
,
279 I_MENU_RESOLUTION_SELECT
,
280 I_MENU_RESOLUTION_CURRENT
,
281 I_MENU_RESOLUTION_LIST
,
282 I_MENU_RESOLUTION_FULLSCREEN
,
283 I_MENU_RESOLUTION_APPLY
,
285 I_MENU_SOUND_MUSIC_LEVEL
,
286 I_MENU_SOUND_SOUND_LEVEL
,
287 I_MENU_SOUND_MAX_SIM_SOUNDS
,
288 I_MENU_SOUND_INACTIVE_SOUNDS
,
289 I_MENU_SOUND_INACTIVE_SOUNDS_ON
,
290 I_MENU_SOUND_INACTIVE_SOUNDS_OFF
,
291 I_MENU_SOUND_ANNOUNCE
,
294 I_MENU_ANNOUNCE_NONE
,
296 I_MENU_ANNOUNCE_MEPLUS
,
303 I_MENU_PLAYER_TEAM_RED
,
304 I_MENU_PLAYER_TEAM_BLUE
,
311 I_MENU_MODEL_ANIMATION
,
312 I_MENU_MODEL_CHANGE_WEAPON
,
316 I_MENU_MODEL_COMMENT
,
317 I_MENU_MODEL_OPTIONS
,
320 I_MENU_LANGUAGE_RUSSIAN
,
321 I_MENU_LANGUAGE_ENGLISH
,
329 I_MENU_END_GAME_PROMT
,
330 I_MENU_RESTART_GAME_PROMT
,
332 I_MENU_SET_DEFAULT_PROMT
,
333 I_MENU_LOAD_SAVED_PROMT
,
334 I_MENU_ENTERPASSWORD
,
341 I_NET_SERVER_PASSWORD
,
350 I_NET_MSG_HOST_DISCALL
,
353 I_NET_MSG_HOST_REJECT
,
356 I_NET_MSG_CLIENT_CONN
,
357 I_NET_MSG_CLIENT_DONE
,
358 I_NET_MSG_CLIENT_DISC
,
361 I_NET_MSG_TIMEOUT_WARN
,
386 I_NET_SLIST_NOSERVERS
,
391 I_NET_SLIST_NO_ACCESS
,
393 I_NET_SLIST_URGENT_CONT
,
396 I_NET_SLIST_RETRIEVED
,
403 I_NET_RCON_PWD_VALID
,
404 I_NET_RCON_PWD_INVALID
,
409 I_PLAYER_KILL_EXTRAHARD_1
,
410 I_PLAYER_KILL_EXTRAHARD_2
,
428 I_PLAYER_CHTEAM_BLUE
,
439 I_PLAYER_FLAG_RETURN
,
440 I_PLAYER_FLAG_CAPTURE
,
447 I_PLAYER_SCORE_TO_RED
,
448 I_PLAYER_SCORE_TO_BLUE
,
449 I_PLAYER_SCORE_ADD_OWN
,
450 I_PLAYER_SCORE_SUB_OWN
,
451 I_PLAYER_SCORE_ADD_ENEMY
,
452 I_PLAYER_SCORE_SUB_ENEMY
,
453 I_PLAYER_SCORE_WIN_OWN
,
454 I_PLAYER_SCORE_WIN_ENEMY
,
455 I_PLAYER_SCORE_ADD_TEAM
,
456 I_PLAYER_SCORE_SUB_TEAM
,
459 I_MESSAGE_FLAG_RETURN
,
460 I_MESSAGE_FLAG_CAPTURE
,
467 I_MESSAGE_LMS_SURVIVOR
,
472 I_MESSAGE_VOTE_INPROGRESS
,
473 I_MESSAGE_VOTE_STARTED
,
474 I_MESSAGE_VOTE_PASSED
,
475 I_MESSAGE_VOTE_FAILED
,
477 I_MESSAGE_VOTE_REVOKED
,
495 I_MONSTER_MASTERMIND
,
521 I_LOAD_TRIGGERS_TABLE
,
522 I_LOAD_LINK_TRIGGERS
,
523 I_LOAD_CREATE_TRIGGERS
,
529 I_LOAD_CREATE_MONSTERS
,
532 I_LOAD_MONSTER_TEXTURES
,
533 I_LOAD_MONSTER_SOUNDS
,
537 I_LOAD_TRIGGERS_STATE
,
538 I_LOAD_WEAPONS_STATE
,
539 I_LOAD_MONSTERS_STATE
,
566 I_MSG_GAMEMODE_CURRENT
,
567 I_MSG_GAMEMODE_CHANGE
,
568 I_MSG_FRIENDLY_FIRE_ON
,
569 I_MSG_FRIENDLY_FIRE_OFF
,
571 I_MSG_WEAPONSTAY_OFF
,
578 I_MSG_RESPAWNITEMS_ON
,
579 I_MSG_RESPAWNITEMS_OFF
,
580 I_MSG_BOTSVSPLAYERS_ON
,
581 I_MSG_BOTSVSPLAYERS_OFF
,
582 I_MSG_BOTSVSMONSTERS_ON
,
583 I_MSG_BOTSVSMONSTERS_OFF
,
601 I_MSG_NO_MAP_FALLBACK
,
620 I_MSG_BAD_SAVE_VERSION
,
628 I_SYSTEM_ERROR_UNKNOWN
,
634 LANGUAGE_RUSSIAN
= 'Russian';
635 LANGUAGE_ENGLISH
= 'English';
636 LANGUAGE_RUSSIAN_N
= 3;
637 LANGUAGE_ENGLISH_N
= 2;
640 _lc
: Array [TStrings_Locale
] of String;
641 KilledByMonster
: Array [MONSTER_DEMON
..MONSTER_MAN
] of String;
642 CheatEng
: Array [I_GAME_CHEAT_GODMODE
..I_GAME_CHEAT_AUTOMAP
] of String;
643 CheatRus
: Array [I_GAME_CHEAT_GODMODE
..I_GAME_CHEAT_AUTOMAP
] of String;
645 procedure g_Language_Load(fileName
: String);
646 procedure g_Language_Set(lang
: String);
647 procedure g_Language_Dump(fileName
: String);
652 SysUtils
, g_gui
, g_basic
, e_log
, e_input
;
655 g_lang_default
: Array [TStrings_Locale
] of Array [1..3] of String = (
656 ('CONSOLE EXEC', 'Executing script: "%s"',
657 'Âûïîëíÿåòñÿ ñêðèïò: "%s"'),
658 ('CONSOLE DUMPED', 'Saved to "%s"',
660 ('CONSOLE ERROR CALL', 'Console loop detected. Execution terminated.',
661 'Îáíàðóæåí áåñêîíå÷íûé öèêë. Ñêðèïò îñòàíîâëåí.'),
662 ('CONSOLE ERROR READ', 'Error reading file "%s"',
663 'Îøèáêà ïðè ÷òåíèè ôàéëà "%s"'),
664 ('CONSOLE ERROR WRITE', 'Error writing file "%s"',
665 'Îøèáêà ïðè çàïèñè â ôàéë "%s"'),
666 ('CONSOLE SCREENSHOT', 'Screenshot saved to "%s"',
667 'Ñêðèíøîò ñîõðàí¸í â "%s"'),
668 ('CONSOLE UNKNOWN', 'Unknown command "%s"',
669 'Íåèçâåñòíàÿ êîìàíäà "%s"'),
670 ('CONSOLE WELCOME', 'Welcome to Doom 2D: Forever %s',
671 'Äîáðî ïîæàëîâàòü â Doom 2D: Forever %s'),
673 ('GAME ERROR GET SPAWN', 'Can''t find a spawn point!',
674 'Íå óäàëîñü ïîëó÷èòü òî÷êó âîçðîæäåíèÿ!'),
675 ('GAME ERROR CTF', 'There are no flags on this map!',
676 'Íà êàðòå íåò ôëàãîâ!'),
677 ('GAME ERROR MAP WAD', 'Can''t read map WAD "%s"',
678 'Íå óäàëîñü çàãðóçèòü WAD êàðòû: "%s"'),
679 ('GAME ERROR MAP RES', 'Can''t load map resource "%s"',
680 'Íå óäàëîñü çàãðóçèòü ðåñóðñ êàðòû èç WAD: "%s"'),
681 ('GAME ERROR MAP LOAD', 'Can''t load map "%s"',
682 'Íå óäàëîñü çàãðóçèòü êàðòó "%s"'),
683 ('GAME ERROR MAP SELECT', 'Map reading error!',
684 'Êàðòà íå ÷èòàåòñÿ!'),
685 ('GAME ERROR PLAYER CREATE', 'Can''t create player #%d',
686 'Íå óäàëîñü ñîçäàòü Èãðîêà #%d'),
687 ('GAME ERROR TEXTURE ANIM', 'Can''t create animated texture "%s"',
688 'Íå ïîëó÷èëîñü ñîçäàòü àíèìèðîâàííóþ òåêñòóðó "%s"'),
689 ('GAME ERROR TEXTURE SIMPLE', 'Can''t create ordinary Texture "%s"',
690 'Íå ïîëó÷èëîñü ñîçäàòü îáû÷íóþ òåêñòóðó "%s"'),
691 ('GAME ERROR MODEL FALLBACK', 'Model "%s" not found, using default model instead',
692 'Ìîäåëü "%s" íå íàéäåíà, èñïîëüçóåòñÿ ìîäåëü ïî óìîë÷àíèþ'),
693 ('GAME ERROR MODEL', 'Model "%s" not found',
694 'Ìîäåëü "%s" íå íàéäåíà'),
695 ('GAME ERROR SKY', 'Can''t load sky "%s"',
696 'Íå óäàëîñü çàãðóçèòü íåáî "%s"'),
697 ('GAME ERROR MUSIC', 'Can''t load music "%s"',
698 'Íå óäàëîñü çàãðóçèòü ìóçûêó "%s"'),
699 ('GAME ERROR SAVE', 'Saving state error!',
700 'Îøèáêà âî âðåìÿ ñîõðàíåíèÿ!'),
701 ('GAME ERROR LOAD', 'Loading state error!',
702 'Îøèáêà âî âðåìÿ çàãðóçêè!'),
703 ('GAME ERROR SOUND', 'Can''t load sound "%s"',
704 'Íå óäàëîñü çàãðóçèòü çâóê "%s"'),
705 ('GAME ERROR FRAMES', 'Can''t load animation''s frame list "%s"',
706 'Íå óäàëîñü çàãðóçèòü ñïèñîê êàäðîâ àíèìàöèè: "%s"'),
707 ('GAME ERROR TR SOUND', 'Can''t load sound "%s:%s" for trigger',
708 'Íå óäàëîñü çàãðóçèòü çâóê "%s:%s" äëÿ òðèããåðà'),
709 ('GAME ERROR SWITCH TEXTURE', 'Texture switching error: no animation',
710 'Îøèáêà ïðè ïåðåêëþ÷åíèè òåêñòóðû: íåò àíèìàöèè'),
712 ('GAME PLAYER NAME', 'Player name',
714 ('GAME GAME TIME', 'Game time:',
716 ('GAME PING', 'Ping (Loss)',
718 ('GAME PING MS', '%d ms (%d%%)',
720 ('GAME PING HUD', 'Ping: ',
722 ('GAME FRAGS', 'Frags',
724 ('GAME DEATHS', 'Deaths',
726 ('GAME DM', 'Deathmatch',
728 ('GAME CTF', 'Capture the Flag',
730 ('GAME TDM', 'Team Deathmatch',
732 ('GAME COOP', 'Cooperative',
734 ('GAME LMS', 'Last Man Standing',
735 'Last Man Standing'),
736 ('GAME TLMS', 'Team LMS',
738 ('GAME SURV', 'Survival',
740 ('GAME FRAG LIMIT', 'Frag Limit: %d',
742 ('GAME SCORE LIMIT', 'Score Limit: %d',
744 ('GAME TIME LIMIT', 'Time Limit: %d:%.2d:%.2d',
745 'ËÈÌÈÒ ÂÐÅÌÅÍÈ: %d:%.2d:%.2d'),
746 ('GAME TEAM SCORE RED', 'Red Team (%d)',
747 'ÊÐÀÑÍÀß ÊÎÌÀÍÄÀ (%d)'),
748 ('GAME TEAM SCORE BLUE', 'Blue Team (%d)',
749 'ÑÈÍßß ÊÎÌÀÍÄÀ (%d)'),
750 ('GAME TEAM RED', 'Red',
752 ('GAME TEAM BLUE', 'Blue',
754 ('GAME WIN RED', 'Red Team Wins!',
755 'ÏÎÁÅÄÈËÀ ÊÐÀÑÍÀß ÊÎÌÀÍÄÀ!'),
756 ('GAME WIN BLUE', 'Blue Team Wins!',
757 'ÏÎÁÅÄÈËÀ ÑÈÍßß ÊÎÌÀÍÄÀ!'),
758 ('GAME WIN DRAW', 'Draw!',
760 ('GAME MONSTERS', 'Monsters killed:',
762 ('GAME SECRETS', 'Secrets found:',
763 'Ñåêðåòîâ íàéäåíî:'),
764 ('GAME MONSTERS TOTAL', 'Total monsters killed:',
765 'Âñåãî ìîíñòðîâ óáèòî:'),
766 ('GAME SECRETS TOTAL', 'Total secrets found:',
767 'Âñåãî ñåêðåòîâ íàéäåíî:'),
769 ('GAME CHEAT GODMODE', 'MACLEOD',
771 ('GAME CHEAT WEAPONS', 'RAMBO',
773 ('GAME CHEAT HEALTH', 'TANK',
775 ('GAME CHEAT DEATH', 'IDDQD',
777 ('GAME CHEAT DOORS', 'SESAME',
779 ('GAME CHEAT NEXTMAP', 'GOODBYE',
781 ('GAME CHEAT CHANGEMAP', 'GOTO',
783 ('GAME CHEAT FLY', 'WHITEEAGLE',
785 ('GAME CHEAT JUMPS', 'BULLFROG',
787 ('GAME CHEAT SPEED', 'FORMULA1',
789 ('GAME CHEAT SUIT', 'CONDOM',
791 ('GAME CHEAT AIR', 'AQUAMAN',
793 ('GAME CHEAT BERSERK', 'PURELOVE',
795 ('GAME CHEAT JETPACK', 'LUCYINTHESKY',
797 ('GAME CHEAT NOCLIP', 'CASPER',
799 ('GAME CHEAT NOTARGET', 'JAMESBOND',
801 ('GAME CHEAT NORELOAD', 'INFERNO',
803 ('GAME CHEAT AIMLINE', 'SNIPER',
805 ('GAME CHEAT AUTOMAP', 'ID2DT',
808 ('GAME WEAPON0', 'Fist',
810 ('GAME WEAPON1', 'Chainsaw',
812 ('GAME WEAPON2', 'Pistol',
814 ('GAME WEAPON3', 'Shotgun',
816 ('GAME WEAPON4', 'Super Shotgun',
818 ('GAME WEAPON5', 'Chaingun',
820 ('GAME WEAPON6', 'Rocket Launcher',
822 ('GAME WEAPON7', 'Plasma Gun',
824 ('GAME WEAPON8', 'BFG9000',
826 ('GAME WEAPON9', 'Super Chaingun',
828 ('GAME WEAPON10', 'Flamethrower',
831 ('MENU START GAME', 'Start Game',
833 ('MENU MAIN MENU', 'Menu',
835 ('MENU NEW GAME', 'New Game',
837 ('MENU MULTIPLAYER', 'Multiplayer',
839 ('MENU OPTIONS', 'Options',
841 ('MENU AUTHORS', 'Credits',
843 ('MENU EXIT', 'Exit',
845 ('MENU 1 PLAYER', 'Single player',
847 ('MENU 2 PLAYERS', 'Two players',
849 ('MENU CUSTOM GAME', 'Custom game',
851 ('MENU CAMPAIGN', 'Campaign select',
853 ('MENU START SERVER', 'Start server',
855 ('MENU START CLIENT', 'Join game',
857 ('MENU CLIENT CONNECT', 'Connect',
859 ('MENU SELECT MAP', 'Map',
861 ('MENU VIDEO OPTIONS', 'Video',
863 ('MENU SOUND OPTIONS', 'Sound',
865 ('MENU SAVED OPTIONS', 'Saved options',
867 ('MENU DEFAULT OPTIONS', 'Default options',
869 ('MENU GAME OPTIONS', 'Gameplay',
871 ('MENU CONTROLS OPTIONS', 'Controls',
873 ('MENU PLAYER OPTIONS', 'Players',
875 ('MENU LANGUAGE OPTIONS', 'Language',
877 ('MENU CHANGE PLAYERS', 'Change players',
879 ('MENU LOAD GAME', 'Load game',
881 ('MENU SAVE GAME', 'Save game',
883 ('MENU END GAME', 'End game',
885 ('MENU RESTART', 'Restart game',
887 ('MENU SET GAME', 'Setup game',
890 ('MENU JOIN RED', 'Join Red',
892 ('MENU JOIN BLUE', 'Join Blue',
894 ('MENU JOIN GAME', 'Join Game',
896 ('MENU ADD PLAYER 2', 'Add Player 2',
897 'ÄÎÁÀÂÈÒÜ ÂÒÎÐÎÃÎ ÈÃÐÎÊÀ'),
898 ('MENU REM PLAYER 2', 'Remove Player 2',
899 'ÓÁÐÀÒÜ ÂÒÎÐÎÃÎ ÈÃÐÎÊÀ'),
900 ('MENU SPECTATE', 'Spectate',
903 ('MENU STATISTICS', 'Statistics',
907 ('MENU GAME TYPE', 'Game type:',
909 ('MENU GAME TYPE DM', 'DM',
911 ('MENU GAME TYPE CTF', 'CTF',
913 ('MENU GAME TYPE TDM', 'TDM',
915 ('MENU GAME TYPE COOP', 'COOP',
917 ('MENU GAME TYPE SINGLE', 'SINGLE',
919 ('MENU TIME LIMIT', 'Time Limit:',
921 ('MENU GOAL LIMIT', 'Score Limit:',
923 ('MENU MAX LIVES', 'Lives:',
925 ('MENU TEAM DAMAGE', 'Friendly Fire:',
927 ('MENU RESPAWN ITEMS', 'Respawn Items:',
928 'Ðåñïàâíèòü ïðåäìåòû:'),
929 ('MENU DEATHMATCH KEYS', 'Give all keys in DM:',
931 ('MENU ENABLE EXITS', 'Enable Exit:',
933 ('MENU WEAPONS STAY', 'Weapons stay:',
935 ('MENU ENABLE MONSTERS', 'Enable monsters:',
937 ('MENU BOTS VS', 'Bots fight with:',
939 ('MENU BOTS VS PLAYERS', 'Players',
941 ('MENU BOTS VS MONSTERS', 'Monsters',
943 ('MENU BOTS VS ALL', 'Everybody',
946 ('MENU MAP WAD', 'Select WAD:',
948 ('MENU MAP RESOURCE', 'Select Map:',
950 ('MENU MAP NAME', 'Name:',
952 ('MENU MAP AUTHOR', 'Author:',
954 ('MENU MAP DESCRIPTION', 'Description:',
956 ('MENU MAP SIZE', 'Size:',
958 ('MENU PLAYERS', 'Players:',
960 ('MENU PLAYERS ONE', 'One',
962 ('MENU PLAYERS TWO', 'Two',
964 ('MENU SERVER PLAYERS', 'Local Players:',
965 'Ëîêàëüíûå èãðîêè:'),
967 ('MENU INTER MISSION FAIL', 'Mission Failed',
969 ('MENU INTER ROUND OVER', 'Round Over',
971 ('MENU INTER LEVEL COMPLETE', 'Level Complete',
973 ('MENU INTER TIME', 'Time:',
975 ('MENU INTER KILLS', 'Kills:',
977 ('MENU INTER KPM', 'Kills-per-minute:',
978 'ÓÁÈÉÑÒÂ Â ÌÈÍÓÒÓ:'),
979 ('MENU INTER SECRETS', 'Secrets found:',
981 ('MENU INTER NOTICE TAB', 'Press [TAB] to view stats',
982 'Íàæìèòå [TAB] äëÿ ïðîñìîòðà ñòàòèñòèêè'),
983 ('MENU INTER NOTICE MAP', 'Please wait until map change',
984 'Ïîäîæäèòå, ïîêà ñìåíèòñÿ êàðòà íà ñåðâåðå'),
985 ('MENU INTER NOTICE SPACE', 'Press [SPACE] to continue',
986 'Íàæìèòå [ÏÐÎÁÅË], ÷òîáû ïðîäîëæèòü'),
987 ('MENU INTER NOTICE TIME', '%d sec till the next round',
988 'Îñòàëîñü %d ñåê äî ñëåäóþùåãî ðàóíäà'),
989 ('MENU LOADING', 'Loading...',
991 ('MENU PLAYER 1', 'Player 1',
993 ('MENU PLAYER 2', 'Player 2',
995 ('MENU PLAYER 1 KBD', 'Player 1 Keys',
996 'Ïåðâûé èãðîê, êëàâèàòóðà'),
997 ('MENU PLAYER 2 KBD', 'Player 2 Keys',
998 'Âòîðîé èãðîê, êëàâèàòóðà'),
999 ('MENU PLAYER 1 ALT', 'Player 1 GAMEPAD',
1000 'Ïåðâûé èãðîê, GAMEPAD'),
1001 ('MENU PLAYER 2 ALT', 'Player 2 GAMEPAD',
1002 'Âòîðîé èãðîê, GAMEPAD'),
1003 ('MENU PLAYER 1 WEAPONS', 'Player 1 Weapons',
1004 'Ïåðâûé èãðîê, îðóæèå'),
1005 ('MENU PLAYER 2 WEAPONS', 'Player 2 Weapons',
1006 'Âòîðîé èãðîê, îðóæèå'),
1008 ('MENU CONTROL JOYSTICKS', 'Joystick Settings',
1009 'Íàñòðîéêè äæîéñòèêîâ'),
1010 ('MENU CONTROL DEADZONE', 'Joystick %d Deadzone',
1011 '̸ðòâàÿ çîíà äæîéñòèêà %d'),
1013 ('MENU CONTROL TOUCH', 'Touchscreen Settings',
1014 'Íàñòðîéêè ñåíñîðíîãî ýêðàíà'),
1015 ('MENU CONTROL TOUCH ALT', 'Alternative layout:',
1016 'Àëüòåðíàòèâíàÿ ðàñêëàäêà:'),
1017 ('MENU CONTROL TOUCH FIRE', 'Shoot Up/Down:',
1018 'Ñòðåëÿòü ââåðõ/âíèç:'),
1019 ('MENU CONTROL TOUCH SIZE', 'Button size:',
1021 ('MENU CONTROL TOUCH OFFSET', 'Vertical offset:',
1022 'Âåðòèêàëüíîå ñìåùåíèå:'),
1024 ('MENU CONTROL GLOBAL', 'Global Controls',
1025 'ÎÁÙÅÅ ÓÏÐÀÂËÅÍÈÅ'),
1026 ('MENU CONTROL SCREENSHOT', 'Screenshot:',
1028 ('MENU CONTROL STAT', 'Statistics:',
1030 ('MENU CONTROL CHAT', 'Chat:',
1032 ('MENU CONTROL TEAMCHAT', 'Team chat:',
1034 ('MENU CONTROL LEFT', 'Left:',
1036 ('MENU CONTROL RIGHT', 'Right:',
1038 ('MENU CONTROL UP', 'Up:',
1040 ('MENU CONTROL DOWN', 'Down:',
1042 ('MENU CONTROL JUMP', 'Jump:',
1044 ('MENU CONTROL FIRE', 'Fire:',
1046 ('MENU CONTROL USE', 'Use / Open:',
1048 ('MENU CONTROL NEXT WEAPON', 'Next weapon:',
1050 ('MENU CONTROL PREV WEAPON', 'Prev weapon:',
1052 ('MENU CONTROL STRAFE', 'Strafe:',
1055 ('MENU COUNT NONE', 'None',
1057 ('MENU COUNT SMALL', 'Little bit',
1059 ('MENU COUNT NORMAL', 'Normal',
1061 ('MENU COUNT BIG', 'Lots',
1063 ('MENU COUNT VERYBIG', 'Lots and lots',
1066 ('MENU GAME BLOOD COUNT', 'Blood amount:',
1067 'Êîëè÷åñòâî êðîâè:'),
1068 ('MENU GAME MAX GIBS', 'Gib limit:',
1070 ('MENU GAME MAX CORPSES', 'Corpse limit:',
1072 ('MENU GAME GIBS COUNT', 'Gibs count:',
1074 ('MENU GAME MAX SHELLS', 'Shells limit:',
1076 ('MENU GAME BLOOD TYPE', 'Blood type:',
1078 ('MENU GAME BLOOD TYPE SIMPLE', 'Simple',
1080 ('MENU GAME BLOOD TYPE ADV', 'Dripping',
1082 ('MENU GAME CORPSE TYPE', 'Corpse type:',
1084 ('MENU GAME CORPSE TYPE SIMPLE', 'Simple',
1086 ('MENU GAME CORPSE TYPE ADV', 'Interactive',
1088 ('MENU GAME GIBS TYPE', 'Gibs type:',
1090 ('MENU GAME GIBS TYPE SIMPLE', 'Simple',
1092 ('MENU GAME GIBS TYPE ADV', 'Interactive',
1094 ('MENU GAME PARTICLES COUNT', 'Particle limit:',
1096 ('MENU GAME SCREEN FLASH', 'Screen flash:',
1098 ('MENU GAME BACKGROUND', 'Draw background:',
1100 ('MENU GAME MESSAGES', 'Show messages:',
1101 'Âûâîäèòü ñîîáùåíèÿ:'),
1102 ('MENU GAME REVERT PLAYERS', 'Revert players:',
1103 'Âòîðîé èãðîê ñâåðõó:'),
1104 ('MENU GAME CHAT BUBBLE', 'Chat bubbles:',
1106 ('MENU GAME CHAT TYPE NONE', 'None',
1108 ('MENU GAME CHAT TYPE SIMPLE', 'Simple',
1110 ('MENU GAME CHAT TYPE ADV', 'Advanced',
1112 ('MENU GAME CHAT TYPE COLOR', 'Colored',
1114 ('MENU GAME CHAT TYPE TEXTURE', 'Textured',
1116 ('MENU GAME PLAYER INDICATOR', 'Player indicator:',
1117 'Èíäèêàòîð èãðîêà:'),
1118 ('MENU GAME INDICATOR NONE', 'None',
1120 ('MENU GAME INDICATOR OWN', 'Own',
1122 ('MENU GAME INDICATOR ALL', 'Own + Teammates',
1124 ('MENU GAME INDICATOR STYLE', 'Indicator Style:',
1126 ('MENU GAME INDICATOR ARROW', 'Arrow',
1128 ('MENU GAME INDICATOR NAME', 'Name',
1130 ('MENU GAME SCALE FACTOR', 'Scale:',
1133 ('MENU VIDEO RESOLUTION', 'Set video mode',
1134 'Óñòàíîâêà âèäåîðåæèìà'),
1135 ('MENU VIDEO BPP', 'Color depth:',
1137 ('MENU VIDEO VSYNC', 'Vertical sync',
1138 'Âåðòèêàëüíàÿ ñèíõðîíèçàöèÿ:'),
1139 ('MENU VIDEO FILTER SKY', 'Anisotropic sky',
1140 'Ôèëüòðàöèÿ íåáà:'),
1141 ('MENU VIDEO LEGACY COMPATIBLE', 'Force compatibility with NPOT textures:',
1142 'Ýìóëÿöèÿ NPOT-òåêñòóð:'),
1143 ('MENU VIDEO NEED RESTART', 'Video settings will be changed after game restart.',
1144 'Äàííûå íàñòðîéêè âèäåî âñòóïÿò â ñèëó ïîñëå ïåðåçàïóñêà èãðû.'),
1146 ('MENU RESOLUTION SELECT', 'SET VIDEO MODE',
1147 'ÓÑÒÀÍÎÂÊÀ ÂÈÄÅÎÐÅÆÈÌÀ'),
1148 ('MENU RESOLUTION CURRENT', 'Current:',
1150 ('MENU RESOLUTION LIST', 'New:',
1152 ('MENU RESOLUTION FULLSCREEN', 'Fullscreen:',
1154 ('MENU RESOLUTION APPLY', 'Apply',
1157 ('MENU SOUND MUSIC LEVEL', 'Music volume:',
1158 'Ãðîìêîñòü ìóçûêè:'),
1159 ('MENU SOUND SOUND LEVEL', 'Sound volume:',
1160 'Ãðîìêîñòü çâóêà:'),
1161 ('MENU SOUND MAX SIM SOUNDS', 'Similar sounds limit:',
1162 'Ëèìèò îäíîãî çâóêà:'),
1163 ('MENU SOUND INACTIVE SOUNDS', 'Window inactive:',
1165 ('MENU SOUND INACTIVE SOUNDS ON', 'Play sounds',
1167 ('MENU SOUND INACTIVE SOUNDS OFF', 'Mute sounds',
1169 ('MENU SOUND ANNOUNCE', 'Announcements:',
1171 ('MENU SOUND COMPAT', 'Sound FX set:',
1173 ('MENU SOUND CHAT', 'Enable chat speech:',
1175 ('MENU ANNOUNCE NONE', 'None',
1177 ('MENU ANNOUNCE ME', 'Only own announcers',
1179 ('MENU ANNOUNCE MEPLUS', 'Own + multikills',
1180 'Ìîè + ìóëüòèêèëëû'),
1181 ('MENU ANNOUNCE ALL', 'All announcers',
1183 ('MENU COMPAT DF', 'Doom 2D',
1185 ('MENU COMPAT DOOM2', 'Doom II',
1188 ('MENU PLAYER NAME', 'Name:',
1190 ('MENU PLAYER TEAM', 'Team:',
1192 ('MENU PLAYER TEAM RED', 'Red',
1194 ('MENU PLAYER TEAM BLUE', 'Blue',
1196 ('MENU PLAYER MODEL', 'Model:',
1198 ('MENU PLAYER RED', 'Red:',
1200 ('MENU PLAYER GREEN', 'Green:',
1202 ('MENU PLAYER BLUE', 'Blue:',
1205 ('MENU MODEL INFO', 'Model info',
1206 'Èíôîðìàöèÿ î ìîäåëè'),
1207 ('MENU MODEL ANIMATION', 'Change animation',
1208 'Ñìåíèòü àíèìàöèþ'),
1209 ('MENU MODEL CHANGE WEAPON', 'Change weapon',
1211 ('MENU MODEL ROTATE', 'Reflect model',
1212 'Ðàçâåðíóòü ìîäåëü'),
1213 ('MENU MODEL NAME', 'Name:',
1215 ('MENU MODEL AUTHOR', 'Author:',
1217 ('MENU MODEL COMMENT', 'Description:',
1219 ('MENU MODEL OPTIONS', 'Model Options:',
1221 ('MENU MODEL WEAPON', 'Weapon:',
1224 ('MENU LANGUAGE RUSSIAN', 'Ðóññêèé',
1226 ('MENU LANGUAGE ENGLISH', 'English',
1229 ('MENU PAUSE', 'Pause',
1237 ('MENU FINISH', 'Done',
1240 ('MENU END GAME PROMT', 'Do you want to end the game?',
1241 'Âû äåéñòâèòåëüíî õîòèòå çàêîí÷èòü èãðó?'),
1242 ('MENU RESTART GAME PROMT', 'Do you want to restart level?',
1243 'Âû äåéñòâèòåëüíî õîòèòå íà÷àòü óðîâåíü çàíîâî?'),
1244 ('MENU EXIT PROMT', 'Chickening out already?',
1245 'Âû äåéñòâèòåëüíî õîòèòå âûéòè èç Doom 2D: Forever?'),
1246 ('MENU SET DEFAULT PROMT', 'Load default settings?',
1247 'Èçìåíèòü âñå íàñòðîéêè íà ñòàíäàðòíûå?'),
1248 ('MENU LOAD SAVED PROMT', 'Load saved settings?',
1249 'Âåðíóòü âñå íàñòðîéêè íà ñîõðàí¸ííûå?'),
1250 ('MENU ENTER PASSWORD', 'This server requires a password to join.',
1251 'Ýòîò ñåðâåð òðåáóåò ïàðîëü.'),
1253 ('NET SERVER', 'Server',
1255 ('NET CLIENT', 'Client',
1257 ('NET ADDRESS', 'Address:',
1259 ('NET PORT', 'Port:',
1261 ('NET SERVER NAME', 'Server name:',
1263 ('NET SERVER PASSWORD', 'Password:',
1265 ('NET MAX CLIENTS', 'Player limit:',
1267 ('NET USE MASTER', 'Public server:',
1268 'Ïóáëè÷íûé ñåðâåð:'),
1270 ('NET MSG', 'NET: ',
1272 ('NET MSG ERROR', 'NET: ERROR: ',
1274 ('NET MSG FERROR', 'NET: FATAL ERROR: ',
1275 'NET: ÊÐÈÒÈ×ÅÑÊÀß ÎØÈÁÊÀ: '),
1277 ('NET MSG HOST', 'Starting server on the port %d...',
1278 'Âêëþ÷àåì ñåðâåð íà ïîðòó %d...'),
1279 ('NET MSG HOST DISCALL', 'Disconnecting clients...',
1280 'Îòêëþ÷àåì èãðîêîâ...'),
1281 ('NET MSG HOST DIE', 'Shutting down server...',
1282 'Âûêëþ÷àåì ñåðâåð...'),
1283 ('NET MSG HOST CONN', 'Somebody is trying to connect from %s:%d.',
1284 'Ïîïûòêà ñîåäèíåíèÿ ñ àäðåñà %s:%d.'),
1285 ('NET MSG HOST REJECT', 'Connection rejected. Reason: ',
1286 ' ñîåäèíåíèè îòêàçàíî. Ïðè÷èíà: '),
1287 ('NET MSG HOST ADD', 'Client #%d added. Awaiting info...',
1288 'Äîáàâëåí êëèåíò ¹%d. Æäåì îòâåòà...'),
1289 ('NET MSG HOST DISC', 'Client #%d disconnected.',
1290 'Êëèåíò ¹%d îòêëþ÷¸í.'),
1291 ('NET MSG CLIENT CONN', 'Trying to connect to %s:%d...',
1292 'Ïûòàåìñÿ ñîåäèíèòüñÿ ñ %s:%d...'),
1293 ('NET MSG CLIENT DONE', 'Connected!',
1294 'Ñîåäèíåíèå âûïîëíåíî.'),
1295 ('NET MSG CLIENT DISC', 'Disconnected.',
1296 'Îòêëþ÷åíèå âûïîëíåíî.'),
1297 ('NET MSG KICK', 'You were dropped from the game! Reason: ',
1298 'Âàñ âûáðîñèëî ñ ñåðâåðà! Ïðè÷èíà: '),
1299 ('NET MSG PORTS', 'Make sure ports %d and %d are forwarded on the server.',
1300 'Ñïðîñèòå àäìèíà, ïðîáðîñèë ëè îí ïîðòû %d è %d íà ðîóòåðå.'),
1301 ('NET MSG TIMEOUT WARN', 'Connection is taking too long.',
1302 'Ñåðâåð íå îòâå÷àåò óæå äîâîëüíî äîëãî.'),
1304 ('NET MAP DL', 'Map %s not found. Downloading from the server...',
1305 'Êàðòà %s íå íàéäåíà. Ñêà÷èâàåì ñ ñåðâåðà...'),
1306 ('NET WAD DL', 'WAD %s not found. Downloading from the server...',
1307 'WAD %s íå íàéäåí. Ñêà÷èâàåì ñ ñåðâåðà...'),
1309 ('NET ERR ENET', 'Failed to init ENet!',
1310 'Íå ïîëó÷èëîñü ïîäêëþ÷èòü ENet!'),
1311 ('NET ERR HOST', 'Could not start server on port %d!',
1312 'Íå ïîëó÷èëîñü âêëþ÷èòü ñåðâåð íà ïîðòó %d!'),
1313 ('NET ERR INGAME', 'You are already in the net game!',
1314 'Âû óæå â ñåòåâîé èãðå!'),
1315 ('NET ERR CLIENT', 'Could not create client!',
1316 'Íå ïîëó÷èëîñü ñîçäàòü êëèåíò!'),
1317 ('NET ERR CONN', 'Connection failed!',
1318 'Íå âûøëî ñîåäèíèòüñÿ!'),
1319 ('NET ERR TIMEOUT', 'Connection timed out!',
1320 'Ñåðâåð íå îòâå÷àåò!'),
1321 ('NET ERR HASH', 'Your WAD is different from server''s!',
1322 'Âàø WAD îòëè÷àåòñÿ îò ñåðâåðíîãî!'),
1323 ('NET ERR NAME404', 'Player or client %s not found!',
1324 'Èãðîê èëè êëèåíò %s íå íàéäåí!'),
1326 ('NET DISC NONE', 'Server is down.',
1327 'Ñåðâåð íå îòâå÷àåò.'),
1328 ('NET DISC PROTOCOL', 'Net protocol version mismatch.',
1329 'Âåðñèè ñåòåâûõ ïðîòîêîëîâ íå ñîâïàäàþò.'),
1330 ('NET DISC VERSION', 'Game version mismatch.',
1331 'Âåðñèÿ èãðû íå ñîâïàäàåò ñ âåðñèåé ñåðâåðà.'),
1332 ('NET DISC FULL', 'Server is full.',
1334 ('NET DISC KICK', 'Kicked by server admin.',
1335 'Âû áûëè îòêëþ÷åíû àäìèíèñòðàòîðîì.'),
1336 ('NET DISC DOWN', 'Server is shutting down.',
1337 'Ñåðâåð âûêëþ÷àåòñÿ.'),
1338 ('NET DISC PASSWORD', 'Invalid password.',
1339 'Íåâåðíûé ïàðîëü.'),
1340 ('NET DISC TEMPBAN', 'You are banned until the round end.',
1341 'Âû çàáàíåíû äî êîíöà ðàóíäà.'),
1342 ('NET DISC BAN', 'You are banned. Contact the server administrator.',
1343 'Âû çàáàíåíû. Ñâÿæèòåñü ñ àäìèíèñòðàòîðîì ñåðâåðà.'),
1345 ('NET SLIST', 'Server list',
1347 ('NET SLIST NOSERVERS', 'No active servers.',
1348 'Íåò àêòèâíûõ ñåðâåðîâ.'),
1349 ('NET SLIST SERVERS', ' server(s)',
1351 ('NET SLIST HELP', '[ENTER] - join [SPACE] - refresh [ESC] - quit',
1352 '[ENTER] - ïðèñîåäèíèòüñÿ [SPACE] - îáíîâèòü [ESC] - ìåíþ'),
1353 ('NET SLIST WAIT', 'Please wait...',
1355 ('NET SLIST PING MS', ' ms',
1357 ('NET SLIST NO ACCESS', 'N/A',
1359 ('NET SLIST URGENT', 'Message from master server',
1360 'Ñîîáùåíèå ñ ìàñòåðñåðâåðà'),
1361 ('NET SLIST URGENT CONT', 'Press [ENTER] to continue',
1362 'Íàæìèòå [ENTER] äëÿ ïðîäîëæåíèÿ'),
1364 ('NET SLIST FETCH', 'Fetching server list...',
1365 'Ïîëó÷àåì ñïèñîê ñåðâåðîâ...'),
1366 ('NET SLIST RETRIEVED', '%d servers retrieved from [%s].',
1367 'Ïîëó÷åíî ñåðâåðîâ: %d, èñòî÷íèê: [%s]'),
1368 ('NET SLIST CONN', 'Connected to masterserver [%s].',
1369 'Ïîäêëþ÷èëèñü ê ìàñòåðñåðâåðó [%s].'),
1370 ('NET SLIST WCONN', 'Connecting to masterserver [%s]...',
1371 'Ïîäêëþ÷àåìñÿ ê ìàñòåðñåðâåðó [%s]...'),
1372 ('NET SLIST DISC', 'Disconnected from masterserver [%s].',
1373 'Îòêëþ÷èëèñü îò ìàñòåðñåðâåðà [%s].'),
1374 ('NET SLIST LOST', 'Lost connection with masterserver [%s].',
1375 'Ñîåäèíåíèå ñ ìàñòåðñåðâåðîì ïîòåðÿíî [%s].'),
1376 ('NET SLIST ERROR', 'Could not connect to masterserver.',
1377 'Íå óäàëîñü ñîåäèíèòüñÿ ñ ìàñòåðñåðâåðîì.'),
1379 ('NET RCON VALID PWD', 'RCON password accepted. You can use RCON now.',
1380 'Ïàðîëü ïðèíÿò. Òåïåðü âû ìîæåòå èñïîëüçîâàòü RCON.'),
1381 ('NET RCON INVALID PWD', 'RCON password is invalid.',
1382 'Íåâåðíûé RCON ïàðîëü.'),
1383 ('NET RCON NOAUTH', 'You are not authorized to use RCON.',
1384 'Âû íå èìååòå ïðàâà èñïîëüçîâàòü RCON.'),
1386 ('PLAYER DIED', '*** %s died',
1388 ('PLAYER KILL', '*** %s was killed by %s',
1389 '*** %s áûë óáèò %s'),
1390 ('PLAYER KILL EXTRAHARD 1', '*** %s was fragged by %s',
1391 '*** %s áûë ðàçîðâàí íà êóñêè %s'),
1392 ('PLAYER KILL EXTRAHARD 2', '*** %s was murdered by %s',
1393 '*** %s áûë çâåðñêè óáèò %s'),
1394 ('PLAYER KILL ACID', '*** %s dissolved in acid',
1395 '*** %s óòîíóë â êèñëîòå'),
1396 ('PLAYER KILL TRAP', '*** %s got caught in a trap',
1397 '*** %s íàïîðîëñÿ íà ëîâóøêó'),
1398 ('PLAYER KILL FALL', '*** %s fell too far',
1400 ('PLAYER KILL SELF', '*** %s killed himself',
1401 '*** %s óáèë ñåáÿ'),
1402 ('PLAYER KILL WATER', '*** %s drowned',
1405 ('PLAYER KILL 2X', '%s has a double kill!',
1406 '%s óáèë äâîèõ îäíîâðåìåííî!'),
1407 ('PLAYER KILL 3X', '%s has a triple kill!',
1408 '%s óáèë òðîèõ îäíîâðåìåííî!'),
1409 ('PLAYER KILL 4X', '%s has a multi kill!',
1410 '%s óáèë êó÷ó íàðîäó ðàçîì!'),
1411 ('PLAYER KILL MX', '%s has a m-m-m-monster kill!!!',
1412 '%s ïðîñòî ì-ì-ì-ìîíñòð-óáèéöà!!!'),
1414 ('PLAYER JOIN', '%s joined the game.',
1415 '%s ïðèñîåäèíèëñÿ ê èãðå.'),
1416 ('PLAYER LEAVE', '%s left the game.',
1417 '%s ïîêèíóë èãðó.'),
1418 ('PLAYER KICK', '%s was kicked by admin.',
1419 '%s áûë îòêëþ÷¸í àäìèíèñòðàòîðîì.'),
1420 ('PLAYER BAN', '%s was banned by admin.',
1421 '%s áûë çàáàíåí àäìèíèñòðàòîðîì.'),
1422 ('PLAYER NAME', '%s is now known as %s.',
1423 '%s òåïåðü èçâåñòåí êàê %s.'),
1424 ('PLAYER CHTEAM RED', '%s is now on Red.',
1425 '%s ïåðåøåë â Êðàñíóþ êîìàíäó.'),
1426 ('PLAYER CHTEAM BLUE', '%s is now on Blue.',
1427 '%s ïåðåøåë â Ñèíþþ êîìàíäó.'),
1428 ('PLAYER SECRET', '%s found a secret!',
1429 '%s íàø¸ë ñåêðåò!'),
1431 ('PLAYER SPECT', 'Spectating',
1433 ('PLAYER SPECT1', '[USE] - spawn',
1434 '[ÎÒÊÐÛÒÜ] - îæèòü'),
1435 ('PLAYER SPECT1S', '(next round)',
1436 '(â ñëåäóþùåì ðàóíäå)'),
1437 ('PLAYER SPECT2', '[FIRE] - chase',
1438 '[ÎÃÎÍÜ] - ñëåäèòü'),
1439 ('PLAYER SPECT3', '[JUMP] - reset',
1440 '[ÏÐÛÆÎÊ] - ñáðîñ'),
1441 ('PLAYER SPECT4', 'You can''t spawn until current round ends.',
1442 'Âû íå ñìîæåòå âîçðîäèòüñÿ äî êîíöà ðàóíäà.'),
1444 ('PLAYER FLAG GET', '*** %s stole the %s flag!',
1445 '*** %s ñòàùèë %s ôëàã!'),
1446 ('PLAYER FLAG RETURN', '*** %s returned the %s flag!',
1447 '*** %s âåðíóë %s ôëàã!'),
1448 ('PLAYER FLAG CAPTURE', '*** %s captured the %s flag! (%s sec)',
1449 '*** %s ïðèí¸ñ %s ôëàã! (%s ñåê)'),
1450 ('PLAYER FLAG DROP', '*** %s dropped the %s flag!',
1451 '*** %s ïîòåðÿë %s ôëàã!'),
1452 ('PLAYER FLAG RED', 'red',
1454 ('PLAYER FLAG BLUE', 'blue',
1457 ('PLAYER SCORE RED', 'Red',
1459 ('PLAYER SCORE BLUE', 'Blue',
1461 ('PLAYER SCORE TO RED', 'red',
1463 ('PLAYER SCORE TO BLUE', 'blue',
1465 ('PLAYER SCORE ADD OWN', '*** %s got %d points for %s team!',
1466 '*** %s çàðàáîòàë %d î÷êîâ %s êîìàíäå!'),
1467 ('PLAYER SCORE SUB OWN', '*** %s lost %d points of %s team...',
1468 '*** %s ïîòåðÿë %d î÷êîâ %s êîìàíäû...'),
1469 ('PLAYER SCORE ADD ENEMY', '*** %s gave %d points to %s team...',
1470 '*** %s îòäàë %d î÷êîâ %s êîìàíäå...'),
1471 ('PLAYER SCORE SUB ENEMY', '*** %s took %d points from %s team!',
1472 '*** %s îòíÿë %d î÷êîâ ó %s êîìàíäû!'),
1473 ('PLAYER SCORE WIN OWN', '*** %s helped to win %s team!',
1474 '*** %s ïîìîã ïîáåäèòü %s êîìàíäå!'),
1475 ('PLAYER SCORE WIN ENEMY', '*** %s gave victory to %s team...',
1476 '*** %s îòäàë ïîáåäó %s êîìàíäå...'),
1477 ('PLAYER SCORE ADD TEAM', '*** %s team got %d points!',
1478 '*** %s êîìàíäà ïîëó÷àåò %d î÷êîâ!'),
1479 ('PLAYER SCORE SUB TEAM', '*** %s team loses %d points...',
1480 '*** %s êîìàíäà òåðÿåò %d î÷êîâ...'),
1482 ('MESSAGE FLAG GET', '%s flag stolen',
1484 ('MESSAGE FLAG RETURN', '%s flag returned',
1485 '%s ÔËÀà ÂÎÇÂÐÀÙ¨Í'),
1486 ('MESSAGE FLAG CAPTURE', '%s flag captured',
1487 '%s ÔËÀà ÇÀÕÂÀ×ÅÍ'),
1488 ('MESSAGE FLAG DROP', '%s flag dropped',
1491 ('MESSAGE LMS LOSE', 'YOU''RE ALL LOSERS',
1493 ('MESSAGE LMS WIN', '%s WINS',
1494 'ÏÎÁÅÄÈÒÅËÜ - %s!'),
1495 ('MESSAGE LMS START', 'FIGHT!',
1497 ('MESSAGE TLMS WIN', '%s TEAM WINS',
1498 '%s ÊÎÌÀÍÄÀ ÏÎÁÅÄÈËÀ!'),
1499 ('MESSAGE LMS SURVIVOR', 'YOU ARE THE LAST ONE ALIVE!',
1500 'ÂÑß ÍÀÄÅÆÄÀ ÒÎËÜÊÎ ÍÀ ÒÅÁß!'),
1502 ('MESSAGE SCORE ADD', '%s TEAM SCORES',
1503 '%s ÊÎÌÀÍÄÀ ÏÎËÓ×ÈËÀ Î×ÊÈ'),
1504 ('MESSAGE SCORE SUB', '%s TEAM LOST SCORES',
1505 '%s ÊÎÌÀÍÄÀ ÏÎÒÅÐßËÀ Î×ÊÈ'),
1507 ('MESSAGE VOTE INPROGRESS', 'A vote is already in progress for "%s".',
1508 'Óæå èä¸ò ãîëîñîâàíèå çà êîìàíäó "%s".'),
1509 ('MESSAGE VOTE STARTED', '%s called a vote for "%s".'#10'%d votes are required.',
1510 '%s íà÷àë ãîëîñîâàíèå çà êîìàíäó "%s".'#10'Äëÿ âûïîëíåíèÿ êîìàíäû òðåáóåòñÿ ãîëîñîâ: %d.'),
1511 ('MESSAGE VOTE PASSED', 'Vote passed. Executing "%s" in 5 seconds.',
1512 'Ãîëîñîâàíèå ïðîøëî óñïåøíî. Êîìàíäà "%s" áóäåò âûïîëíåíà ÷åðåç 5 ñåêóíä.'),
1513 ('MESSAGE VOTE FAILED', 'Vote failed: not enough people voted.',
1514 'Ãîëîñîâàíèå ïðîâàëèëîñü: íåäîñòàòî÷íî ãîëîñîâ "çà".'),
1515 ('MESSAGE VOTE VOTE', '%s votes "yes" (%d/%d votes total).',
1516 '%s ãîëîñóåò "çà" (%d/%d ãîëîñîâ âñåãî).'),
1517 ('MESSAGE VOTE REVOKED', '%s revokes his vote (%d/%d votes total).',
1518 '%s îòîçâàë ñâîé ãîëîñ (%d/%d ãîëîñîâ âñåãî).'),
1522 ('KEY DOWN', 'Down',
1524 ('KEY LEFT', 'Left',
1526 ('KEY RIGHT', 'Right',
1529 ('MONSTER DEMON', 'Pinky',
1531 ('MONSTER IMP', 'Imp',
1533 ('MONSTER ZOMBIE', 'Zombie',
1535 ('MONSTER SERGEANT', 'Shotgun Guy',
1537 ('MONSTER CYBER', 'Cyberdemon',
1539 ('MONSTER CGUN', 'Commando',
1541 ('MONSTER BARON', 'Hell Baron',
1543 ('MONSTER KNIGHT', 'Hell Knight',
1545 ('MONSTER CACODEMON', 'Cacodemon',
1547 ('MONSTER SOUL', 'Lost Soul',
1548 'Îãíåííûì ÷åðåïîì'),
1549 ('MONSTER PAIN', 'Pain Elemental',
1551 ('MONSTER MASTERMIND', 'Spider Mastermind',
1553 ('MONSTER SPIDER', 'Arachnotron',
1555 ('MONSTER MANCUBUS', 'Mancubus',
1557 ('MONSTER REVENANT', 'Revenant',
1559 ('MONSTER ARCHVILE', 'Arch-Vile',
1561 ('MONSTER FISH', 'Piranha',
1563 ('MONSTER BARREL', 'Barrel explosion',
1565 ('MONSTER ROBOT', 'Robot',
1567 ('MONSTER PRIKOLIST', 'Prikolist',
1570 ('LOAD MUSIC', 'Music',
1572 ('LOAD MODELS', 'Models',
1574 ('LOAD MENUS', 'Menu sets',
1576 ('LOAD CONSOLE', 'Console',
1578 ('LOAD ITEMS DATA', 'Items Data',
1579 'Ðåñóðñû ïðåäìåòîâ'),
1580 ('LOAD WEAPONS DATA', 'Weapons Data',
1582 ('LOAD GAME DATA', 'Game Data',
1583 'Ðåñóðñû ìîíñòðîâ è òä'),
1584 ('LOAD COLLIDE MAP', 'Collision Map',
1585 'Êàðòà ñòîëêíîâåíèé'),
1586 ('LOAD DOOR MAP', 'Door Map',
1588 ('LOAD LIFT MAP', 'Streams Map',
1590 ('LOAD WATER MAP', 'Water Map',
1592 ('LOAD WAD FILE', 'WAD File',
1596 ('LOAD TEXTURES', 'Textures',
1598 ('LOAD TRIGGERS', 'Triggers',
1600 ('LOAD PANELS', 'Panels',
1602 ('LOAD TRIGGERS TABLE', 'Trigger table',
1603 'Òàáëèöà òðèããåðîâ'),
1604 ('LOAD LINK TRIGGERS', 'Trigger links',
1605 'Ïðèâÿçêà òðèããåðîâ'),
1606 ('LOAD CREATE TRIGGERS', 'Trigger setup',
1607 'Ðàññòàíîâêà òðèããåðîâ'),
1608 ('LOAD ITEMS', 'Items',
1610 ('LOAD CREATE ITEMS', 'Item setup',
1611 'Ñîçäàíèå ïðåäìåòîâ'),
1612 ('LOAD AREAS', 'Areas',
1614 ('LOAD CREATE AREAS', 'Area setup',
1615 'Ñîçäàíèå îáëàñòåé'),
1616 ('LOAD MONSTERS', 'Monsters',
1618 ('LOAD CREATE MONSTERS', 'Monster setup',
1619 'Ñîçäàíèå ìîíñòðîâ'),
1620 ('LOAD MAP HEADER', 'Map Description',
1622 ('LOAD SKY', 'Background',
1624 ('LOAD MONSTER TEXTURES', 'Monsters'' Textures',
1625 'Òåêñòóðû ìîíñòðîâ'),
1626 ('LOAD MONSTER SOUNDS', 'Monsters'' Sounds',
1628 ('LOAD SAVE FILE', 'Save File',
1630 ('LOAD MAP STATE', 'Map State',
1632 ('LOAD ITEMS STATE', 'Items State',
1633 'Ðàññòàíîâêà ïðåäìåòîâ'),
1634 ('LOAD TRIGGERS STATE', 'Triggers State',
1635 'Óñòàíîâêà òðèããåðîâ'),
1636 ('LOAD WEAPONS STATE', 'Weapons State',
1637 'Ðàññòàíîâêà îðóæèÿ'),
1638 ('LOAD MONSTERS STATE', 'Monsters State',
1639 'Ðàññòàíîâêà ìîíñòðîâ'),
1640 ('LOAD CONNECT', 'Connecting ([ESC] to abort)',
1641 'Ñîåäèíåíèå ([ESC] - îòìåíèòü)'),
1642 ('LOAD SEND INFO', 'Sending client info',
1643 'Îòñûëêà èíôîðìàöèè'),
1644 ('LOAD WAIT INFO', 'Awaiting response ([ESC] to abort)',
1645 'Îæèäàíèå îòâåòà ([ESC] - îòìåíèòü)'),
1646 ('LOAD DL RES', 'Downloading resources...',
1647 'Ñêà÷èâàíèå ðåñóðñîâ...'),
1648 ('LOAD HOST', 'Initializing server...',
1649 'Èíèíöèàëèçàöèÿ ñåðâåðà...'),
1650 ('LOAD PORTS', 'Forwarding ports via UPnP...',
1651 'Ïðîáðîñ ïîðòîâ ÷åðåç UPnP...'),
1653 ('CREDITS CAP 1', 'Doom 2D: Forever',
1654 'Doom 2D: Forever'),
1655 ('CREDITS CAP 2', 'version %s, proto %d',
1656 'Âåðñèÿ %s, ïðîòîêîë %d'),
1657 ('CREDITS A 1', 'Project Author:',
1659 ('CREDITS A 1 1', 'rs.falcon',
1661 ('CREDITS A 2', 'Programmers:',
1663 ('CREDITS A 2 1', 'rs.falcon, PSS, PrimuS, Stas''M,',
1664 'rs.falcon, PSS, PrimuS, Stas''M,'),
1665 ('CREDITS A 2 2', 'ZURG, OutCast, ketmar, DeaDDooMER',
1666 'ZURG, OutCast, ketmar, DeaDDooMER'),
1667 ('CREDITS A 3', 'Artists:',
1669 ('CREDITS A 3 1', 'Jabberwock, Firehawk',
1670 'Jabberwock, Firehawk'),
1671 ('CREDITS A 4', 'Misc:',
1673 ('CREDITS A 4 1', 'Jabberwock, Black Doomer, DEAD, Grom PE',
1674 'Jabberwock, ×åðíûé Äóìåð, DEAD, Grom PE'),
1675 ('CREDITS CAP 3', 'Special thanks to:',
1677 ('CREDITS CLO 1', '- Prikol Software for Doom 2D',
1678 '- Prikol Software çà Doom 2D'),
1679 ('CREDITS CLO 2', '- id Software for starting it all',
1680 '- id Software, êîòîðûå çàâàðèëè ýòó êàøó'),
1681 ('CREDITS CLO 3', '- Everyone who helped our project',
1682 '- Âñåõ, êòî ïîìîãàë íàøåìó ïðîåêòó'),
1683 ('CREDITS CLO 4', 'www.doom2d.org, 2003-2020',
1684 'www.doom2d.org, 2003-2020'),
1686 ('MSG SHOW FPS ON', 'FPS counter enabled',
1687 'FPS ïîêàçûâàþòñÿ'),
1688 ('MSG SHOW FPS OFF', 'FPS counter disabled',
1689 'FPS íå ïîêàçûâàþòñÿ'),
1690 ('MSG GAMEMODE CURRENT', 'Game Mode: %s',
1692 ('MSG GAMEMODE CHANGE', 'Game Mode: %s (switch to %s next round)',
1693 'Ðåæèì èãðû: %s (áóäåò %s â ñëåäóþùåì ðàóíäå)'),
1694 ('MSG FRIENDLY FIRE ON', 'Friendly Fire enabled',
1695 'Óðîí ñâîèõ âêëþ÷¸í'),
1696 ('MSG FRIENDLY FIRE OFF', 'Friendly Fire disabled',
1698 ('MSG WEAPONSTAY ON', 'Weapon Stay enabled',
1699 'Îðóæèå îñòà¸òñÿ ïîñëå ïîäáîðà'),
1700 ('MSG WEAPONSTAY OFF', 'Weapon Stay disabled',
1701 'Îðóæèå èñ÷åçàåò ïîñëå ïîäáîðà'),
1702 ('MSG ALLOWEXIT ON', 'Exit enabled*',
1703 'Âûõîä ñ êàðòû ðàçðåø¸í*'),
1704 ('MSG ALLOWEXIT OFF', 'Exit disabled*',
1705 'Âûõîä ñ êàðòû çàïðåù¸í*'),
1706 ('MSG ALLOWMON ON', 'Monsters in DM enabled*',
1707 'Ìîíñòðû â DM âêëþ÷åíû*'),
1708 ('MSG ALLOWMON OFF', 'Monsters in DM disabled*',
1709 'Ìîíñòðû â DM âûêëþ÷åíû*'),
1710 ('MSG DMKEYS ON', 'Spawning with all keys in DM enabled',
1711 'Ðåñïàâí ñî âñåìè êëþ÷àìè â DM âêëþ÷åí'),
1712 ('MSG DMKEYS OFF', 'Spawning with all keys in DM disabled',
1713 'Ðåñïàâí ñî âñåìè êëþ÷àìè â DM âûêëþ÷åí'),
1714 ('MSG RESPAWNITEMS ON', 'Respawning items enabled',
1715 'Ðåñïàâí ïðåäìåòîâ âêëþ÷åí'),
1716 ('MSG RESPAWNITEMS OFF', 'Respawning items disabled',
1717 'Ðåñïàâí ïðåäìåòîâ âûêëþ÷åí'),
1718 ('MSG BOTSVSPLAYERS ON', 'Bots attack players',
1719 'Áîòû ïðîòèâ èãðîêîâ'),
1720 ('MSG BOTSVSPLAYERS OFF', 'Bots ignore players',
1722 ('MSG BOTSVSMONSTERS ON', 'Bots attack monsters',
1723 'Áîòû ïðîòèâ ìîíñòðîâ'),
1724 ('MSG BOTSVSMONSTERS OFF', 'Bots ignore monsters',
1725 'Áîòû èãíîðèðóþò ìîíñòðîâ'),
1726 ('MSG TIME ON', 'Time on',
1727 'Âðåìÿ ïîêàçûâàåòñÿ'),
1728 ('MSG TIME OFF', 'Time display off',
1729 'Âðåìÿ íå ïîêàçûâàåòñÿ'),
1730 ('MSG SCORE ON', 'Score display on',
1731 'Î÷êè ïîêàçûâàþòñÿ'),
1732 ('MSG SCORE OFF', 'Score display off',
1733 'Î÷êè íå ïîêàçûâàþòñÿ'),
1734 ('MSG STATS ON', 'Stats display on',
1735 'Ñòàòèñòèêà ïîêàçûâàåòñÿ'),
1736 ('MSG STATS OFF', 'Stats display off',
1737 'Ñòàòèñòèêà íå ïîêàçûâàåòñÿ'),
1738 ('MSG KILL MSGS ON', 'Death Messages on',
1739 'Ñîîáùåíèÿ î ñìåðòè åñòü'),
1740 ('MSG KILL MSGS OFF', 'Death Messages off',
1741 'Ñîîáùåíèé î ñìåðòè íåò'),
1742 ('MSG LIVES ON', 'Lives display on',
1743 'Æèçíè ïîêàçûâàþòñÿ'),
1744 ('MSG LIVES OFF', 'Lives display off',
1745 'Æèçíè íå ïîêàçûâàþòñÿ'),
1746 ('MSG SPECT HUD ON', 'Spectator HUD on',
1747 'Ñîñòîÿíèå íàáëþäàòåëÿ ïîêàçûâàåòñÿ'),
1748 ('MSG SPECT HUD OFF', 'Spectator HUD off',
1749 'Ñîñòîÿíèå íàáëþäàòåëÿ íå ïîêàçûâàåòñÿ'),
1750 ('MSG PING ON', 'Client ping display on',
1751 'Ïèíã êëèåíòà ïîêàçûâàåòñÿ'),
1752 ('MSG PING OFF', 'Client ping display off',
1753 'Ïèíã êëèåíòà íå ïîêàçûâàåòñÿ'),
1754 ('MSG NO WAD', 'WAD "%s" doesn''t exist!',
1755 'WAD ôàéë "%s" íå íàéäåí!'),
1756 ('MSG NO MAPS', 'WAD "%s" doesn''t contain any maps!',
1757 'WAD ôàéë "%s" íå ñîäåðæèò êàðò!'),
1758 ('MSG NO MAP', 'Map "%s" doesn''t exist!',
1759 'Êàðòà "%s" íå íàéäåíà!'),
1760 ('MSG NO MAP FALLBACK', 'Map "%s" doesn''t exist in this WAD, looking for %s.',
1761 'Êàðòà "%s" íå íàéäåíà â ýòîì WAD ôàéëå, èùó %s.'),
1762 ('MSG NO MONSTER', 'Wrong monster type: "%s"!',
1763 '"%s" - íåò òàêîãî ìîíñòðà!'),
1764 ('MSG SCORE LIMIT', 'Score Limit is %d',
1765 'Ëèìèò î÷êîâ - %d'),
1766 ('MSG TIME LIMIT', 'Time Limit is %d:%.2d:%.2d',
1767 'Ëèìèò âðåìåíè - %d:%.2d:%.2d'),
1768 ('MSG LIVES', 'Max lives: %d',
1769 'Ìàêñ. æèçíåé ó èãðîêîâ: %d'),
1770 ('MSG WARMUP', 'Warmup time: %d sec*',
1771 'Âðåìÿ íà ïîäãîòîâêó ê èãðå: %d ñåê*'),
1772 ('MSG SPAWNINVUL', 'Spawn invulnerability time: %d sec*',
1773 'Íåóÿçâèìîñòü ïîñëå ðåñïàóíà: %d ñåê*'),
1774 ('MSG WARMUP START', '%d sec until round start.',
1775 '%d ñåê äî íà÷àëà ðàóíäà.'),
1776 ('MSG NEXTMAP SET', 'Next map: %s',
1777 'Ñëåäóþùàÿ êàðòà: %s'),
1778 ('MSG NEXTMAP UNSET', 'Next map is not set.',
1779 'Ñëåäóþùàÿ êàðòà íå çàäàíà.'),
1780 ('MSG ONMAPCHANGE', '* Changes to this variable will be applied upon next map change',
1781 '* Èçìåíåíèÿ âñòóïÿò â ñèëó ïîñëå ñëåäóþùåé ñìåíû êàðòû'),
1782 ('MSG NOT GAME', 'Command can be accepted in a game only.',
1783 'Êîìàíäà ïðèìåíèìà òîëüêî â èãðå.'),
1784 ('MSG NOT DEBUG', 'Command can be accepted in debug mode only.',
1785 'Êîìàíäà ïðèìåíèìà òîëüêî â ðåæèìå îòëàäêè.'),
1786 ('MSG GM UNAVAIL', 'This command is unavailable in the current game mode.',
1787 'Ýòà êîìàíäà íåäîñòóïíà â òåêóùåì ðåæèìå èãðû.'),
1788 ('MSG SERVERONLY', 'This command is for server only.',
1789 'Ýòà êîìàíäà äîñòóïíà òîëüêî â ðåæèìå ñåðâåðà.'),
1790 ('MSG NOCLIENTS', 'No clients connected.',
1791 'Íåò ïîäêëþ÷¸ííûõ êëèåíòîâ.'),
1792 ('MSG UNBAN OK', 'Client %s was unbanned.',
1793 'Áûë ñíÿò áàí ñ êëèåíòà %s.'),
1794 ('MSG UNBAN FAIL', 'Client %s not found in the ban list.',
1795 'Êëèåíò %s íå ÷èñëèòñÿ â ñïèñêå çàáàíåíûõ.'),
1797 ('MSG BAD SAVE VERSION', 'Cannot load saved game. Probably due to invalid save file version.',
1798 'Íå óäàëîñü çàãðóçèòü ñîõðàíåíèå. Âåðîÿòíî, èç-çà íåâåðíîé âåðñèè ñîõðàíåíèÿ.'),
1800 ('TEXTURE ENDPIC', 'ENDGAME_EN',
1803 ('VERSION', 'Doom 2D: Forever %s',
1804 'Doom 2D: Forever %s'),
1806 ('FATAL ERROR', 'Fatal error: %s',
1807 'Êðèòè÷åñêàÿ îøèáêà: %s'),
1808 ('SIMPLE ERROR', 'Error: %s',
1810 ('SYSTEM ERROR UNKNOWN', 'Something went seriously wrong. Guru meditation: $%.8x',
1811 'Õüþñòîí, ó íàñ íåèçâåñòíàÿ íàóêå ïðîáëåìà: $%.8x'),
1812 ('SYSTEM ERROR MSG', 'Something went wrong. Post Mortem: %s',
1813 'Ïðîèçîøëî ÷òî-òî íåëàäíîå: %s'),
1818 procedure SetupArrays();
1822 // Íàçâàíèÿ êëàâèø ïåðåìåùåíèÿ êóðñîðà:
1823 { that was absolitely fucked idea
1824 e_KeyNames[IK_UP] := _lc[I_KEY_UP] + ' ' + Chr(30);
1825 e_KeyNames[IK_LEFT] := _lc[I_KEY_LEFT] + ' ' + Chr(17);
1826 e_KeyNames[IK_RIGHT] := _lc[I_KEY_RIGHT] + ' ' + Chr(16);
1827 e_KeyNames[IK_DOWN] := _lc[I_KEY_DOWN] + ' ' + Chr(31);
1830 // Èìåíà ìîíñòðîâ â òâîðèòåëüíîì ïàäåæå:
1831 KilledByMonster
[MONSTER_DEMON
] := _lc
[I_MONSTER_DEMON
];
1832 KilledByMonster
[MONSTER_IMP
] := _lc
[I_MONSTER_IMP
];
1833 KilledByMonster
[MONSTER_ZOMBY
] := _lc
[I_MONSTER_ZOMBIE
];
1834 KilledByMonster
[MONSTER_SERG
] := _lc
[I_MONSTER_SERGEANT
];
1835 KilledByMonster
[MONSTER_CYBER
] := _lc
[I_MONSTER_CYBER
];
1836 KilledByMonster
[MONSTER_CGUN
] := _lc
[I_MONSTER_CGUN
];
1837 KilledByMonster
[MONSTER_BARON
] := _lc
[I_MONSTER_BARON
];
1838 KilledByMonster
[MONSTER_KNIGHT
] := _lc
[I_MONSTER_KNIGHT
];
1839 KilledByMonster
[MONSTER_CACO
] := _lc
[I_MONSTER_CACODEMON
];
1840 KilledByMonster
[MONSTER_SOUL
] := _lc
[I_MONSTER_SOUL
];
1841 KilledByMonster
[MONSTER_PAIN
] := _lc
[I_MONSTER_PAIN
];
1842 KilledByMonster
[MONSTER_SPIDER
] := _lc
[I_MONSTER_MASTERMIND
];
1843 KilledByMonster
[MONSTER_BSP
] := _lc
[I_MONSTER_SPIDER
];
1844 KilledByMonster
[MONSTER_MANCUB
] := _lc
[I_MONSTER_MANCUBUS
];
1845 KilledByMonster
[MONSTER_SKEL
] := _lc
[I_MONSTER_REVENANT
];
1846 KilledByMonster
[MONSTER_VILE
] := _lc
[I_MONSTER_ARCHVILE
];
1847 KilledByMonster
[MONSTER_FISH
] := _lc
[I_MONSTER_FISH
];
1848 KilledByMonster
[MONSTER_BARREL
] := _lc
[I_MONSTER_BARREL
];
1849 KilledByMonster
[MONSTER_ROBO
] := _lc
[I_MONSTER_ROBOT
];
1850 KilledByMonster
[MONSTER_MAN
] := _lc
[I_MONSTER_PRIKOLIST
];
1853 for i
:= LongWord(Low(CheatEng
)) to LongWord(High(CheatEng
)) do
1855 CheatEng
[TStrings_Locale(i
)] := g_lang_default
[TStrings_Locale(i
)][LANGUAGE_ENGLISH_N
];
1856 CheatRus
[TStrings_Locale(i
)] := g_lang_default
[TStrings_Locale(i
)][LANGUAGE_RUSSIAN_N
];
1860 procedure g_Language_Load(fileName
: String);
1868 // Çíà÷åíèÿ ïî-óìîë÷àíèþ:
1869 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
1870 _lc
[i
] := g_lang_default
[i
][LANGUAGE_ENGLISH_N
];
1872 if FileExists(fileName
) then
1874 AssignFile(F
, fileName
);
1885 // Ñòðîêà - êëþ÷ ïåðåâîäà:
1888 (Pos(']', key
) > 2) then
1890 key
:= UpperCase(Copy(key
, 2, Pos(']', key
)-2));
1892 // Ïðîïóñêàåì ïóñòûå ñòðîêè äî ñòðîêè - ïåðåâîäà:
1894 while (not EoF(F
)) and (value
= '') do
1897 value
:= Trim(value
);
1900 // Åñòü ñòðîêà - ïåðåâîä:
1903 // Èùåì èíäåêñ êëþ÷à ïåðåâîäà:
1905 i
:= TStrings_Locale(k
);
1907 // Îò òåêóùåãî ê ïåðâîìó:
1908 while i
> Low(TStrings_Locale
) do
1910 if g_lang_default
[i
][1] = key
then
1923 i
:= Low(TStrings_Locale
);
1925 if (g_lang_default
[i
][1] = key
) then
1932 // Îò ñëóäóþùåãî çà òåêóùèì äî ïîñëåäíåãî:
1935 i
:= TStrings_Locale(k
);
1937 while i
< High(TStrings_Locale
) do
1941 if g_lang_default
[i
][1] = key
then
1957 e_WriteLog('Language file "'+fileName
+'" not found!', TMsgType
.Warning
);
1962 procedure g_Language_Set(lang
: String);
1967 if lang
= LANGUAGE_RUSSIAN
then
1968 n
:= LANGUAGE_RUSSIAN_N
1970 n
:= LANGUAGE_ENGLISH_N
;
1972 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
1973 _lc
[i
] := g_lang_default
[i
][n
];
1978 procedure g_Language_Dump(fileName
: String);
1983 AssignFile(F
, fileName
);
1986 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do