30 I_ARRAY_PANEL_DOOR_OPEN
,
31 I_ARRAY_PANEL_DOOR_CLOSE
,
36 I_ARRAY_PANEL_LIFT_UP
,
37 I_ARRAY_PANEL_LIFT_DOWN
,
38 I_ARRAY_PANEL_LIFT_LEFT
,
39 I_ARRAY_PANEL_LIFT_RIGHT
,
40 I_ARRAY_PANEL_BLOCKMON
,
48 I_ARRAY_ITEM_LARGE_MEDKIT
,
49 I_ARRAY_ITEM_BLACK_MEDKIT
,
50 I_ARRAY_ITEM_GREEN_ARMOR
,
51 I_ARRAY_ITEM_BLUE_ARMOR
,
52 I_ARRAY_ITEM_BLUE_SPHERE
,
53 I_ARRAY_ITEM_MEGASPHERE
,
54 I_ARRAY_ITEM_HAZ_SUIT
,
56 I_ARRAY_ITEM_INVULNERABILITY
,
57 I_ARRAY_ITEM_CHAINSAW
,
59 I_ARRAY_ITEM_DB_SHOTGUN
,
60 I_ARRAY_ITEM_CHAINGUN
,
61 I_ARRAY_ITEM_ROCKET_LAUNCHER
,
62 I_ARRAY_ITEM_PLASMA_RIFLE
,
64 I_ARRAY_ITEM_SUPER_MINIGUN
,
66 I_ARRAY_ITEM_AMMO_BOX
,
67 I_ARRAY_ITEM_4_SHELLS
,
68 I_ARRAY_ITEM_25_SHELLS
,
69 I_ARRAY_ITEM_1_ROCKET
,
70 I_ARRAY_ITEM_ROCKET_BOX
,
72 I_ARRAY_ITEM_LARGE_CELL
,
73 I_ARRAY_ITEM_BACKPACK
,
75 I_ARRAY_ITEM_KEY_GREEN
,
76 I_ARRAY_ITEM_KEY_BLUE
,
101 I_ARRAY_MON_SERGEANT
,
104 I_ARRAY_MON_HELL_BARON
,
105 I_ARRAY_MON_HELL_KNIGHT
,
106 I_ARRAY_MON_CACODEMON
,
107 I_ARRAY_MON_LOST_SOUL
,
108 I_ARRAY_MON_PAIN_ELEMENTAL
,
109 I_ARRAY_MON_MASTERMIND
,
110 I_ARRAY_MON_ARACHNATRON
,
111 I_ARRAY_MON_MANCUBUS
,
112 I_ARRAY_MON_REVENANT
,
113 I_ARRAY_MON_ARCHVILE
,
117 I_ARRAY_MON_PRIKOLIST
,
119 I_ARRAY_AREA_PLAYER_ONE
,
120 I_ARRAY_AREA_PLAYER_TWO
,
122 I_ARRAY_AREA_FLAG_RED
,
123 I_ARRAY_AREA_FLAG_BLUE
,
124 I_ARRAY_AREA_FLAG_DOM
,
125 I_ARRAY_AREA_TEAM_RED
,
126 I_ARRAY_AREA_TEAM_BLUE
,
130 I_ARRAY_TR_DOOR_OPEN
,
131 I_ARRAY_TR_DOOR_CLOSE
,
132 I_ARRAY_TR_DOOR_SWITCH
,
133 I_ARRAY_TR_DOOR_5_SEC
,
134 I_ARRAY_TR_TRAP_CLOSE
,
139 I_ARRAY_TR_LIFT_DOWN
,
140 I_ARRAY_TR_LIFT_SWITCH
,
146 I_ARRAY_TR_SPAWN_MONSTER
,
147 I_ARRAY_TR_SPAWN_ITEM
,
172 I_PROP_TR_TEXTURE_PANEL
,
173 I_PROP_TR_ACTIVATION
,
181 I_PROP_TR_TELEPORT_TO
,
182 I_PROP_TR_TELEPORT_SILENT
,
183 I_PROP_TR_TELEPORT_DIR
,
184 I_PROP_TR_DOOR_PANEL
,
185 I_PROP_TR_TRAP_PANEL
,
189 I_PROP_TR_EX_MONSTER
,
191 I_PROP_TR_LIFT_PANEL
,
192 I_PROP_TR_TEXTURE_ONCE
,
193 I_PROP_TR_TEXTURE_ANIM_ONCE
,
194 I_PROP_TR_SOUND_NAME
,
195 I_PROP_TR_SOUND_VOLUME
,
197 I_PROP_TR_SOUND_COUNT
,
198 I_PROP_TR_SOUND_LOCAL
,
199 I_PROP_TR_SOUND_SWITCH
,
203 I_PROP_TR_SPAWN_DELAY
,
204 I_PROP_TR_MONSTER_TYPE
,
205 I_PROP_TR_MONSTER_ACTIVE
,
206 I_PROP_TR_MONSTER_BEHAVIOUR
,
207 I_PROP_TR_MONSTER_BEHAVIOUR_0
,
208 I_PROP_TR_MONSTER_BEHAVIOUR_1
,
209 I_PROP_TR_MONSTER_BEHAVIOUR_2
,
210 I_PROP_TR_MONSTER_BEHAVIOUR_3
,
211 I_PROP_TR_MONSTER_BEHAVIOUR_4
,
212 I_PROP_TR_MONSTER_BEHAVIOUR_5
,
214 I_PROP_TR_MUSIC_NAME
,
218 I_PROP_TR_PUSH_ANGLE
,
219 I_PROP_TR_PUSH_FORCE
,
220 I_PROP_TR_PUSH_RESET
,
222 I_PROP_TR_SCORE_ACT_0
,
223 I_PROP_TR_SCORE_ACT_1
,
224 I_PROP_TR_SCORE_ACT_2
,
225 I_PROP_TR_SCORE_ACT_3
,
226 I_PROP_TR_SCORE_TEAM
,
227 I_PROP_TR_SCORE_TEAM_0
,
228 I_PROP_TR_SCORE_TEAM_1
,
229 I_PROP_TR_SCORE_TEAM_2
,
230 I_PROP_TR_SCORE_TEAM_3
,
233 I_PROP_TR_DAMAGE_VALUE
,
234 I_PROP_TR_HEALTH_MAX
,
236 I_PROP_TR_SHOT_SOUND
,
237 I_PROP_TR_SHOT_ANGLE
,
247 I_PROP_TR_SHOT_ALLMAP
,
249 I_PROP_TR_SHOT_RELOAD
,
250 I_PROP_TR_SHOT_SIGHT
,
251 I_PROP_TR_SHOT_PANEL
,
252 I_PROP_TR_MESSAGE_KIND
,
253 I_PROP_TR_MESSAGE_KIND_0
,
254 I_PROP_TR_MESSAGE_KIND_1
,
255 I_PROP_TR_MESSAGE_TO
,
256 I_PROP_TR_MESSAGE_TO_0
,
257 I_PROP_TR_MESSAGE_TO_1
,
258 I_PROP_TR_MESSAGE_TO_2
,
259 I_PROP_TR_MESSAGE_TO_3
,
260 I_PROP_TR_MESSAGE_TO_4
,
261 I_PROP_TR_MESSAGE_TO_5
,
262 I_PROP_TR_MESSAGE_TEXT
,
263 I_PROP_TR_MESSAGE_TIME
,
264 I_PROP_TR_EFFECT_TYPE
,
265 I_PROP_TR_EFFECT_SUBTYPE
,
266 I_PROP_TR_EFFECT_COLOR
,
267 I_PROP_TR_EFFECT_CENTER
,
268 I_PROP_TR_EFFECT_VELX
,
269 I_PROP_TR_EFFECT_VELY
,
270 I_PROP_TR_EFFECT_SPL
,
271 I_PROP_TR_EFFECT_SPR
,
272 I_PROP_TR_EFFECT_SPU
,
273 I_PROP_TR_EFFECT_SPD
,
274 I_PROP_TR_EFFECT_PARTICLE
,
275 I_PROP_TR_EFFECT_ANIMATION
,
276 I_PROP_TR_EFFECT_SLIQUID
,
277 I_PROP_TR_EFFECT_LLIQUID
,
278 I_PROP_TR_EFFECT_DLIQUID
,
279 I_PROP_TR_EFFECT_BLOOD
,
280 I_PROP_TR_EFFECT_SPARK
,
281 I_PROP_TR_EFFECT_BUBBLE
,
284 I_MSG_WRONG_TEXWIDTH
,
285 I_MSG_WRONG_TEXHEIGHT
,
289 I_MSG_TEXTURE_ALREADY
,
292 I_MSG_CHOOSE_MONSTER
,
294 I_MSG_CHOOSE_TEXTURE
,
299 I_MSG_DEL_TEXTURE_PROMT
,
300 I_MSG_DEL_TEXTURE_CANT
,
302 I_MSG_CLEAR_MAP_PROMT
,
304 I_MSG_DELETE_MAP_PROMT
,
306 I_MSG_MAP_DELETED_PROMT
,
318 I_HINT_PANEL_TEXTURE
,
331 I_MENU_FILE_OPEN_WAD
,
332 I_MENU_FILE_SAVE_MINI
,
334 I_MENU_FILE_PACK_MAP
,
342 I_MENU_EDIT_SELECT_ALL
,
347 I_MENU_TOOLS_SNAP_GRID
,
348 I_MENU_TOOLS_MINIMAP
,
349 I_MENU_TOOLS_STEP_GRID
,
350 I_MENU_TOOLS_SHOW_EDGES
,
373 I_MENU_LAYER_MONSTER
,
375 I_MENU_LAYER_TRIGGER
,
430 I_CTRL_ACT_PLAYER_CLOSE
,
431 I_CTRL_ACT_MONSTER_CLOSE
,
432 I_CTRL_ACT_PLAYER_PRESS
,
433 I_CTRL_ACT_MONSTER_PRESS
,
435 I_CTRL_ACT_NO_MONSTER
,
440 I_CTRL_KEYS_TEAM_RED
,
441 I_CTRL_KEYS_TEAM_BLUE
,
455 I_CTRL_OPT_DESC_TEXTURE
,
456 I_CTRL_OPT_DESC_PANEL
,
468 I_CTRL_LAUNCH_WEAPONS
,
469 I_CTRL_LAUNCH_MONSTERS
,
475 I_CTRL_ES_PANEL_SIZE
,
477 I_CTRL_PACK_TEXTURES
,
490 I_LAB_ABOUT_AUTHOR_2
,
549 I_BTN_TEXTURE_DELETE
,
562 I_TEST_AREA_WALL_STR
,
569 I_TEST_MONSTER_WALL_STR
,
572 I_OPT_DELETED_TEXTURES
,
573 I_OPT_TOTAL_TEXTURES
,
599 LANGUAGE_RUSSIAN
= 'Russian';
600 LANGUAGE_ENGLISH
= 'English';
601 LANGUAGE_RUSSIAN_N
= 3;
602 LANGUAGE_ENGLISH_N
= 2;
605 _lc
: Array [TStrings_Locale
] of String; // for the GUI (in UTF-8)
606 _glc
: Array [TStrings_Locale
] of String; // for GL text (in CP1251)
608 BoolNames
: Array [False..True] of String;
609 DirNames
: Array [D_LEFT
..D_RIGHT
] of String;
610 DirNamesAdv
: Array [0..3] of String;
611 DirButtonNames
: Array [1..4] of String;
612 PANELNAMES
: Array[0..13] of String;
613 EffectNames
: Array [EFFECT_NONE
..EFFECT_FIRE
] of String;
614 ItemNames
: Array [ITEM_MEDKIT_SMALL
..ITEM_MAX
] of String;
615 ShotNames
: Array [TRIGGER_SHOT_PISTOL
..TRIGGER_SHOT_MAX
] of String;
616 MonsterNames
: Array [MONSTER_DEMON
..MONSTER_MAN
] of String;
617 AreaNames
: Array [AREA_PLAYERPOINT1
..AREA_BLUETEAMPOINT
] of String;
618 TriggerNames
: Array [TRIGGER_EXIT
..TRIGGER_MAX
] of String;
621 procedure g_Language_Load(fileName
: String);
622 procedure g_Language_Set(lang
: String);
623 procedure g_Language_Dump(fileName
: String);
628 SysUtils
, e_log
, f_main
, f_about
, f_activationtype
,
629 f_addresource_sky
, f_addresource_sound
,
630 f_addresource_texture
, f_choosetype
, f_keys
, f_mapcheck
,
631 f_mapoptions
, f_maptest
, f_mapoptimization
, f_options
,
632 f_packmap
, f_savemap
, f_saveminimap
, f_selectmap
, Forms
, utils
;
635 g_lang_default
: Array [TStrings_Locale
] of Array [1..3] of String = (
636 ('NOT ACCESSIBLE', 'N/A',
639 ('ARRAY BOOL FALSE', 'No',
641 ('ARRAY BOOL TRUE', 'Yes',
644 ('ARRAY DIR LEFT', 'Left',
646 ('ARRAY DIR RIGHT', 'Right',
648 ('ARRAY DIR SAME', 'Don''t change',
650 ('ARRAY DIR REVERSED', 'Reversed',
653 ('ARRAY DIRBTN LEFT', 'Left',
655 ('ARRAY DIRBTN RIGHT', 'Right',
657 ('ARRAY DIRBTN UP', 'Up',
659 ('ARRAY DIRBTN DOWN', 'Down',
662 ('ARRAY PANEL WALL', 'Wall',
664 ('ARRAY PANEL BACK', 'Background',
666 ('ARRAY PANEL FRONT', 'Foreground',
668 ('ARRAY PANEL DOOR OPEN', 'Open Door',
670 ('ARRAY PANEL DOOR CLOSE', 'Closed Door',
672 ('ARRAY PANEL STAIR', 'Step',
674 ('ARRAY PANEL WATER', 'Water',
676 ('ARRAY PANEL ACID 1', 'Acid 1',
678 ('ARRAY PANEL ACID 2', 'Acid 2',
680 ('ARRAY PANEL LIFT UP', 'Stream Up',
682 ('ARRAY PANEL LIFT DOWN', 'Stream Down',
684 ('ARRAY PANEL LIFT LEFT', 'Stream Left',
686 ('ARRAY PANEL LIFT RIGHT', 'Stream Right',
688 ('ARRAY PANEL BLOCKMON', 'Monster Boundary',
689 'Блокиратор монстров'),
691 ('ARRAY FX NONE', 'None',
693 ('ARRAY FX TELEPORT', 'Teleport',
695 ('ARRAY FX RESPAWN', 'Respawn',
697 ('ARRAY FX FIRE', 'Arch-Vile Fire',
700 ('ARRAY ITEM MEDKIT', 'Stimpack',
702 ('ARRAY ITEM LARGE MEDKIT', 'Medikit',
704 ('ARRAY ITEM BLACK MEDKIT', 'Berserk Pack',
706 ('ARRAY ITEM GREEN ARMOR', 'Green Armor',
708 ('ARRAY ITEM BLUE ARMOR', 'Blue Armor',
710 ('ARRAY ITEM BLUE SPHERE', 'Soulsphere',
712 ('ARRAY ITEM MEGASPHERE', 'Megasphere',
714 ('ARRAY ITEM HAZ SUIT', 'Envirosuit',
716 ('ARRAY ITEM OXYGEN', 'Scuba',
718 ('ARRAY ITEM INVULNERABILITY', 'Invulnerability',
720 ('ARRAY ITEM CHAINSAW', 'Chainsaw',
722 ('ARRAY ITEM SHOTGUN', 'Shotgun',
724 ('ARRAY ITEM DB SHOTGUN', 'Super Shotgun',
726 ('ARRAY ITEM CHAINGUN', 'Chaingun',
728 ('ARRAY ITEM ROCKET LAUNCHER', 'Rocket Launcher',
730 ('ARRAY ITEM PLASMA RIFLE', 'Plasma Rifle',
732 ('ARRAY ITEM BFG', 'BFG9000',
734 ('ARRAY ITEM SUPER MINIGUN', 'Super Chaingun',
736 ('ARRAY ITEM CLIP', 'Clip',
738 ('ARRAY ITEM AMMO BOX', 'Box of Bullets',
740 ('ARRAY ITEM 4 SHELLS', '4 Shells',
742 ('ARRAY ITEM 25 SHELLS', 'Box of Shells',
744 ('ARRAY ITEM 1 ROCKET', 'Rocket',
746 ('ARRAY ITEM ROCKET BOX', 'Box of Rockets',
748 ('ARRAY ITEM CELL', 'Energy Cell',
750 ('ARRAY ITEM LARGE CELL', 'Energy Cell Pack',
752 ('ARRAY ITEM BACKPACK', 'Backpack',
754 ('ARRAY ITEM KEY RED', 'Red Key',
756 ('ARRAY ITEM KEY GREEN', 'Green Key',
758 ('ARRAY ITEM KEY BLUE', 'Blue Key',
760 ('ARRAY ITEM BOTTLE', 'Health Globe',
762 ('ARRAY ITEM HELMET', 'Armor Shard',
764 ('ARRAY ITEM JETPACK', 'Jetpack',
766 ('ARRAY ITEM INVIS', 'Invisibility',
769 ('ARRAY SHOT PISTOL', 'Pistol shot',
770 'Выстрел пистолета'),
771 ('ARRAY SHOT BULLET', 'Chaingun shot',
773 ('ARRAY SHOT SHOTGUN', 'Shotgun shot',
775 ('ARRAY SHOT SSG', 'Super Shotgun shot',
776 'Выстрел двустволки'),
777 ('ARRAY SHOT IMP', 'Imp fireball',
779 ('ARRAY SHOT PLASMA', 'Blue plasma',
781 ('ARRAY SHOT SPIDER', 'Arachnotron plasma',
782 'Плазма арахнотрона'),
783 ('ARRAY SHOT CACO', 'Cacodemon fireball',
785 ('ARRAY SHOT BARON', 'Hell Baron projectile',
786 'Выстрел барона ада'),
787 ('ARRAY SHOT MANCUB', 'Mancubus gunshot',
789 ('ARRAY SHOT REV', 'Revenant projectile',
791 ('ARRAY SHOT ROCKET', 'Rocket',
793 ('ARRAY SHOT BFG', 'BFG ball',
795 ('ARRAY SHOT EXPL', 'Explosion',
797 ('ARRAY SHOT BFGEXPL', 'BFG explosion',
800 ('ARRAY MON DEMON', 'Pinky',
802 ('ARRAY MON IMP', 'Imp',
804 ('ARRAY MON ZOMBIE', 'Zombie',
806 ('ARRAY MON SERGEANT', 'Sergeant',
808 ('ARRAY MON CYBER', 'Cyberdemon',
810 ('ARRAY MON CGUN', 'Commando',
812 ('ARRAY MON HELL BARON', 'Hell Baron',
814 ('ARRAY MON HELL KNIGHT', 'Hell Knight',
816 ('ARRAY MON CACODEMON', 'Cacodemon',
818 ('ARRAY MON LOST SOUL', 'Lost Soul',
820 ('ARRAY MON PAIN ELEMENTAL', 'Pain Elemental',
822 ('ARRAY MON MASTERMIND', 'Spider Mastermind',
824 ('ARRAY MON ARACHNATRON', 'Arachnotron',
826 ('ARRAY MON MANCUBUS', 'Mancubus',
828 ('ARRAY MON REVENANT', 'Revenant',
830 ('ARRAY MON ARCHVILE', 'Arch-Vile',
832 ('ARRAY MON FISH', 'Piranha',
834 ('ARRAY MON BARREL', 'Barrel',
836 ('ARRAY MON ROBOT', 'Robot',
838 ('ARRAY MON PRIKOLIST', 'Prikolist',
841 ('ARRAY AREA PLAYER ONE', 'Player 1',
843 ('ARRAY AREA PLAYER TWO', 'Player 2',
845 ('ARRAY AREA DM', 'DM Spawn Point',
847 ('ARRAY AREA FLAG RED', 'Red Flag',
849 ('ARRAY AREA FLAG BLUE', 'Blue Flag',
851 ('ARRAY AREA FLAG DOM', 'Domination Flag',
853 ('ARRAY AREA TEAM RED', 'Red Team',
855 ('ARRAY AREA TEAM BLUE', 'Blue Team',
858 ('ARRAY TR EXIT', 'Exit',
860 ('ARRAY TR TELEPORT', 'Teleport',
862 ('ARRAY TR DOOR OPEN', 'Open Door',
864 ('ARRAY TR DOOR CLOSE', 'Close Door',
866 ('ARRAY TR DOOR SWITCH', 'Door',
868 ('ARRAY TR DOOR 5 SEC', 'Door (5 sec)',
870 ('ARRAY TR TRAP CLOSE', 'Close Trap',
872 ('ARRAY TR TRAP', 'Trap',
874 ('ARRAY TR EXTEND', 'Extender',
876 ('ARRAY TR SECRET', 'Secret',
878 ('ARRAY TR LIFT UP', 'Turn stream up/left',
879 'Лифт вверх/поток влево'),
880 ('ARRAY TR LIFT DOWN', 'Turn stream down/right',
881 'Лифт вниз/поток вправо'),
882 ('ARRAY TR LIFT SWITCH', 'Revert stream',
884 ('ARRAY TR TEXTURE', 'Change Texture',
886 ('ARRAY TR ON', 'Enable Trigger',
888 ('ARRAY TR OFF', 'Disable Trigger',
889 'Выключить триггер'),
890 ('ARRAY TR SWITCH', 'Trigger Toggle',
891 'Переключить триггер'),
892 ('ARRAY TR SOUND', 'Play Sound',
894 ('ARRAY TR SPAWN MONSTER', 'Spawn Monster',
896 ('ARRAY TR SPAWN ITEM', 'Spawn Item',
898 ('ARRAY TR MUSIC', 'Play Music',
900 ('ARRAY TR PUSH', 'Push',
902 ('ARRAY TR SCORE', 'Team Score',
904 ('ARRAY TR MESSAGE', 'Message',
906 ('ARRAY TR DAMAGE', 'Damage',
908 ('ARRAY TR HEALTH', 'Healer',
910 ('ARRAY TR SHOT', 'Turret',
912 ('ARRAY TR EFFECT', 'Effect',
921 ('PROP WIDTH', 'Width',
923 ('PROP HEIGHT', 'Height',
925 ('PROP PANEL TYPE', 'Panel Type',
927 ('PROP PANEL TEX', 'Texture',
929 ('PROP PANEL ALPHA', 'Transparency',
931 ('PROP PANEL BLEND', 'Blending',
933 ('PROP DM ONLY', 'DM Only',
935 ('PROP ITEM FALLS', 'Falls',
937 ('PROP DIRECTION', 'Direction',
940 ('PROP TR TYPE', 'Trigger Type',
942 ('PROP TR ENABLED', 'Enabled',
944 ('PROP TR TEXTURE PANEL', 'Textured Panel',
945 'Панель с текстурой'),
946 ('PROP TR ACTIVATION', 'Activation Type',
948 ('PROP TR KEYS', 'Keys',
950 ('PROP TR D2D', 'D2D-like',
952 ('PROP TR SILENT', 'Silent',
954 ('PROP TR COUNT', 'Count',
956 ('PROP TR INTERVAL', 'Interval (in ticks)',
957 'Интервал (в тиках)'),
958 ('PROP TR HEALTH', 'Health',
960 ('PROP TR NEXT MAP', 'Next Map',
962 ('PROP TR TELEPORT TO', 'Teleport to',
964 ('PROP TR TELEPORT SILENT', 'Silent',
966 ('PROP TR TELEPORT DIR', 'New Direction',
967 'Направление после'),
968 ('PROP TR DOOR PANEL', 'Door Panel',
970 ('PROP TR TRAP PANEL', 'Trap Panel',
972 ('PROP TR EX AREA', 'Action Area',
973 'Область воздействия'),
974 ('PROP TR EX DELAY', 'Delay',
976 ('PROP TR EX COUNT', 'Count',
978 ('PROP TR EX MONSTER', 'Monster ID',
980 ('PROP TR EX RANDOM', 'Random',
982 ('PROP TR LIFT PANEL', 'Stream Panel',
984 ('PROP TR TEXTURE ONCE', 'Once',
986 ('PROP TR TEXTURE ANIM ONCE', 'Animate Once',
988 ('PROP TR SOUND NAME', 'Sound (snd)',
990 ('PROP TR SOUND VOLUME', 'Volume',
992 ('PROP TR SOUND PAN', 'Pan',
994 ('PROP TR SOUND COUNT', 'Loops',
996 ('PROP TR SOUND LOCAL', 'Local',
998 ('PROP TR SOUND SWITCH', 'Switch',
1000 ('PROP TR FX TYPE', 'Effect',
1002 ('PROP TR SPAWN TO', 'Spawn at',
1004 ('PROP TR SPAWN MAX', 'Maximum',
1006 ('PROP TR SPAWN DELAY', 'Autospawn (in ticks)',
1007 'Автоспаун (в тиках)'),
1008 ('PROP TR MONSTER TYPE', 'Monster',
1010 ('PROP TR MONSTER ACTIVE', 'Active',
1012 ('PROP TR MONSTER BEHAVIOUR', 'Behaviour',
1014 ('PROP TR MONSTER BEHAVIOUR 0', 'Normal',
1016 ('PROP TR MONSTER BEHAVIOUR 1', 'Killer',
1018 ('PROP TR MONSTER BEHAVIOUR 2', 'Maniac',
1020 ('PROP TR MONSTER BEHAVIOUR 3', 'Insane',
1022 ('PROP TR MONSTER BEHAVIOUR 4', 'Cannibal',
1024 ('PROP TR MONSTER BEHAVIOUR 5', 'Good',
1026 ('PROP TR ITEM TYPE', 'Item',
1028 ('PROP TR MUSIC NAME', 'Music',
1030 ('PROP TR MUSIC ACT', 'Action (m)',
1032 ('PROP TR MUSIC ON', 'Play',
1034 ('PROP TR MUSIC OFF', 'Pause',
1036 ('PROP TR PUSH ANGLE', 'Angle',
1038 ('PROP TR PUSH FORCE', 'Force',
1040 ('PROP TR PUSH RESET', 'Reset velocity',
1041 'Сбрасывать скорость'),
1042 ('PROP TR SCORE ACT', 'Action (s)',
1044 ('PROP TR SCORE ACT 0', 'Add points',
1046 ('PROP TR SCORE ACT 1', 'Subtract points',
1048 ('PROP TR SCORE ACT 2', 'Team Wins',
1050 ('PROP TR SCORE ACT 3', 'Team Loses',
1052 ('PROP TR SCORE TEAM', 'Team',
1054 ('PROP TR SCORE TEAM 0', 'My',
1056 ('PROP TR SCORE TEAM 1', 'Enemy',
1058 ('PROP TR SCORE TEAM 2', 'Red',
1060 ('PROP TR SCORE TEAM 3', 'Blue',
1062 ('PROP TR SCORE CON', 'Console message',
1063 'Сообщение в консоль'),
1064 ('PROP TR SCORE MSG', 'Game message',
1065 'Сообщение в игру'),
1066 ('PROP TR DAMAGE VALUE', 'Damage',
1068 ('PROP TR HEALTH MAX', 'To maximum',
1070 ('PROP TR SHOT TYPE', 'Projectile',
1072 ('PROP TR SHOT SOUND', 'Shot sound',
1074 ('PROP TR SHOT ANGLE', 'Angle',
1076 ('PROP TR SHOT ACC', 'Spread',
1078 ('PROP TR SHOT TO', 'Auto targeting',
1080 ('PROP TR SHOT TO 0', 'None',
1082 ('PROP TR SHOT TO 1', 'Monsters',
1084 ('PROP TR SHOT TO 2', 'Players',
1086 ('PROP TR SHOT TO 3', 'Red team',
1088 ('PROP TR SHOT TO 4', 'Blue team',
1090 ('PROP TR SHOT TO 5', 'Monsters, players',
1092 ('PROP TR SHOT TO 6', 'Players, monsters',
1094 ('PROP TR SHOT ALLMAP', 'On entire map',
1096 ('PROP TR SHOT AMMO', 'Ammo limit',
1098 ('PROP TR SHOT RELOAD', 'Reload interval (in ticks)',
1099 'Перезарядка (в тиках)'),
1100 ('PROP TR SHOT SIGHT', 'Sight interval (in ticks)',
1101 'Реакция (в тиках)'),
1102 ('PROP TR SHOT PANEL', 'Indicator panel',
1103 'Панель индикации'),
1104 ('PROP TR MESSAGE KIND', 'Message kind',
1106 ('PROP TR MESSAGE KIND 0', 'Console message',
1108 ('PROP TR MESSAGE KIND 1', 'Event message',
1109 'Крупный текст по центру'),
1110 ('PROP TR MESSAGE TO', 'Send to',
1112 ('PROP TR MESSAGE TO 0', 'Me',
1114 ('PROP TR MESSAGE TO 1', 'My team',
1116 ('PROP TR MESSAGE TO 2', 'Enemy team',
1117 'Вражеская команда'),
1118 ('PROP TR MESSAGE TO 3', 'Red team',
1120 ('PROP TR MESSAGE TO 4', 'Blue team',
1122 ('PROP TR MESSAGE TO 5', 'Everyone',
1124 ('PROP TR MESSAGE TEXT', 'Message text',
1126 ('PROP TR MESSAGE TIME', 'Time (in ticks)',
1127 'Время показа (в тиках)'),
1128 ('PROP TR EFFECT TYPE', 'Effect type',
1130 ('PROP TR EFFECT SUBTYPE', 'Effect subtype',
1132 ('PROP TR EFFECT COLOR', 'Effect color',
1134 ('PROP TR EFFECT CENTER', 'Trigger center',
1136 ('PROP TR EFFECT VELX', 'Horizontal speed',
1137 'Скорость по горизонтали'),
1138 ('PROP TR EFFECT VELY', 'Vertical speed',
1139 'Скорость по вертикали'),
1140 ('PROP TR EFFECT SPL', 'Speed variance left',
1141 'Отклонение влево'),
1142 ('PROP TR EFFECT SPR', 'Speed variance right',
1143 'Отклонение вправо'),
1144 ('PROP TR EFFECT SPU', 'Speed variance up',
1145 'Отклонение вверх'),
1146 ('PROP TR EFFECT SPD', 'Speed variance down',
1148 ('PROP TR EFFECT PARTICLE', 'Particle generator',
1149 'Генератор частиц'),
1150 ('PROP TR EFFECT ANIMATION', 'Animation',
1152 ('PROP TR EFFECT SLIQUID', 'Water splash',
1154 ('PROP TR EFFECT LLIQUID', 'Light colored splash',
1155 'Цветные брызги (светлее)'),
1156 ('PROP TR EFFECT DLIQUID', 'Dark colored splash',
1157 'Цветные брызги (темнее)'),
1158 ('PROP TR EFFECT BLOOD', 'Blood',
1160 ('PROP TR EFFECT SPARK', 'Sparks',
1162 ('PROP TR EFFECT BUBBLE', 'Bubbles',
1165 ('MSG ERROR', 'Error',
1167 ('MSG WRONG TEXWIDTH', 'Panel Width must be a multiple of Texture Width (%d)',
1168 'Ширина панели должна быть кратна ширине текстуры (%d)'),
1169 ('MSG WRONG TEXHEIGHT', 'Panel Height must be a multiple of Texture Height (%d)',
1170 'Высота панели должна быть кратна высоте текстуры (%d)'),
1171 ('MSG WRONG ALPHA', 'Transparency must be in [0..255] interval',
1172 'Прозрачность должна быть в интервале [0..255]'),
1173 ('MSG WRONG SIZE', 'Width and Height must be greater than 0',
1174 'Ширина и высота должны быть больше 0'),
1175 ('MSG WRONG XY', 'X or Y coordinate hasn''t been set',
1176 'Не задана X или Y координата'),
1177 ('MSG TEXTURE ALREADY', 'Texture "%s" already exists',
1178 'Текстура "%s" уже добавлена'),
1179 ('MSG RES NAME 64', 'Resource "%s" name must not be longer than 64 chars',
1180 'Имя ресурса "%s" должно быть не длиннее 64 символов'),
1181 ('MSG CHOOSE ITEM', 'Select Item',
1182 'Выберите предмет'),
1183 ('MSG CHOOSE MONSTER', 'Select Monster',
1184 'Выберите монстра'),
1185 ('MSG CHOOSE AREA', 'Select Area',
1186 'Выберите область'),
1187 ('MSG CHOOSE TEXTURE', 'Select Texture',
1188 'Выберите текстуру'),
1189 ('MSG CHOOSE RES', 'Resource hasn''t been selected',
1190 'Не выбран ресурс'),
1191 ('MSG EXIT', 'Exit',
1193 ('MSG EXIT PROMT', 'Leaving so soon?',
1195 ('MSG DEL TEXTURE', 'Delete the texture',
1196 'Удалить текстуру'),
1197 ('MSG DEL TEXTURE PROMT', 'Delete the texture "%s" ?',
1198 'Удалить текстуру "%s" ?'),
1199 ('MSG DEL TEXTURE CANT', 'Can''t delete texture in use. Replace it on all panels with this texture.',
1200 'Нельзя удалить используемую текстуру. Замените её на каждой панели с ней.'),
1201 ('MSG CLEAR MAP', 'New map',
1203 ('MSG CLEAR MAP PROMT', 'Clear the entire map?',
1204 'Очистить всю карту?'),
1205 ('MSG DELETE MAP', 'Delete the map',
1207 ('MSG DELETE MAP PROMT', 'Delete the map "%s" from "%s" ?',
1208 'Удалить карту "%s" из "%s" ?'),
1209 ('MSG MAP DELETED', 'Map is deleted',
1211 ('MSG MAP DELETED PROMT', 'Map "%s" is deleted',
1212 'Карта "%s" удалена'),
1213 ('MSG EXEC ERROR', 'Game execution error',
1214 'Ошибка запуска игры'),
1215 ('MSG SOUND ERROR', 'Can''t play sound',
1216 'Не удалось проиграть звук'),
1217 ('MSG WAD ERROR', 'Can''t open WAD: %s',
1218 'Ошибка при открытии WAD: %s'),
1219 ('MSG RES ERROR', 'Can''t read resource: %s:%s\%s',
1220 'Ошибка при чтении ресурса: %s:%s\%s'),
1221 ('MSG PACKED', 'Map "%s" with resources saved to "%s"',
1222 'Карта "%s" вместе с ресурсами сохранена в "%s"'),
1223 ('MSG MAP EXISTS', 'Map "%s" already exists. Overwrite?',
1224 'Карта "%s" уже существует. Заменить?'),
1225 ('MSG SAVE MAP', 'Save the map',
1228 ('HINT TELEPORT', 'Choose destination of Teleport',
1229 'Выберите точку телепорта'),
1230 ('HINT SPAWN', 'Choose Spawn point',
1231 'Выберите точку появления'),
1232 ('HINT PANEL DOOR', 'Choose Door',
1233 'Выберите панель двери'),
1234 ('HINT PANEL TEXTURE', 'Choose textured Panel',
1235 'Выберите панель с текстурой'),
1236 ('HINT PANEL SHOT', 'Choose textured shot indicator Panel',
1237 'Выберите панель индикации выстрела с текстурой'),
1238 ('HINT PANEL LIFT', 'Choose Stream Panel',
1239 'Выберите панель лифта'),
1240 ('HINT MONSTER', 'Choose Monster',
1241 'Выберите монстра'),
1242 ('HINT EXT AREA', 'Specify action Area',
1243 'Укажите область воздействия'),
1244 ('HINT WIDTH', 'Width: %d',
1246 ('HINT HEIGHT', 'Height: %d',
1249 ('MENU FILE', 'File',
1251 ('MENU FILE NEW', 'New Map',
1253 ('MENU FILE OPEN', 'Open Map',
1255 ('MENU FILE SAVE', 'Save Map',
1257 ('MENU FILE SAVE AS', 'Save Map As...',
1258 'Сохранить карту как...'),
1259 ('MENU FILE OPEN WAD', 'Select Map',
1261 ('MENU FILE SAVE MINI', 'Save Mini-map',
1262 'Сохранить мини-карту'),
1263 ('MENU FILE DELETE', 'Delete Map from WAD...',
1264 'Удалить карту из WAD...'),
1265 ('MENU FILE PACK MAP', 'Pack Map',
1267 ('MENU FILE EXIT', 'Exit',
1270 ('MENU EDIT', 'Edit',
1272 ('MENU EDIT UNDO', 'Undo',
1274 ('MENU EDIT COPY', 'Copy',
1276 ('MENU EDIT CUT', 'Cut',
1278 ('MENU EDIT PASTE', 'Paste',
1280 ('MENU EDIT SELECT ALL', 'Select All',
1282 ('MENU EDIT TO FORE', 'Bring to Front',
1283 'Передвинуть вперед'),
1284 ('MENU EDIT TO BACK', 'Send to Back',
1285 'Передвинуть назад'),
1287 ('MENU TOOLS', 'Tools',
1289 ('MENU TOOLS SNAP GRID', 'Snap to Grid',
1290 'Привязка к сетке'),
1291 ('MENU TOOLS MINIMAP', 'Show Mini-map',
1293 ('MENU TOOLS STEP GRID', 'Switch Grid step',
1294 'Сменить шаг сетки'),
1295 ('MENU TOOLS SHOW EDGES', 'Switch Map edges',
1297 ('MENU TOOLS LAYERS', 'Layers',
1300 ('MENU SERV', 'Service',
1302 ('MENU SERV TEST', 'Check the Map',
1304 ('MENU SERV OPT', 'Optimize the Map',
1305 'Оптимизация карты'),
1306 ('MENU SERV PREVIEW', 'Map Preview',
1307 'Предварительный просмотр'),
1308 ('MENU SERV LAUNCH', 'In-game test',
1309 'Тест карты в игре'),
1311 ('MENU SETS', 'Settings',
1313 ('MENU SETS MAP', 'Map parameters',
1315 ('MENU SETS EDITOR', 'Editor settings',
1316 'Настройки редактора'),
1317 ('MENU SETS LAUNCH', 'In-game test settings',
1318 'Настройки теста в игре'),
1320 ('MENU HELP', 'Help',
1322 ('MENU HELP ABOUT', 'About',
1325 ('MENU LAYER BACK', '1. Background',
1327 ('MENU LAYER WALL', '2. Walls',
1329 ('MENU LAYER FORE', '3. Foreground',
1330 '3. Передний план'),
1331 ('MENU LAYER STAIR', '4. Steps',
1333 ('MENU LAYER WATER', '5. Liquids',
1335 ('MENU LAYER ITEM', '6. Items',
1337 ('MENU LAYER MONSTER', '7. Monsters',
1339 ('MENU LAYER AREA', '8. Areas',
1341 ('MENU LAYER TRIGGER', '9. Triggers',
1344 ('MENU TB NEW', 'New Map',
1346 ('MENU TB OPEN', 'Open Map',
1348 ('MENU TB SAVE', 'Save Map',
1350 ('MENU TB OPEN WAD', 'Open another Map from same WAD',
1351 'Открыть другую карту из этого же WAD''а'),
1352 ('MENU TB MINIMAP', 'Show Mini-map',
1353 'Показать мини-карту'),
1354 ('MENU TB LAYERS', 'Show/Hide Objects',
1355 'Отрисовка панелей/объектов'),
1356 ('MENU TB GRID', 'Grid On/Off',
1357 'Включить/Отключить отображение сетки'),
1358 ('MENU TB GRID STEP', 'Switch Grid step',
1359 'Изменить шаг сетки'),
1360 ('MENU TB LAUNCH', 'In-game test',
1361 'Тест карты в игре'),
1363 ('MENU LAUNCH SETS', 'Settings...',
1366 ('CAP FX TYPE', 'Select Effect type',
1367 'Выберите тип эффекта'),
1368 ('CAP MONSTER TYPE', 'Select Monster type',
1369 'Выберите тип монстра'),
1370 ('CAP ITEM TYPE', 'Select Item type',
1371 'Выберите тип предмета'),
1372 ('CAP ABOUT', 'About Map Editor',
1374 ('CAP ACT', 'Activation type',
1376 ('CAP ADD SKY', 'Select Sky Texture',
1377 'Выберите текстуру неба'),
1378 ('CAP ADD SOUND', 'Select Sound/Music',
1379 'Выберите звук/музыку'),
1380 ('CAP ADD TEXTURE', 'Select Texture',
1381 'Выберите текстуру'),
1382 ('CAP KEYS', 'Keys',
1384 ('CAP TEST', 'Map Checking',
1386 ('CAP OPT', 'Map Optimization',
1387 'Оптимизация карты'),
1388 ('CAP SETS', 'Map Parameters',
1390 ('CAP LAUNCH', 'In-game test Settings',
1391 'Настройки теста в игре'),
1392 ('CAP ES', 'Editor Settings',
1393 'Настройки редактора'),
1394 ('CAP PACK', 'Pack Map',
1396 ('CAP SAVE', 'Save Map',
1398 ('CAP MINI', 'Save Mini-map',
1399 'Сохранить мини-карту'),
1400 ('CAP SELECT', 'Select Map',
1403 ('CTRL PROP KEY', 'Property',
1405 ('CTRL PROP VALUE', 'Value',
1408 ('CTRL PANELS', 'Panels',
1410 ('CTRL ITEMS', 'Items',
1412 ('CTRL MONSTERS', 'Monsters',
1414 ('CTRL AREAS', 'Areas',
1416 ('CTRL TRIGGERS', 'Triggers',
1419 ('CTRL LIST TEXTURE', 'Texture List',
1421 ('CTRL LIST ITEM', 'Item List',
1422 'Список предметов'),
1423 ('CTRL LIST MONSTER', 'Monster List',
1425 ('CTRL LIST AREA', 'Area List',
1427 ('CTRL LIST TRIGGER', 'Trigger List',
1428 'Список триггеров'),
1429 ('CTRL LIST ACTIVE', 'Activation Type',
1430 'Тип активации триггера'),
1431 ('CTRL LIST KEYS', 'Keys Needed',
1432 'Ключи для активации'),
1434 ('CTRL PREVIEW', 'Texture Preview',
1435 'Предварительный просмотр'),
1436 ('CTRL ITEM DM', 'DM Only',
1438 ('CTRL ITEM FALLS', 'Falls',
1440 ('CTRL LEFT', 'Left',
1442 ('CTRL RIGHT', 'Right',
1445 ('CTRL ACT PLAYER CLOSE', 'Player Collides',
1447 ('CTRL ACT MONSTER CLOSE', 'Monster Collides',
1449 ('CTRL ACT PLAYER PRESS', 'Player Pressed',
1451 ('CTRL ACT MONSTER PRESS', 'Monster Pressed',
1453 ('CTRL ACT SHOT', 'Shot',
1455 ('CTRL ACT NO MONSTER', 'No Monsters',
1458 ('CTRL KEYS RED', 'Red Key',
1460 ('CTRL KEYS GREEN', 'Green Key',
1462 ('CTRL KEYS BLUE', 'Blue Key',
1464 ('CTRL KEYS TEAM RED', 'Red Team',
1466 ('CTRL KEYS TEAM BLUE', 'Blue Team',
1469 ('CTRL OPT GB', 'Optimization',
1471 ('CTRL OPT TEXTURE', 'Texture Optimization',
1472 'Оптимизация текстур'),
1473 ('CTRL OPT PANEL', 'Panel Optimization',
1474 'Оптимизация панелей'),
1475 ('CTRL OPT WALL', 'Walls',
1477 ('CTRL OPT FORE', 'Foreground',
1479 ('CTRL OPT BACK', 'Background',
1481 ('CTRL OPT STAIR', 'Steps',
1483 ('CTRL OPT WATER', 'Water',
1485 ('CTRL OPT ACID1', 'Acid 1',
1487 ('CTRL OPT ACID2', 'Acid 2',
1489 ('CTRL OPT LIFT', 'Streams',
1491 ('CTRL OPT BLOCKMON', 'Monster Boundary',
1492 'Блокиратор монстров'),
1493 ('CTRL OPT DESC TEXTURE', 'Deletes unused textures from texture list.',
1494 'Удаляет неиспользуемые текстуры из списка.'),
1495 ('CTRL OPT DESC PANEL', 'Merges nearby panels of same type. Increases game performance.',
1496 'Объединяет одинаковые панели, расположенные вплотную друг к другу, увеличивая тем самым производительность игры.'),
1497 ('CTRL SETS STATS', 'Statistics:',
1499 ('CTRL SETS SIZES', 'Map Size:',
1502 ('CTRL LAUNCH DM', 'Deathmatch',
1504 ('CTRL LAUNCH TDM', 'Team Deathmatch',
1506 ('CTRL LAUNCH CTF', 'Capture the Flag',
1507 'Capture the Flag'),
1508 ('CTRL LAUNCH COOP', 'Cooperative',
1510 ('CTRL LAUNCH 2P', 'Two Players',
1512 ('CTRL LAUNCH FF', 'Friendly Fire',
1514 ('CTRL LAUNCH EXIT', 'Enable Exit',
1516 ('CTRL LAUNCH WEAPONS', 'Weapons Stay',
1518 ('CTRL LAUNCH MONSTERS', 'Enable Monsters',
1520 ('CTRL LAUNCH CLOSE', 'Close the game after exiting the map',
1521 'Закрыть игру после выхода из карты'),
1522 ('CTRL LAUNCH OPEN', 'Select Doom 2D: Forever .exe',
1523 'Выберите файл игры Doom 2D: Forever'),
1525 ('CTRL ES GRID', 'Show Grid',
1526 'Показывать сетку'),
1527 ('CTRL ES TEXTURE', 'Show Panel Texture',
1528 'Показывать текстуру панели'),
1529 ('CTRL ES PANEL SIZE', 'Show Panel Size',
1530 'Показывать размеры панели '),
1532 ('CTRL PACK TEXTURES', 'Textures',
1534 ('CTRL PACK SKY', 'Sky',
1536 ('CTRL PACK MUSIC', 'Music',
1538 ('CTRL PACK ADD', 'Don''t overwrite WAD',
1539 'Не перезаписывать WAD'),
1540 ('CTRL PACK NON STD', 'Non-standard Resources only',
1541 'Только нестандартные ресурсы'),
1543 ('LAB TEX WIDTH', 'Texture Width:',
1544 'Ширина текстуры:'),
1545 ('LAB TEX HEIGHT', 'Texture Height:',
1546 'Высота текстуры:'),
1548 ('LAB SPECTRUM', 'Show the Spectrum',
1551 ('LAB ABOUT VER', 'Version 2.1.5',
1553 ('LAB ABOUT AUTHOR', 'Author: rs.falcon',
1554 'Автор: rs.falcon'),
1555 ('LAB ABOUT AUTHOR 2', 'Additions: Pss',
1556 'Дорабатывал: Pss'),
1557 ('LAB ABOUT MAIL', 'rmw.falcon@mail.ru',
1558 'rmw.falcon@mail.ru'),
1559 ('LAB ABOUT MAIL 2', 'pssxx@mail.ru',
1561 ('LAB ABOUT SITE', 'Doom 2D: Forever Web-site',
1562 'Сайт Doom 2D: Forever'),
1563 ('LAB ABOUT HTTP', 'www.doom2d.org',
1566 ('LAB ADD WADS', 'WAD Files:',
1567 'Список WAD-файлов:'),
1568 ('LAB ADD SECTIONS', 'WAD Sections:',
1569 'Список секций WAD-файла:'),
1571 ('LAB SETS NAME', 'Map Name:',
1573 ('LAB SETS DESC', 'Map Description',
1575 ('LAB SETS AUTHOR', 'Author:',
1577 ('LAB SETS BACK', 'Background/Sky:',
1579 ('LAB SETS MUSIC', 'Music:',
1581 ('LAB SETS TEXTURES', 'Textures:',
1583 ('LAB SETS PANELS', 'Panels:',
1585 ('LAB SETS ITEMS', 'Items:',
1587 ('LAB SETS MONSTERS', 'Monsters:',
1589 ('LAB SETS AREAS', 'Areas:',
1591 ('LAB SETS TRIGGERS', 'Triggers:',
1593 ('LAB SETS SIZES', 'Current:',
1595 ('LAB SETS WIDTH', 'Width:',
1597 ('LAB SETS HEIGHT', 'Height:',
1599 ('LAB SETS MAPMOVE', 'Direction of shifting map objects:',
1600 'Направление смещения объектов карты:'),
1601 ('LAB SETS SNAPPING', 'Preserve snapping',
1602 'Сохранять привязку'),
1604 ('LAB LAUNCH TIME', 'Time Limit:',
1606 ('LAB LAUNCH SECS', 'seconds',
1608 ('LAB LAUNCH SCORE', 'Score Limit:',
1610 ('LAB LAUNCH PATH', 'Path to Doom2DF.exe:',
1611 'Путь к Doom2DF.exe:'),
1613 ('LAB ES GRID', 'Grid Step:',
1615 ('LAB ES GRID COLOR', 'Grid Color:',
1617 ('LAB ES BACK', 'Background Color:',
1619 ('LAB ES PREVIEW', 'Texture Preview Background Color:',
1620 'Цвет фона поля предпросмотра текстуры:'),
1621 ('LAB ES MINIMAP', 'Mini-map Scale:',
1622 'Масштаб мини-карты:'),
1623 ('LAB ES RECENT', 'Recent Maps List Contains:',
1624 'Запоминать последних открытых карт:'),
1625 ('LAB ES LANGUAGE', 'Language:',
1628 ('LAB PACK SAVE TO', 'Save to:',
1630 ('LAB PACK MAP NAME', 'Map Resource Name:',
1631 'Название ресурса карты:'),
1632 ('LAB PACK TEXTURES', 'Texture Section:',
1633 'Секция для текстур:'),
1634 ('LAB PACK SKY', 'Sky Section:',
1635 'Секция для неба:'),
1636 ('LAB PACK MUSIC', 'Music Section:',
1637 'Секция для музыки:'),
1639 ('LAB MINI SCALE', 'Scale:',
1642 ('BTN APPLY PROPS', 'Apply Properties',
1643 'Применить свойства'),
1646 ('BTN CANCEL', 'Cancel',
1650 ('BTN CLOSE', 'Close',
1652 ('BTN ADD CLOSE', 'Add and Close',
1653 'Добавить и закрыть'),
1654 ('BTN TEST AGAIN', 'Check',
1656 ('BTN START', 'Run',
1658 ('BTN PACK', 'Pack',
1660 ('BTN SAVE', 'Save',
1662 ('BTN NO SOUND', 'No sound',
1664 ('BTN TEXTURE ADD', 'Add texture to the list',
1665 'Добавить текстуру в список'),
1666 ('BTN TEXTURE DELETE', 'Delete texture from the list',
1667 'Удалить текстуру из списка'),
1668 ('BTN TEXTURE EMPTY', 'Deselect texture',
1669 'Снять выбор с текстуры'),
1671 ('LOAD WAD', 'Reading WAD',
1673 ('LOAD MAP', 'Loading Map',
1675 ('LOAD TEXTURES', 'Reading Textures',
1677 ('LOAD PANELS', 'Reading Panels',
1679 ('LOAD ITEMS', 'Reading Items',
1680 'Чтение предметов'),
1681 ('LOAD MONSTERS', 'Reading Monsters',
1683 ('LOAD AREAS', 'Reading Areas',
1685 ('LOAD TRIGGERS', 'Reading Triggers',
1686 'Чтение триггеров'),
1688 ('TEST AREA WALL', 'Player collides with the wall and will be stuck.',
1689 'Если в этой области появится игрок, то он застрянет в стене и не сможет двигаться.'),
1690 ('TEST AREA WALL STR', 'Area #%d collides with Map (%d:%d)',
1691 'Область #%d пересекается с картой (%d:%d)'),
1692 ('TEST SPAWNS 1', 'There are several spawn points for First Player on the map',
1693 'Несколько точек появления первого игрока'),
1694 ('TEST SPAWNS 2', 'There are several spawn points for Second Player on the map',
1695 'Несколько точек появления второго игрока'),
1696 ('TEST SPAWNS', 'There are several spawn points on the map. Random one will be used.',
1697 'Несколько точек появления игрока, будет использована случайная.'),
1698 ('TEST NO DM', 'There are no DM spawn points on the map',
1699 'На карте нет точек DM'),
1700 ('TEST NO DM EX', 'There are no DM spawn points on the map. Only "Single Player" mode available.',
1701 'На карте нет точек DM, поиграть получится только в режиме "Single Player".'),
1702 ('TEST MONSTER WALL', 'Monster collides with the wall and will be stuck.',
1703 'Монстр пересекается с картой. Он застрянет в стене и не сможет двигаться'),
1704 ('TEST MONSTER WALL STR', 'Monster #%d collides with a map (%d:%d)',
1705 'Монстр #%d пересекается с картой (%d:%d)'),
1707 ('OPT NO TEXTURES', 'Texture list is empty',
1708 'Список текстур пуст'),
1709 ('OPT DELETED TEXTURES', 'Deleted Textures:',
1710 'Удалённые текстуры:'),
1711 ('OPT TOTAL TEXTURES', 'Textures Total:',
1713 ('OPT TEX DELETED', 'Textures Deleted:',
1714 'Удалено текстур:'),
1715 ('OPT PANELS OPT', 'Panels Optimized:',
1716 'Оптимизировано панелей:'),
1717 ('OPT WALLS', 'Walls Optimization...',
1718 'Оптимизация стен...'),
1719 ('OPT FORES', 'Foreground Optimization...',
1720 'Оптимизация переднего плана...'),
1721 ('OPT BACKS', 'Background Optimization...',
1722 'Оптимизация фона...'),
1723 ('OPT STAIRS', 'Steps Optimization...',
1724 'Оптимизация ступеней...'),
1725 ('OPT WATER', 'Water Optimization...',
1726 'Оптимизация воды...'),
1727 ('OPT ACID1', 'Acid 1 Optimization...',
1728 'Оптимизация кислоты 1...'),
1729 ('OPT ACID2', 'Acid 2 Optimization...',
1730 'Оптимизация кислоты 2...'),
1731 ('OPT LIFTS', 'Streams Optimization...',
1732 'Оптимизация лифтов...'),
1733 ('OPT BLOCKMON', 'Monster Boundaries Optimization...',
1734 'Оптимизация блокираторов монстров....'),
1735 ('OPT TOTAL PANELS', 'Panels Total:',
1737 ('OPT PANELS AFTER', 'Panels after Optimization:',
1738 'Панелей после оптимизации:'),
1740 ('WAD SPECIAL MAP', '<MAP WAD-FILE>',
1741 '<WAD-ФАЙЛ КАРТЫ>'),
1742 ('WAD SPECIAL TEXS', '<EXTRA TEXTURES>',
1745 ('FILE FILTER ALL', 'Doom 2D: Forever Maps (*.wad)|*.wad|Old Doom 2D: Forever 0.30 Maps (*.ini)|*.ini|All Files (*.*)|*.*',
1746 'Карты Doom 2D: Forever (*.wad)|*.wad|Старые карты Doom 2D: Forever 0.30 (*.ini)|*.ini|Все файлы (*.*)|*.*'),
1747 ('FILE FILTER WAD', 'Doom 2D: Forever Maps (*.wad)|*.wad|All Files (*.*)|*.*',
1748 'Карты Doom 2D: Forever (*.wad)|*.wad|Все файлы (*.*)|*.*'),
1750 ('EDITOR TITLE', 'Doom 2D: Forever Map Editor',
1751 'Редактор карт Doom 2D: Forever'),
1757 procedure SetupArrays();
1763 BoolNames
[False] := _lc
[I_ARRAY_BOOL_FALSE
];
1764 BoolNames
[True] := _lc
[I_ARRAY_BOOL_TRUE
];
1767 DirNames
[D_LEFT
] := _lc
[I_ARRAY_DIR_LEFT
];
1768 DirNames
[D_RIGHT
] := _lc
[I_ARRAY_DIR_RIGHT
];
1770 // Смены направления:
1771 DirNamesAdv
[0] := _lc
[I_ARRAY_DIR_SAME
];
1772 DirNamesAdv
[1] := _lc
[I_ARRAY_DIR_LEFT
];
1773 DirNamesAdv
[2] := _lc
[I_ARRAY_DIR_RIGHT
];
1774 DirNamesAdv
[3] := _lc
[I_ARRAY_DIR_REVERSED
];
1776 // Направление (на кнопках):
1777 DirButtonNames
[1] := _lc
[I_ARRAY_DIRBTN_LEFT
];
1778 DirButtonNames
[2] := _lc
[I_ARRAY_DIRBTN_RIGHT
];
1779 DirButtonNames
[3] := _lc
[I_ARRAY_DIRBTN_UP
];
1780 DirButtonNames
[4] := _lc
[I_ARRAY_DIRBTN_DOWN
];
1782 // Названия панелей:
1783 PANELNAMES
[0] := _lc
[I_ARRAY_PANEL_WALL
];
1784 PANELNAMES
[1] := _lc
[I_ARRAY_PANEL_BACK
];
1785 PANELNAMES
[2] := _lc
[I_ARRAY_PANEL_FRONT
];
1786 PANELNAMES
[3] := _lc
[I_ARRAY_PANEL_DOOR_OPEN
];
1787 PANELNAMES
[4] := _lc
[I_ARRAY_PANEL_DOOR_CLOSE
];
1788 PANELNAMES
[5] := _lc
[I_ARRAY_PANEL_STAIR
];
1789 PANELNAMES
[6] := _lc
[I_ARRAY_PANEL_WATER
];
1790 PANELNAMES
[7] := _lc
[I_ARRAY_PANEL_ACID_1
];
1791 PANELNAMES
[8] := _lc
[I_ARRAY_PANEL_ACID_2
];
1792 PANELNAMES
[9] := _lc
[I_ARRAY_PANEL_LIFT_UP
];
1793 PANELNAMES
[10] := _lc
[I_ARRAY_PANEL_LIFT_DOWN
];
1794 PANELNAMES
[11] := _lc
[I_ARRAY_PANEL_LIFT_LEFT
];
1795 PANELNAMES
[12] := _lc
[I_ARRAY_PANEL_LIFT_RIGHT
];
1796 PANELNAMES
[13] := _lc
[I_ARRAY_PANEL_BLOCKMON
];
1798 // Названия эффектов:
1799 EffectNames
[EFFECT_NONE
] := _lc
[I_ARRAY_FX_NONE
];
1800 EffectNames
[EFFECT_TELEPORT
] := _lc
[I_ARRAY_FX_TELEPORT
];
1801 EffectNames
[EFFECT_RESPAWN
] := _lc
[I_ARRAY_FX_RESPAWN
];
1802 EffectNames
[EFFECT_FIRE
] := _lc
[I_ARRAY_FX_FIRE
];
1804 // Названия предметов:
1805 ItemNames
[ITEM_MEDKIT_SMALL
] := _lc
[I_ARRAY_ITEM_MEDKIT
];
1806 ItemNames
[ITEM_MEDKIT_LARGE
] := _lc
[I_ARRAY_ITEM_LARGE_MEDKIT
];
1807 ItemNames
[ITEM_MEDKIT_BLACK
] := _lc
[I_ARRAY_ITEM_BLACK_MEDKIT
];
1808 ItemNames
[ITEM_ARMOR_GREEN
] := _lc
[I_ARRAY_ITEM_GREEN_ARMOR
];
1809 ItemNames
[ITEM_ARMOR_BLUE
] := _lc
[I_ARRAY_ITEM_BLUE_ARMOR
];
1810 ItemNames
[ITEM_SPHERE_BLUE
] := _lc
[I_ARRAY_ITEM_BLUE_SPHERE
];
1811 ItemNames
[ITEM_SPHERE_WHITE
] := _lc
[I_ARRAY_ITEM_MEGASPHERE
];
1812 ItemNames
[ITEM_SUIT
] := _lc
[I_ARRAY_ITEM_HAZ_SUIT
];
1813 ItemNames
[ITEM_OXYGEN
] := _lc
[I_ARRAY_ITEM_OXYGEN
];
1814 ItemNames
[ITEM_INVUL
] := _lc
[I_ARRAY_ITEM_INVULNERABILITY
];
1815 ItemNames
[ITEM_WEAPON_SAW
] := _lc
[I_ARRAY_ITEM_CHAINSAW
];
1816 ItemNames
[ITEM_WEAPON_SHOTGUN1
] := _lc
[I_ARRAY_ITEM_SHOTGUN
];
1817 ItemNames
[ITEM_WEAPON_SHOTGUN2
] := _lc
[I_ARRAY_ITEM_DB_SHOTGUN
];
1818 ItemNames
[ITEM_WEAPON_CHAINGUN
] := _lc
[I_ARRAY_ITEM_CHAINGUN
];
1819 ItemNames
[ITEM_WEAPON_ROCKETLAUNCHER
] := _lc
[I_ARRAY_ITEM_ROCKET_LAUNCHER
];
1820 ItemNames
[ITEM_WEAPON_PLASMA
] := _lc
[I_ARRAY_ITEM_PLASMA_RIFLE
];
1821 ItemNames
[ITEM_WEAPON_BFG
] := _lc
[I_ARRAY_ITEM_BFG
];
1822 ItemNames
[ITEM_WEAPON_SUPERPULEMET
] := _lc
[I_ARRAY_ITEM_SUPER_MINIGUN
];
1823 ItemNames
[ITEM_AMMO_BULLETS
] := _lc
[I_ARRAY_ITEM_CLIP
];
1824 ItemNames
[ITEM_AMMO_BULLETS_BOX
] := _lc
[I_ARRAY_ITEM_AMMO_BOX
];
1825 ItemNames
[ITEM_AMMO_SHELLS
] := _lc
[I_ARRAY_ITEM_4_SHELLS
];
1826 ItemNames
[ITEM_AMMO_SHELLS_BOX
] := _lc
[I_ARRAY_ITEM_25_SHELLS
];
1827 ItemNames
[ITEM_AMMO_ROCKET
] := _lc
[I_ARRAY_ITEM_1_ROCKET
];
1828 ItemNames
[ITEM_AMMO_ROCKET_BOX
] := _lc
[I_ARRAY_ITEM_ROCKET_BOX
];
1829 ItemNames
[ITEM_AMMO_CELL
] := _lc
[I_ARRAY_ITEM_CELL
];
1830 ItemNames
[ITEM_AMMO_CELL_BIG
] := _lc
[I_ARRAY_ITEM_LARGE_CELL
];
1831 ItemNames
[ITEM_AMMO_BACKPACK
] := _lc
[I_ARRAY_ITEM_BACKPACK
];
1832 ItemNames
[ITEM_KEY_RED
] := _lc
[I_ARRAY_ITEM_KEY_RED
];
1833 ItemNames
[ITEM_KEY_GREEN
] := _lc
[I_ARRAY_ITEM_KEY_GREEN
];
1834 ItemNames
[ITEM_KEY_BLUE
] := _lc
[I_ARRAY_ITEM_KEY_BLUE
];
1835 ItemNames
[ITEM_WEAPON_KASTET
] := '?';
1836 ItemNames
[ITEM_WEAPON_PISTOL
] := '??';
1837 ItemNames
[ITEM_BOTTLE
] := _lc
[I_ARRAY_ITEM_BOTTLE
];
1838 ItemNames
[ITEM_HELMET
] := _lc
[I_ARRAY_ITEM_HELMET
];
1839 ItemNames
[ITEM_JETPACK
] := _lc
[I_ARRAY_ITEM_JETPACK
];
1840 ItemNames
[ITEM_INVIS
] := _lc
[I_ARRAY_ITEM_INVIS
];
1842 // Названия снарядов:
1843 ShotNames
[TRIGGER_SHOT_PISTOL
] := _lc
[I_ARRAY_SHOT_PISTOL
];
1844 ShotNames
[TRIGGER_SHOT_BULLET
] := _lc
[I_ARRAY_SHOT_BULLET
];
1845 ShotNames
[TRIGGER_SHOT_SHOTGUN
] := _lc
[I_ARRAY_SHOT_SHOTGUN
];
1846 ShotNames
[TRIGGER_SHOT_SSG
] := _lc
[I_ARRAY_SHOT_SSG
];
1847 ShotNames
[TRIGGER_SHOT_IMP
] := _lc
[I_ARRAY_SHOT_IMP
];
1848 ShotNames
[TRIGGER_SHOT_PLASMA
] := _lc
[I_ARRAY_SHOT_PLASMA
];
1849 ShotNames
[TRIGGER_SHOT_SPIDER
] := _lc
[I_ARRAY_SHOT_SPIDER
];
1850 ShotNames
[TRIGGER_SHOT_CACO
] := _lc
[I_ARRAY_SHOT_CACO
];
1851 ShotNames
[TRIGGER_SHOT_BARON
] := _lc
[I_ARRAY_SHOT_BARON
];
1852 ShotNames
[TRIGGER_SHOT_MANCUB
] := _lc
[I_ARRAY_SHOT_MANCUB
];
1853 ShotNames
[TRIGGER_SHOT_REV
] := _lc
[I_ARRAY_SHOT_REV
];
1854 ShotNames
[TRIGGER_SHOT_ROCKET
] := _lc
[I_ARRAY_SHOT_ROCKET
];
1855 ShotNames
[TRIGGER_SHOT_BFG
] := _lc
[I_ARRAY_SHOT_BFG
];
1856 ShotNames
[TRIGGER_SHOT_EXPL
] := _lc
[I_ARRAY_SHOT_EXPL
];
1857 ShotNames
[TRIGGER_SHOT_BFGEXPL
] := _lc
[I_ARRAY_SHOT_BFGEXPL
];
1859 // Названия монстров:
1860 MonsterNames
[MONSTER_DEMON
] := _lc
[I_ARRAY_MON_DEMON
];
1861 MonsterNames
[MONSTER_IMP
] := _lc
[I_ARRAY_MON_IMP
];
1862 MonsterNames
[MONSTER_ZOMBY
] := _lc
[I_ARRAY_MON_ZOMBIE
];
1863 MonsterNames
[MONSTER_SERG
] := _lc
[I_ARRAY_MON_SERGEANT
];
1864 MonsterNames
[MONSTER_CYBER
] := _lc
[I_ARRAY_MON_CYBER
];
1865 MonsterNames
[MONSTER_CGUN
] := _lc
[I_ARRAY_MON_CGUN
];
1866 MonsterNames
[MONSTER_BARON
] := _lc
[I_ARRAY_MON_HELL_BARON
];
1867 MonsterNames
[MONSTER_KNIGHT
] := _lc
[I_ARRAY_MON_HELL_KNIGHT
];
1868 MonsterNames
[MONSTER_CACO
] := _lc
[I_ARRAY_MON_CACODEMON
];
1869 MonsterNames
[MONSTER_SOUL
] := _lc
[I_ARRAY_MON_LOST_SOUL
];
1870 MonsterNames
[MONSTER_PAIN
] := _lc
[I_ARRAY_MON_PAIN_ELEMENTAL
];
1871 MonsterNames
[MONSTER_SPIDER
] := _lc
[I_ARRAY_MON_MASTERMIND
];
1872 MonsterNames
[MONSTER_BSP
] := _lc
[I_ARRAY_MON_ARACHNATRON
];
1873 MonsterNames
[MONSTER_MANCUB
] := _lc
[I_ARRAY_MON_MANCUBUS
];
1874 MonsterNames
[MONSTER_SKEL
] := _lc
[I_ARRAY_MON_REVENANT
];
1875 MonsterNames
[MONSTER_VILE
] := _lc
[I_ARRAY_MON_ARCHVILE
];
1876 MonsterNames
[MONSTER_FISH
] := _lc
[I_ARRAY_MON_FISH
];
1877 MonsterNames
[MONSTER_BARREL
] := _lc
[I_ARRAY_MON_BARREL
];
1878 MonsterNames
[MONSTER_ROBO
] := _lc
[I_ARRAY_MON_ROBOT
];
1879 MonsterNames
[MONSTER_MAN
] := _lc
[I_ARRAY_MON_PRIKOLIST
];
1881 // Названия областей:
1882 AreaNames
[AREA_PLAYERPOINT1
] := _lc
[I_ARRAY_AREA_PLAYER_ONE
];
1883 AreaNames
[AREA_PLAYERPOINT2
] := _lc
[I_ARRAY_AREA_PLAYER_TWO
];
1884 AreaNames
[AREA_DMPOINT
] := _lc
[I_ARRAY_AREA_DM
];
1885 AreaNames
[AREA_REDFLAG
] := _lc
[I_ARRAY_AREA_FLAG_RED
];
1886 AreaNames
[AREA_BLUEFLAG
] := _lc
[I_ARRAY_AREA_FLAG_BLUE
];
1887 AreaNames
[AREA_DOMFLAG
] := _lc
[I_ARRAY_AREA_FLAG_DOM
];
1888 AreaNames
[AREA_REDTEAMPOINT
] := _lc
[I_ARRAY_AREA_TEAM_RED
];
1889 AreaNames
[AREA_BLUETEAMPOINT
] := _lc
[I_ARRAY_AREA_TEAM_BLUE
];
1891 // Названия триггеров:
1892 TriggerNames
[TRIGGER_EXIT
] := _lc
[I_ARRAY_TR_EXIT
];
1893 TriggerNames
[TRIGGER_TELEPORT
] := _lc
[I_ARRAY_TR_TELEPORT
];
1894 TriggerNames
[TRIGGER_OPENDOOR
] := _lc
[I_ARRAY_TR_DOOR_OPEN
];
1895 TriggerNames
[TRIGGER_CLOSEDOOR
] := _lc
[I_ARRAY_TR_DOOR_CLOSE
];
1896 TriggerNames
[TRIGGER_DOOR
] := _lc
[I_ARRAY_TR_DOOR_SWITCH
];
1897 TriggerNames
[TRIGGER_DOOR5
] := _lc
[I_ARRAY_TR_DOOR_5_SEC
];
1898 TriggerNames
[TRIGGER_CLOSETRAP
] := _lc
[I_ARRAY_TR_TRAP_CLOSE
];
1899 TriggerNames
[TRIGGER_TRAP
] := _lc
[I_ARRAY_TR_TRAP
];
1900 TriggerNames
[TRIGGER_PRESS
] := _lc
[I_ARRAY_TR_EXTEND
];
1901 TriggerNames
[TRIGGER_SECRET
] := _lc
[I_ARRAY_TR_SECRET
];
1902 TriggerNames
[TRIGGER_LIFTUP
] := _lc
[I_ARRAY_TR_LIFT_UP
];
1903 TriggerNames
[TRIGGER_LIFTDOWN
] := _lc
[I_ARRAY_TR_LIFT_DOWN
];
1904 TriggerNames
[TRIGGER_LIFT
] := _lc
[I_ARRAY_TR_LIFT_SWITCH
];
1905 TriggerNames
[TRIGGER_TEXTURE
] := _lc
[I_ARRAY_TR_TEXTURE
];
1906 TriggerNames
[TRIGGER_ON
] := _lc
[I_ARRAY_TR_ON
];
1907 TriggerNames
[TRIGGER_OFF
] := _lc
[I_ARRAY_TR_OFF
];
1908 TriggerNames
[TRIGGER_ONOFF
] := _lc
[I_ARRAY_TR_SWITCH
];
1909 TriggerNames
[TRIGGER_SOUND
] := _lc
[I_ARRAY_TR_SOUND
];
1910 TriggerNames
[TRIGGER_SPAWNMONSTER
] := _lc
[I_ARRAY_TR_SPAWN_MONSTER
];
1911 TriggerNames
[TRIGGER_SPAWNITEM
] := _lc
[I_ARRAY_TR_SPAWN_ITEM
];
1912 TriggerNames
[TRIGGER_MUSIC
] := _lc
[I_ARRAY_TR_MUSIC
];
1913 TriggerNames
[TRIGGER_PUSH
] := _lc
[I_ARRAY_TR_PUSH
];
1914 TriggerNames
[TRIGGER_SCORE
] := _lc
[I_ARRAY_TR_SCORE
];
1915 TriggerNames
[TRIGGER_MESSAGE
] := _lc
[I_ARRAY_TR_MESSAGE
];
1916 TriggerNames
[TRIGGER_DAMAGE
] := _lc
[I_ARRAY_TR_DAMAGE
];
1917 TriggerNames
[TRIGGER_HEALTH
] := _lc
[I_ARRAY_TR_HEALTH
];
1918 TriggerNames
[TRIGGER_SHOT
] := _lc
[I_ARRAY_TR_SHOT
];
1919 TriggerNames
[TRIGGER_EFFECT
] := _lc
[I_ARRAY_TR_EFFECT
];
1921 // Установка значений в панели выбора объектов:
1924 lbPanelType
.Items
.Clear();
1925 for i
:= 0 to High(PANELNAMES
) do
1926 lbPanelType
.Items
.Add(PANELNAMES
[i
]);
1927 lbPanelType
.ItemIndex
:= 0;
1930 for i
:= ITEM_MEDKIT_SMALL
to ITEM_KEY_BLUE
do
1931 lbItemList
.Items
.Add(ItemNames
[i
]);
1932 lbItemList
.Items
.Add(ItemNames
[ITEM_BOTTLE
]);
1933 lbItemList
.Items
.Add(ItemNames
[ITEM_HELMET
]);
1934 lbItemList
.Items
.Add(ItemNames
[ITEM_JETPACK
]);
1935 lbItemList
.Items
.Add(ItemNames
[ITEM_INVIS
]);
1937 lbMonsterList
.Clear();
1938 for i
:= MONSTER_DEMON
to MONSTER_MAN
do
1939 lbMonsterList
.Items
.Add(MonsterNames
[i
]);
1941 lbAreasList
.Clear();
1942 for i
:= AREA_PLAYERPOINT1
to AREA_BLUETEAMPOINT
do
1943 lbAreasList
.Items
.Add(AreaNames
[i
]);
1945 lbTriggersList
.Clear();
1946 for i
:= Low(TriggerNames
) to High(TriggerNames
) do
1947 lbTriggersList
.Items
.Add(TriggerNames
[i
]);
1949 clbActivationType
.Clear();
1950 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_PLAYER_CLOSE
]);
1951 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_MONSTER_CLOSE
]);
1952 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_PLAYER_PRESS
]);
1953 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_MONSTER_PRESS
]);
1954 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_SHOT
]);
1955 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_NO_MONSTER
]);
1958 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_RED
]);
1959 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_GREEN
]);
1960 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_BLUE
]);
1961 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_TEAM_RED
]);
1962 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_TEAM_BLUE
]);
1966 procedure SetupCaptions();
1975 FormCaption
:= _lc
[I_EDITOR_TITLE
];
1976 i
:= Pos('-', Caption
);
1979 Caption
:= FormCaption
+ ' ' + Copy(Caption
, i
, Length(Caption
)-i
+1);
1982 Caption
:= FormCaption
;
1985 miMenuFile
.Caption
:= _lc
[I_MENU_FILE
];
1986 miNewMap
.Caption
:= _lc
[I_MENU_FILE_NEW
];
1987 miOpenMap
.Caption
:= _lc
[I_MENU_FILE_OPEN
];
1988 miSaveMap
.Caption
:= _lc
[I_MENU_FILE_SAVE
];
1989 miSaveMapAs
.Caption
:= _lc
[I_MENU_FILE_SAVE_AS
];
1990 miOpenWadMap
.Caption
:= _lc
[I_MENU_FILE_OPEN_WAD
];
1991 miSaveMiniMap
.Caption
:= _lc
[I_MENU_FILE_SAVE_MINI
];
1992 miDeleteMap
.Caption
:= _lc
[I_MENU_FILE_DELETE
];
1993 miPackMap
.Caption
:= _lc
[I_MENU_FILE_PACK_MAP
];
1994 miExit
.Caption
:= _lc
[I_MENU_FILE_EXIT
];
1996 miMenuEdit
.Caption
:= _lc
[I_MENU_EDIT
];
1997 miUndo
.Caption
:= _lc
[I_MENU_EDIT_UNDO
];
1998 miCopy
.Caption
:= _lc
[I_MENU_EDIT_COPY
];
1999 miCut
.Caption
:= _lc
[I_MENU_EDIT_CUT
];
2000 miPaste
.Caption
:= _lc
[I_MENU_EDIT_PASTE
];
2001 miSelectAll
.Caption
:= _lc
[I_MENU_EDIT_SELECT_ALL
];
2002 miToFore
.Caption
:= _lc
[I_MENU_EDIT_TO_FORE
];
2003 miToBack
.Caption
:= _lc
[I_MENU_EDIT_TO_BACK
];
2005 miMenuTools
.Caption
:= _lc
[I_MENU_TOOLS
];
2006 miSnapToGrid
.Caption
:= _lc
[I_MENU_TOOLS_SNAP_GRID
];
2007 miMiniMap
.Caption
:= _lc
[I_MENU_TOOLS_MINIMAP
];
2008 miSwitchGrid
.Caption
:= _lc
[I_MENU_TOOLS_STEP_GRID
];
2009 miShowEdges
.Caption
:= _lc
[I_MENU_TOOLS_SHOW_EDGES
];
2010 miLayers
.Caption
:= _lc
[I_MENU_TOOLS_LAYERS
];
2011 miLayer1
.Caption
:= _lc
[I_MENU_LAYER_BACK
];
2012 miLayer2
.Caption
:= _lc
[I_MENU_LAYER_WALL
];
2013 miLayer3
.Caption
:= _lc
[I_MENU_LAYER_FORE
];
2014 miLayer4
.Caption
:= _lc
[I_MENU_LAYER_STAIR
];
2015 miLayer5
.Caption
:= _lc
[I_MENU_LAYER_WATER
];
2016 miLayer6
.Caption
:= _lc
[I_MENU_LAYER_ITEM
];
2017 miLayer7
.Caption
:= _lc
[I_MENU_LAYER_MONSTER
];
2018 miLayer8
.Caption
:= _lc
[I_MENU_LAYER_AREA
];
2019 miLayer9
.Caption
:= _lc
[I_MENU_LAYER_TRIGGER
];
2021 miMenuService
.Caption
:= _lc
[I_MENU_SERV
];
2022 miCheckMap
.Caption
:= _lc
[I_MENU_SERV_TEST
];
2023 miOptimmization
.Caption
:= _lc
[I_MENU_SERV_OPT
];
2024 miMapPreview
.Caption
:= _lc
[I_MENU_SERV_PREVIEW
];
2025 miTestMap
.Caption
:= _lc
[I_MENU_SERV_LAUNCH
];
2027 miMenuSettings
.Caption
:= _lc
[I_MENU_SETS
];
2028 miMapOptions
.Caption
:= _lc
[I_MENU_SETS_MAP
];
2029 miOptions
.Caption
:= _lc
[I_MENU_SETS_EDITOR
];
2030 miMapTestSettings
.Caption
:= _lc
[I_MENU_SETS_LAUNCH
];
2032 miMenuHelp
.Caption
:= _lc
[I_MENU_HELP
];
2033 miAbout
.Caption
:= _lc
[I_MENU_HELP_ABOUT
];
2035 // Панель инструментов:
2036 tbNewMap
.Hint
:= _lc
[I_MENU_TB_NEW
];
2037 tbOpenMap
.Hint
:= _lc
[I_MENU_TB_OPEN
];
2038 tbSaveMap
.Hint
:= _lc
[I_MENU_TB_SAVE
];
2039 tbOpenWadMap
.Hint
:= _lc
[I_MENU_TB_OPEN_WAD
];
2040 tbShowMap
.Hint
:= _lc
[I_MENU_TB_MINIMAP
];
2041 tbShow
.Hint
:= _lc
[I_MENU_TB_LAYERS
];
2042 tbGridOn
.Hint
:= _lc
[I_MENU_TB_GRID
];
2043 tbGrid
.Hint
:= _lc
[I_MENU_TB_GRID_STEP
];
2044 tbTestMap
.Hint
:= _lc
[I_MENU_TB_LAUNCH
];
2045 // Всплывающее меню для кнопки слоев:
2046 miLayerP1
.Caption
:= _lc
[I_MENU_LAYER_BACK
];
2047 miLayerP2
.Caption
:= _lc
[I_MENU_LAYER_WALL
];
2048 miLayerP3
.Caption
:= _lc
[I_MENU_LAYER_FORE
];
2049 miLayerP4
.Caption
:= _lc
[I_MENU_LAYER_STAIR
];
2050 miLayerP5
.Caption
:= _lc
[I_MENU_LAYER_WATER
];
2051 miLayerP6
.Caption
:= _lc
[I_MENU_LAYER_ITEM
];
2052 miLayerP7
.Caption
:= _lc
[I_MENU_LAYER_MONSTER
];
2053 miLayerP8
.Caption
:= _lc
[I_MENU_LAYER_AREA
];
2054 miLayerP9
.Caption
:= _lc
[I_MENU_LAYER_TRIGGER
];
2055 // Всплывающее меню для кнопки теста карты:
2056 miMapTestPMSet
.Caption
:= _lc
[I_MENU_LAUNCH_SETS
];
2058 // Кнопка применения свойств:
2059 bApplyProperty
.Caption
:= _lc
[I_BTN_APPLY_PROPS
];
2060 // Редактор свойств объектов:
2061 vleObjectProperty
.TitleCaptions
[0] := _lc
[I_CTRL_PROP_KEY
];
2062 vleObjectProperty
.TitleCaptions
[1] := _lc
[I_CTRL_PROP_VALUE
];
2064 // Вкладка "Панели":
2065 tsPanels
.Caption
:= _lc
[I_CTRL_PANELS
];
2066 lbPanelType
.Hint
:= _lc
[I_PROP_PANEL_TYPE
];
2067 lbTextureList
.Hint
:= _lc
[I_CTRL_LIST_TEXTURE
];
2068 // Панель настройки текстур:
2069 LabelTxW
.Caption
:= _lc
[I_LAB_TEX_WIDTH
];
2070 LabelTxH
.Caption
:= _lc
[I_LAB_TEX_HEIGHT
];
2071 cbPreview
.Caption
:= _lc
[I_CTRL_PREVIEW
];
2072 bbAddTexture
.Hint
:= _lc
[I_BTN_TEXTURE_ADD
];
2073 bbRemoveTexture
.Hint
:= _lc
[I_BTN_TEXTURE_DELETE
];
2074 bClearTexture
.Hint
:= _lc
[I_BTN_TEXTURE_EMPTY
];
2076 // Вкладка "Предметы":
2077 tsItems
.Caption
:= _lc
[I_CTRL_ITEMS
];
2078 lbItemList
.Hint
:= _lc
[I_CTRL_LIST_ITEM
];
2079 cbOnlyDM
.Caption
:= _lc
[I_CTRL_ITEM_DM
];
2080 cbFall
.Caption
:= _lc
[I_CTRL_ITEM_FALLS
];
2082 // Вкладка "Монстры":
2083 tsMonsters
.Caption
:= _lc
[I_CTRL_MONSTERS
];
2084 lbMonsterList
.Hint
:= _lc
[I_CTRL_LIST_MONSTER
];
2085 rbMonsterLeft
.Caption
:= _lc
[I_CTRL_LEFT
];
2086 rbMonsterRight
.Caption
:= _lc
[I_CTRL_RIGHT
];
2088 // Вкладка "Области":
2089 tsAreas
.Caption
:= _lc
[I_CTRL_AREAS
];
2090 lbAreasList
.Hint
:= _lc
[I_CTRL_LIST_AREA
];
2091 rbAreaLeft
.Caption
:= _lc
[I_CTRL_LEFT
];
2092 rbAreaRight
.Caption
:= _lc
[I_CTRL_RIGHT
];
2094 // Вкладка "Триггеры":
2095 tsTriggers
.Caption
:= _lc
[I_CTRL_TRIGGERS
];
2096 lbTriggersList
.Hint
:= _lc
[I_CTRL_LIST_TRIGGER
];
2097 clbActivationType
.Hint
:= _lc
[I_CTRL_LIST_ACTIVE
];
2098 clbKeys
.Hint
:= _lc
[I_CTRL_LIST_KEYS
];
2101 // Форма "О программе":
2104 Caption
:= _lc
[I_CAP_ABOUT
];
2105 LabelTitle
.Caption
:= _lc
[I_EDITOR_TITLE
];
2106 LabelVer
.Caption
:= _lc
[I_LAB_ABOUT_VER
];
2107 LabelAuthor
.Caption
:= _lc
[I_LAB_ABOUT_AUTHOR
];
2108 LabelAuthor2
.Caption
:= _lc
[I_LAB_ABOUT_AUTHOR_2
];
2109 LabelMail
.Caption
:= _lc
[I_LAB_ABOUT_MAIL
];
2110 LabelMail2
.Caption
:= _lc
[I_LAB_ABOUT_MAIL_2
];
2111 LabelSite
.Caption
:= _lc
[I_LAB_ABOUT_SITE
];
2112 LabelHttp
.Caption
:= _lc
[I_LAB_ABOUT_HTTP
];
2115 // Форма "Тип активации":
2116 with ActivationTypeForm
do
2118 Caption
:= _lc
[I_CAP_ACT
];
2119 cbPlayerCollide
.Caption
:= _lc
[I_CTRL_ACT_PLAYER_CLOSE
];
2120 cbMonsterCollide
.Caption
:= _lc
[I_CTRL_ACT_MONSTER_CLOSE
];
2121 cbPlayerPress
.Caption
:= _lc
[I_CTRL_ACT_PLAYER_PRESS
];
2122 cbMonsterPress
.Caption
:= _lc
[I_CTRL_ACT_MONSTER_PRESS
];
2123 cbShot
.Caption
:= _lc
[I_CTRL_ACT_SHOT
];
2124 cbNoMonster
.Caption
:= _lc
[I_CTRL_ACT_NO_MONSTER
];
2125 bOK
.Caption
:= _lc
[I_BTN_OK
];
2128 // Форма "Выбор текстуры для неба":
2131 Caption
:= _lc
[I_CAP_ADD_SKY
];
2132 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2133 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2134 bOK
.Caption
:= _lc
[I_BTN_OK
];
2135 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2138 // Форма "Выбор звука или музыки":
2139 with AddSoundForm
do
2141 Caption
:= _lc
[I_CAP_ADD_SOUND
];
2142 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2143 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2144 bOK
.Caption
:= _lc
[I_BTN_OK
];
2145 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2146 bEmpty
.Caption
:= _lc
[I_BTN_NO_SOUND
];
2149 // Форма "Выбор текстуры":
2150 with AddTextureForm
do
2152 Caption
:= _lc
[I_CAP_ADD_TEXTURE
];
2153 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2154 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2155 bAddTexture
.Caption
:= _lc
[I_BTN_ADD
];
2156 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2157 bAddClose
.Caption
:= _lc
[I_BTN_ADD_CLOSE
];
2160 // Форма "Выбор типа монстра" / "Выбор типа предмета":
2161 ChooseTypeForm
.bOK
.Caption
:= _lc
[I_BTN_OK
];
2166 Caption
:= _lc
[I_CAP_KEYS
];
2167 cbRedKey
.Caption
:= _lc
[I_CTRL_KEYS_RED
];
2168 cbGreenKey
.Caption
:= _lc
[I_CTRL_KEYS_GREEN
];
2169 cbBlueKey
.Caption
:= _lc
[I_CTRL_KEYS_BLUE
];
2170 cbRedTeam
.Caption
:= _lc
[I_CTRL_KEYS_TEAM_RED
];
2171 cbBlueTeam
.Caption
:= _lc
[I_CTRL_KEYS_TEAM_BLUE
];
2172 bOK
.Caption
:= _lc
[I_BTN_OK
];
2175 // Форма "Проверка карты":
2176 with MapCheckForm
do
2178 Caption
:= _lc
[I_CAP_TEST
];
2179 bCheckMap
.Caption
:= _lc
[I_BTN_TEST_AGAIN
];
2180 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2183 // Форма "Оптимизация карты":
2184 with MapOptimizationForm
do
2186 Caption
:= _lc
[I_CAP_OPT
];
2187 // Выбор оптимизации:
2188 GroupBoxOpt
.Caption
:= _lc
[I_CTRL_OPT_GB
];
2189 rbTexturesOptimization
.Caption
:= _lc
[I_CTRL_OPT_TEXTURE
];
2190 rbPanelsOptimization
.Caption
:= _lc
[I_CTRL_OPT_PANEL
];
2191 // Оптимизация текстур:
2192 bBeginTextureOptimization
.Caption
:= _lc
[I_BTN_START
];
2193 // Оптимизация панелей:
2194 cbOptimizeWalls
.Caption
:= _lc
[I_CTRL_OPT_WALL
];
2195 cbOptimizeForeGround
.Caption
:= _lc
[I_CTRL_OPT_FORE
];
2196 cbOptimizeBackGround
.Caption
:= _lc
[I_CTRL_OPT_BACK
];
2197 cbOptimizeSteps
.Caption
:= _lc
[I_CTRL_OPT_STAIR
];
2198 cbOptimizeWater
.Caption
:= _lc
[I_CTRL_OPT_WATER
];
2199 cbOptimizeAcid1
.Caption
:= _lc
[I_CTRL_OPT_ACID1
];
2200 cbOptimizeAcid2
.Caption
:= _lc
[I_CTRL_OPT_ACID2
];
2201 cbOptimizeLift
.Caption
:= _lc
[I_CTRL_OPT_LIFT
];
2202 cbOptimizeBlockMon
.Caption
:= _lc
[I_CTRL_OPT_BLOCKMON
];
2203 bBeginPanelsOptimization
.Caption
:= _lc
[I_BTN_START
];
2206 // Форма "Параметры карты":
2207 with MapOptionsForm
do
2209 Caption
:= _lc
[I_CAP_SETS
];
2210 // Основные параметры:
2211 LabelName
.Caption
:= _lc
[I_LAB_SETS_NAME
];
2212 LabelDesc
.Caption
:= _lc
[I_LAB_SETS_DESC
];
2213 LabelAuthor
.Caption
:= _lc
[I_LAB_SETS_AUTHOR
];
2214 LabelBack
.Caption
:= _lc
[I_LAB_SETS_BACK
];
2215 LabelMusic
.Caption
:= _lc
[I_LAB_SETS_MUSIC
];
2217 GBStats
.Caption
:= _lc
[I_CTRL_SETS_STATS
];
2218 LabelTexs
.Caption
:= _lc
[I_LAB_SETS_TEXTURES
];
2219 LabelPanels
.Caption
:= _lc
[I_LAB_SETS_PANELS
];
2220 LabelItems
.Caption
:= _lc
[I_LAB_SETS_ITEMS
];
2221 LabelMonsters
.Caption
:= _lc
[I_LAB_SETS_MONSTERS
];
2222 LabelAreas
.Caption
:= _lc
[I_LAB_SETS_AREAS
];
2223 LabelTriggers
.Caption
:= _lc
[I_LAB_SETS_TRIGGERS
];
2225 GBSizes
.Caption
:= _lc
[I_CTRL_SETS_SIZES
];
2226 LabelWidth
.Caption
:= _lc
[I_LAB_SETS_WIDTH
];
2227 LabelHeight
.Caption
:= _lc
[I_LAB_SETS_HEIGHT
];
2228 LabelCurSize
.Caption
:= _lc
[I_LAB_SETS_SIZES
];
2229 LabelMapMove
.Caption
:= _lc
[I_LAB_SETS_MAPMOVE
];
2230 cbSnapping
.Caption
:= _lc
[I_LAB_SETS_SNAPPING
];
2232 bOK
.Caption
:= _lc
[I_BTN_OK
];
2233 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2236 // Форма "Настройки теста карты":
2239 Caption
:= _lc
[I_CAP_LAUNCH
];
2240 bOK
.Caption
:= _lc
[I_BTN_OK
];
2241 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2243 rbDM
.Caption
:= _lc
[I_CTRL_LAUNCH_DM
];
2244 rbTDM
.Caption
:= _lc
[I_CTRL_LAUNCH_TDM
];
2245 rbCTF
.Caption
:= _lc
[I_CTRL_LAUNCH_CTF
];
2246 rbCOOP
.Caption
:= _lc
[I_CTRL_LAUNCH_COOP
];
2248 cbTwoPlayers
.Caption
:= _lc
[I_CTRL_LAUNCH_2P
];
2249 cbTeamDamage
.Caption
:= _lc
[I_CTRL_LAUNCH_FF
];
2250 cbAllowExit
.Caption
:= _lc
[I_CTRL_LAUNCH_EXIT
];
2251 cbWeaponStay
.Caption
:= _lc
[I_CTRL_LAUNCH_WEAPONS
];
2252 cbMonstersDM
.Caption
:= _lc
[I_CTRL_LAUNCH_MONSTERS
];
2253 cbMapOnce
.Caption
:= _lc
[I_CTRL_LAUNCH_CLOSE
];
2254 LabelTime
.Caption
:= _lc
[I_LAB_LAUNCH_TIME
];
2255 LabelSecs
.Caption
:= _lc
[I_LAB_LAUNCH_SECS
];
2256 LabelScore
.Caption
:= _lc
[I_LAB_LAUNCH_SCORE
];
2258 LabelPath
.Caption
:= _lc
[I_LAB_LAUNCH_PATH
];
2259 FindD2dDialog
.Title
:= _lc
[I_CTRL_LAUNCH_OPEN
];
2262 // Форма "Настройки редактора":
2265 Caption
:= _lc
[I_CAP_ES
];
2266 bOK
.Caption
:= _lc
[I_BTN_OK
];
2267 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2269 cbShowDots
.Caption
:= _lc
[I_CTRL_ES_GRID
];
2270 cbShowTexture
.Caption
:= _lc
[I_CTRL_ES_TEXTURE
];
2271 cbShowSize
.Caption
:= _lc
[I_CTRL_ES_PANEL_SIZE
];
2272 LabelGrid
.Caption
:= _lc
[I_LAB_ES_GRID
];
2273 LabelGridCol
.Caption
:= _lc
[I_LAB_ES_GRID_COLOR
];
2274 LabelBack
.Caption
:= _lc
[I_LAB_ES_BACK
];
2275 LabelPreview
.Caption
:= _lc
[I_LAB_ES_PREVIEW
];
2276 LabelMinimap
.Caption
:= _lc
[I_LAB_ES_MINIMAP
];
2277 LabelRecent
.Caption
:= _lc
[I_LAB_ES_RECENT
];
2278 LabelLanguage
.Caption
:= _lc
[I_LAB_ES_LANGUAGE
];
2281 // Форма "Упаковать карту":
2284 Caption
:= _lc
[I_CAP_PACK
];
2285 bPack
.Caption
:= _lc
[I_BTN_PACK
];
2286 LabelSaveTo
.Caption
:= _lc
[I_LAB_PACK_SAVE_TO
];
2287 LabelMapName
.Caption
:= _lc
[I_LAB_PACK_MAP_NAME
];
2289 cbTextrures
.Caption
:= _lc
[I_CTRL_PACK_TEXTURES
];
2290 LabelTextures
.Caption
:= _lc
[I_LAB_PACK_TEXTURES
];
2291 cbSky
.Caption
:= _lc
[I_CTRL_PACK_SKY
];
2292 LabelSky
.Caption
:= _lc
[I_LAB_PACK_SKY
];
2293 cbMusic
.Caption
:= _lc
[I_CTRL_PACK_MUSIC
];
2294 LabelMusic
.Caption
:= _lc
[I_LAB_PACK_MUSIC
];
2295 cbAdd
.Caption
:= _lc
[I_CTRL_PACK_ADD
];
2296 cbNonStandart
.Caption
:= _lc
[I_CTRL_PACK_NON_STD
];
2299 // Форма "Сохранить карту":
2302 Caption
:= _lc
[I_CAP_SAVE
];
2303 bOK
.Caption
:= _lc
[I_BTN_OK
];
2304 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2307 // Форма "Сохранить мини-карту":
2308 with SaveMiniMapForm
do
2310 Caption
:= _lc
[I_CAP_MINI
];
2311 LabelScale
.Caption
:= _lc
[I_LAB_MINI_SCALE
];
2312 bSave
.Caption
:= _lc
[I_BTN_SAVE
];
2313 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2316 // Форма "Выбор карты":
2317 with SelectMapForm
do
2319 Caption
:= _lc
[I_CAP_SELECT
];
2320 bOK
.Caption
:= _lc
[I_BTN_OK
];
2321 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2324 // Заголовок приложения:
2325 Application
.Title
:= _lc
[I_EDITOR_TITLE
];
2328 procedure g_Language_Load(fileName
: String);
2337 // Значения по-умолчанию:
2338 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
2339 _lc
[i
] := g_lang_default
[i
][LANGUAGE_ENGLISH_N
];
2341 if FileExists(fileName
) then
2343 AssignFile(F
, fileName
);
2354 // Строка - ключ перевода:
2357 (Pos(']', key
) > 2) then
2359 key
:= UpperCase(Copy(key
, 2, Pos(']', key
)-2));
2361 // Пропускаем пустые строки до строки - перевода:
2363 while (not EoF(F
)) and (value
= '') do
2366 value
:= Trim(value
);
2369 // Есть строка - перевод:
2372 // Ищем индекс ключа перевода:
2374 i
:= TStrings_Locale(k
);
2376 // От текущего к первому:
2377 while i
> Low(TStrings_Locale
) do
2379 if g_lang_default
[i
][1] = key
then
2392 i
:= Low(TStrings_Locale
);
2394 if (g_lang_default
[i
][1] = key
) then
2401 // От следующего за текущим до последнего:
2404 i
:= TStrings_Locale(k
);
2406 while i
< High(TStrings_Locale
) do
2410 if g_lang_default
[i
][1] = key
then
2426 e_WriteLog('Language file "'+fileName
+'" not found!', MSG_WARNING
);
2430 RemoveSelectFromObjects();
2433 procedure g_Language_Set(lang
: String);
2439 if lang
= LANGUAGE_ENGLISH
then
2440 n
:= LANGUAGE_ENGLISH_N
2442 n
:= LANGUAGE_RUSSIAN_N
;
2444 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
2446 _lc
[i
] := g_lang_default
[i
][n
];
2447 // have to cache a CP1251 version for GL text
2448 _glc
[i
] := utf8to1251(g_lang_default
[i
][n
]);
2453 RemoveSelectFromObjects();
2456 procedure g_Language_Dump(fileName
: String);
2462 AssignFile(F
, fileName
);
2465 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do