3 {$INCLUDE ../shared/a_modes.inc}
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
,
65 I_ARRAY_ITEM_FLAMETHROWER
,
67 I_ARRAY_ITEM_AMMO_BOX
,
68 I_ARRAY_ITEM_4_SHELLS
,
69 I_ARRAY_ITEM_25_SHELLS
,
70 I_ARRAY_ITEM_1_ROCKET
,
71 I_ARRAY_ITEM_ROCKET_BOX
,
73 I_ARRAY_ITEM_LARGE_CELL
,
75 I_ARRAY_ITEM_BACKPACK
,
77 I_ARRAY_ITEM_KEY_GREEN
,
78 I_ARRAY_ITEM_KEY_BLUE
,
104 I_ARRAY_MON_SERGEANT
,
107 I_ARRAY_MON_HELL_BARON
,
108 I_ARRAY_MON_HELL_KNIGHT
,
109 I_ARRAY_MON_CACODEMON
,
110 I_ARRAY_MON_LOST_SOUL
,
111 I_ARRAY_MON_PAIN_ELEMENTAL
,
112 I_ARRAY_MON_MASTERMIND
,
113 I_ARRAY_MON_ARACHNATRON
,
114 I_ARRAY_MON_MANCUBUS
,
115 I_ARRAY_MON_REVENANT
,
116 I_ARRAY_MON_ARCHVILE
,
120 I_ARRAY_MON_PRIKOLIST
,
122 I_ARRAY_AREA_PLAYER_ONE
,
123 I_ARRAY_AREA_PLAYER_TWO
,
125 I_ARRAY_AREA_FLAG_RED
,
126 I_ARRAY_AREA_FLAG_BLUE
,
127 I_ARRAY_AREA_FLAG_DOM
,
128 I_ARRAY_AREA_TEAM_RED
,
129 I_ARRAY_AREA_TEAM_BLUE
,
133 I_ARRAY_TR_DOOR_OPEN
,
134 I_ARRAY_TR_DOOR_CLOSE
,
135 I_ARRAY_TR_DOOR_SWITCH
,
136 I_ARRAY_TR_DOOR_5_SEC
,
137 I_ARRAY_TR_TRAP_CLOSE
,
142 I_ARRAY_TR_LIFT_DOWN
,
143 I_ARRAY_TR_LIFT_SWITCH
,
149 I_ARRAY_TR_SPAWN_MONSTER
,
150 I_ARRAY_TR_SPAWN_ITEM
,
175 I_PROP_TR_TEXTURE_PANEL
,
176 I_PROP_TR_ACTIVATION
,
184 I_PROP_TR_TELEPORT_TO
,
185 I_PROP_TR_TELEPORT_SILENT
,
186 I_PROP_TR_TELEPORT_DIR
,
187 I_PROP_TR_DOOR_PANEL
,
188 I_PROP_TR_TRAP_PANEL
,
192 I_PROP_TR_EX_MONSTER
,
194 I_PROP_TR_LIFT_PANEL
,
195 I_PROP_TR_TEXTURE_ONCE
,
196 I_PROP_TR_TEXTURE_ANIM_ONCE
,
197 I_PROP_TR_SOUND_NAME
,
198 I_PROP_TR_SOUND_VOLUME
,
200 I_PROP_TR_SOUND_COUNT
,
201 I_PROP_TR_SOUND_LOCAL
,
202 I_PROP_TR_SOUND_SWITCH
,
206 I_PROP_TR_SPAWN_DELAY
,
207 I_PROP_TR_MONSTER_TYPE
,
208 I_PROP_TR_MONSTER_ACTIVE
,
209 I_PROP_TR_MONSTER_BEHAVIOUR
,
210 I_PROP_TR_MONSTER_BEHAVIOUR_0
,
211 I_PROP_TR_MONSTER_BEHAVIOUR_1
,
212 I_PROP_TR_MONSTER_BEHAVIOUR_2
,
213 I_PROP_TR_MONSTER_BEHAVIOUR_3
,
214 I_PROP_TR_MONSTER_BEHAVIOUR_4
,
215 I_PROP_TR_MONSTER_BEHAVIOUR_5
,
217 I_PROP_TR_MUSIC_NAME
,
221 I_PROP_TR_PUSH_ANGLE
,
222 I_PROP_TR_PUSH_FORCE
,
223 I_PROP_TR_PUSH_RESET
,
225 I_PROP_TR_SCORE_ACT_0
,
226 I_PROP_TR_SCORE_ACT_1
,
227 I_PROP_TR_SCORE_ACT_2
,
228 I_PROP_TR_SCORE_ACT_3
,
229 I_PROP_TR_SCORE_TEAM
,
230 I_PROP_TR_SCORE_TEAM_0
,
231 I_PROP_TR_SCORE_TEAM_1
,
232 I_PROP_TR_SCORE_TEAM_2
,
233 I_PROP_TR_SCORE_TEAM_3
,
236 I_PROP_TR_DAMAGE_VALUE
,
237 I_PROP_TR_HEALTH_MAX
,
239 I_PROP_TR_SHOT_SOUND
,
240 I_PROP_TR_SHOT_ANGLE
,
251 I_PROP_TR_SHOT_AIM_0
,
252 I_PROP_TR_SHOT_AIM_1
,
253 I_PROP_TR_SHOT_AIM_2
,
254 I_PROP_TR_SHOT_AIM_3
,
256 I_PROP_TR_SHOT_RELOAD
,
257 I_PROP_TR_SHOT_SIGHT
,
258 I_PROP_TR_SHOT_PANEL
,
259 I_PROP_TR_MESSAGE_KIND
,
260 I_PROP_TR_MESSAGE_KIND_0
,
261 I_PROP_TR_MESSAGE_KIND_1
,
262 I_PROP_TR_MESSAGE_TO
,
263 I_PROP_TR_MESSAGE_TO_0
,
264 I_PROP_TR_MESSAGE_TO_1
,
265 I_PROP_TR_MESSAGE_TO_2
,
266 I_PROP_TR_MESSAGE_TO_3
,
267 I_PROP_TR_MESSAGE_TO_4
,
268 I_PROP_TR_MESSAGE_TO_5
,
269 I_PROP_TR_MESSAGE_TEXT
,
270 I_PROP_TR_MESSAGE_TIME
,
271 I_PROP_TR_EFFECT_TYPE
,
272 I_PROP_TR_EFFECT_SUBTYPE
,
273 I_PROP_TR_EFFECT_COLOR
,
274 I_PROP_TR_EFFECT_CENTER
,
275 I_PROP_TR_EFFECT_VELX
,
276 I_PROP_TR_EFFECT_VELY
,
277 I_PROP_TR_EFFECT_SPL
,
278 I_PROP_TR_EFFECT_SPR
,
279 I_PROP_TR_EFFECT_SPU
,
280 I_PROP_TR_EFFECT_SPD
,
281 I_PROP_TR_EFFECT_PARTICLE
,
282 I_PROP_TR_EFFECT_ANIMATION
,
283 I_PROP_TR_EFFECT_SLIQUID
,
284 I_PROP_TR_EFFECT_LLIQUID
,
285 I_PROP_TR_EFFECT_DLIQUID
,
286 I_PROP_TR_EFFECT_BLOOD
,
287 I_PROP_TR_EFFECT_SPARK
,
288 I_PROP_TR_EFFECT_BUBBLE
,
291 I_MSG_WRONG_TEXWIDTH
,
292 I_MSG_WRONG_TEXHEIGHT
,
296 I_MSG_TEXTURE_ALREADY
,
299 I_MSG_CHOOSE_MONSTER
,
301 I_MSG_CHOOSE_TEXTURE
,
306 I_MSG_DEL_TEXTURE_PROMT
,
307 I_MSG_DEL_TEXTURE_CANT
,
309 I_MSG_DEL_RECENT_PROMT
,
311 I_MSG_CLEAR_MAP_PROMT
,
313 I_MSG_DELETE_MAP_PROMT
,
315 I_MSG_MAP_DELETED_PROMT
,
316 I_MSG_REOPEN_MAP_PROMT
,
328 I_HINT_PANEL_TEXTURE
,
341 I_MENU_FILE_OPEN_WAD
,
343 I_MENU_FILE_SAVE_MINI
,
345 I_MENU_FILE_PACK_MAP
,
353 I_MENU_EDIT_SELECT_ALL
,
358 I_MENU_TOOLS_SNAP_GRID
,
359 I_MENU_TOOLS_MINIMAP
,
360 I_MENU_TOOLS_STEP_GRID
,
361 I_MENU_TOOLS_SHOW_EDGES
,
384 I_MENU_LAYER_MONSTER
,
386 I_MENU_LAYER_TRIGGER
,
446 I_CTRL_ACT_PLAYER_CLOSE
,
447 I_CTRL_ACT_MONSTER_CLOSE
,
448 I_CTRL_ACT_PLAYER_PRESS
,
449 I_CTRL_ACT_MONSTER_PRESS
,
451 I_CTRL_ACT_NO_MONSTER
,
456 I_CTRL_KEYS_TEAM_RED
,
457 I_CTRL_KEYS_TEAM_BLUE
,
471 I_CTRL_OPT_DESC_TEXTURE
,
472 I_CTRL_OPT_DESC_PANEL
,
484 I_CTRL_LAUNCH_WEAPONS
,
485 I_CTRL_LAUNCH_MONSTERS
,
491 I_CTRL_ES_PANEL_SIZE
,
492 I_CTRL_ES_CHECKERBOARD
,
494 I_CTRL_PACK_TEXTURES
,
507 I_LAB_ABOUT_AUTHOR_2
,
570 I_BTN_TEXTURE_DELETE
,
583 I_TEST_AREA_WALL_STR
,
590 I_TEST_MONSTER_WALL_STR
,
593 I_OPT_DELETED_TEXTURES
,
594 I_OPT_TOTAL_TEXTURES
,
620 LANGUAGE_RUSSIAN
= 'Russian';
621 LANGUAGE_ENGLISH
= 'English';
622 LANGUAGE_RUSSIAN_N
= 3;
623 LANGUAGE_ENGLISH_N
= 2;
626 _lc
: Array [TStrings_Locale
] of String; // for the GUI (in UTF-8)
627 _glc
: Array [TStrings_Locale
] of String; // for GL text (in CP1251)
629 BoolNames
: Array [False..True] of String;
630 DirNames
: Array [D_LEFT
..D_RIGHT
] of String;
631 DirNamesAdv
: Array [0..3] of String;
632 DirButtonNames
: Array [1..4] of String;
633 PANELNAMES
: Array[0..13] of String;
634 EffectNames
: Array [EFFECT_NONE
..EFFECT_FIRE
] of String;
635 ItemNames
: Array [ITEM_MEDKIT_SMALL
..ITEM_MAX
] of String;
636 ShotNames
: Array [TRIGGER_SHOT_PISTOL
..TRIGGER_SHOT_MAX
] of String;
637 MonsterNames
: Array [MONSTER_DEMON
..MONSTER_MAN
] of String;
638 AreaNames
: Array [AREA_PLAYERPOINT1
..AREA_BLUETEAMPOINT
] of String;
639 TriggerNames
: Array [TRIGGER_EXIT
..TRIGGER_MAX
] of String;
642 procedure g_Language_Load(fileName
: String);
643 procedure g_Language_Set(lang
: String);
644 procedure g_Language_Dump(fileName
: String);
649 SysUtils
, e_log
, f_main
, f_about
, f_activationtype
,
650 f_addresource_sky
, f_addresource_sound
,
651 f_addresource_texture
, f_choosetype
, f_keys
, f_mapcheck
,
652 f_mapoptions
, f_maptest
, f_mapoptimization
, f_options
,
653 f_packmap
, f_savemap
, f_saveminimap
, f_selectmap
, Forms
, utils
;
656 g_lang_default
: Array [TStrings_Locale
] of Array [1..3] of String = (
657 ('NOT ACCESSIBLE', 'N/A',
660 ('ARRAY BOOL FALSE', 'No',
662 ('ARRAY BOOL TRUE', 'Yes',
665 ('ARRAY DIR LEFT', 'Left',
667 ('ARRAY DIR RIGHT', 'Right',
669 ('ARRAY DIR SAME', 'Don''t change',
671 ('ARRAY DIR REVERSED', 'Reversed',
674 ('ARRAY DIRBTN LEFT', 'Left',
676 ('ARRAY DIRBTN RIGHT', 'Right',
678 ('ARRAY DIRBTN UP', 'Up',
680 ('ARRAY DIRBTN DOWN', 'Down',
683 ('ARRAY PANEL WALL', 'Wall',
685 ('ARRAY PANEL BACK', 'Background',
687 ('ARRAY PANEL FRONT', 'Foreground',
689 ('ARRAY PANEL DOOR OPEN', 'Open Door',
691 ('ARRAY PANEL DOOR CLOSE', 'Closed Door',
693 ('ARRAY PANEL STAIR', 'Step',
695 ('ARRAY PANEL WATER', 'Water',
697 ('ARRAY PANEL ACID 1', 'Acid 1',
699 ('ARRAY PANEL ACID 2', 'Acid 2',
701 ('ARRAY PANEL LIFT UP', 'Stream Up',
703 ('ARRAY PANEL LIFT DOWN', 'Stream Down',
705 ('ARRAY PANEL LIFT LEFT', 'Stream Left',
707 ('ARRAY PANEL LIFT RIGHT', 'Stream Right',
709 ('ARRAY PANEL BLOCKMON', 'Monster Boundary',
710 'Блокиратор монстров'),
712 ('ARRAY FX NONE', 'None',
714 ('ARRAY FX TELEPORT', 'Teleport',
716 ('ARRAY FX RESPAWN', 'Respawn',
718 ('ARRAY FX FIRE', 'Arch-Vile Fire',
721 ('ARRAY ITEM MEDKIT', 'Stimpack',
723 ('ARRAY ITEM LARGE MEDKIT', 'Medikit',
725 ('ARRAY ITEM BLACK MEDKIT', 'Berserk Pack',
727 ('ARRAY ITEM GREEN ARMOR', 'Green Armor',
729 ('ARRAY ITEM BLUE ARMOR', 'Blue Armor',
731 ('ARRAY ITEM BLUE SPHERE', 'Soulsphere',
733 ('ARRAY ITEM MEGASPHERE', 'Megasphere',
735 ('ARRAY ITEM HAZ SUIT', 'Envirosuit',
737 ('ARRAY ITEM OXYGEN', 'Scuba',
739 ('ARRAY ITEM INVULNERABILITY', 'Invulnerability',
741 ('ARRAY ITEM CHAINSAW', 'Chainsaw',
743 ('ARRAY ITEM SHOTGUN', 'Shotgun',
745 ('ARRAY ITEM DB SHOTGUN', 'Super Shotgun',
747 ('ARRAY ITEM CHAINGUN', 'Chaingun',
749 ('ARRAY ITEM ROCKET LAUNCHER', 'Rocket Launcher',
751 ('ARRAY ITEM PLASMA RIFLE', 'Plasma Rifle',
753 ('ARRAY ITEM BFG', 'BFG9000',
755 ('ARRAY ITEM SUPER MINIGUN', 'Super Chaingun',
757 ('ARRAY ITEM FLAMETHROWER', 'Flamethrower',
759 ('ARRAY ITEM CLIP', 'Clip',
761 ('ARRAY ITEM AMMO BOX', 'Box of Bullets',
763 ('ARRAY ITEM 4 SHELLS', '4 Shells',
765 ('ARRAY ITEM 25 SHELLS', 'Box of Shells',
767 ('ARRAY ITEM 1 ROCKET', 'Rocket',
769 ('ARRAY ITEM ROCKET BOX', 'Box of Rockets',
771 ('ARRAY ITEM CELL', 'Energy Cell',
773 ('ARRAY ITEM LARGE CELL', 'Energy Cell Pack',
775 ('ARRAY ITEM FUELCAN', 'Fuel Canister',
777 ('ARRAY ITEM BACKPACK', 'Backpack',
779 ('ARRAY ITEM KEY RED', 'Red Key',
781 ('ARRAY ITEM KEY GREEN', 'Green Key',
783 ('ARRAY ITEM KEY BLUE', 'Blue Key',
785 ('ARRAY ITEM BOTTLE', 'Health Globe',
787 ('ARRAY ITEM HELMET', 'Armor Shard',
789 ('ARRAY ITEM JETPACK', 'Jetpack',
791 ('ARRAY ITEM INVIS', 'Invisibility',
794 ('ARRAY SHOT PISTOL', 'Pistol shot',
795 'Выстрел пистолета'),
796 ('ARRAY SHOT BULLET', 'Chaingun shot',
798 ('ARRAY SHOT SHOTGUN', 'Shotgun shot',
800 ('ARRAY SHOT SSG', 'Super Shotgun shot',
801 'Выстрел двустволки'),
802 ('ARRAY SHOT IMP', 'Imp fireball',
804 ('ARRAY SHOT PLASMA', 'Blue plasma',
806 ('ARRAY SHOT SPIDER', 'Arachnotron plasma',
807 'Плазма арахнотрона'),
808 ('ARRAY SHOT CACO', 'Cacodemon fireball',
810 ('ARRAY SHOT BARON', 'Hell Baron projectile',
811 'Выстрел барона ада'),
812 ('ARRAY SHOT MANCUB', 'Mancubus gunshot',
814 ('ARRAY SHOT REV', 'Revenant projectile',
816 ('ARRAY SHOT ROCKET', 'Rocket',
818 ('ARRAY SHOT BFG', 'BFG ball',
820 ('ARRAY SHOT EXPL', 'Explosion',
822 ('ARRAY SHOT BFGEXPL', 'BFG explosion',
824 ('ARRAY SHOT FLAME', 'Flame',
827 ('ARRAY MON DEMON', 'Pinky',
829 ('ARRAY MON IMP', 'Imp',
831 ('ARRAY MON ZOMBIE', 'Zombie',
833 ('ARRAY MON SERGEANT', 'Sergeant',
835 ('ARRAY MON CYBER', 'Cyberdemon',
837 ('ARRAY MON CGUN', 'Commando',
839 ('ARRAY MON HELL BARON', 'Hell Baron',
841 ('ARRAY MON HELL KNIGHT', 'Hell Knight',
843 ('ARRAY MON CACODEMON', 'Cacodemon',
845 ('ARRAY MON LOST SOUL', 'Lost Soul',
847 ('ARRAY MON PAIN ELEMENTAL', 'Pain Elemental',
849 ('ARRAY MON MASTERMIND', 'Spider Mastermind',
851 ('ARRAY MON ARACHNATRON', 'Arachnotron',
853 ('ARRAY MON MANCUBUS', 'Mancubus',
855 ('ARRAY MON REVENANT', 'Revenant',
857 ('ARRAY MON ARCHVILE', 'Arch-Vile',
859 ('ARRAY MON FISH', 'Piranha',
861 ('ARRAY MON BARREL', 'Barrel',
863 ('ARRAY MON ROBOT', 'Robot',
865 ('ARRAY MON PRIKOLIST', 'Prikolist',
868 ('ARRAY AREA PLAYER ONE', 'Player 1',
870 ('ARRAY AREA PLAYER TWO', 'Player 2',
872 ('ARRAY AREA DM', 'DM Spawn Point',
874 ('ARRAY AREA FLAG RED', 'Red Flag',
876 ('ARRAY AREA FLAG BLUE', 'Blue Flag',
878 ('ARRAY AREA FLAG DOM', 'Domination Flag',
880 ('ARRAY AREA TEAM RED', 'Red Team',
882 ('ARRAY AREA TEAM BLUE', 'Blue Team',
885 ('ARRAY TR EXIT', 'Exit',
887 ('ARRAY TR TELEPORT', 'Teleport',
889 ('ARRAY TR DOOR OPEN', 'Open Door',
891 ('ARRAY TR DOOR CLOSE', 'Close Door',
893 ('ARRAY TR DOOR SWITCH', 'Door',
895 ('ARRAY TR DOOR 5 SEC', 'Door (5 sec)',
897 ('ARRAY TR TRAP CLOSE', 'Close Trap',
899 ('ARRAY TR TRAP', 'Trap',
901 ('ARRAY TR EXTEND', 'Extender',
903 ('ARRAY TR SECRET', 'Secret',
905 ('ARRAY TR LIFT UP', 'Turn stream up/left',
906 'Лифт вверх/поток влево'),
907 ('ARRAY TR LIFT DOWN', 'Turn stream down/right',
908 'Лифт вниз/поток вправо'),
909 ('ARRAY TR LIFT SWITCH', 'Revert stream',
911 ('ARRAY TR TEXTURE', 'Change Texture',
913 ('ARRAY TR ON', 'Enable Trigger',
915 ('ARRAY TR OFF', 'Disable Trigger',
916 'Выключить триггер'),
917 ('ARRAY TR SWITCH', 'Trigger Toggle',
918 'Переключить триггер'),
919 ('ARRAY TR SOUND', 'Play Sound',
921 ('ARRAY TR SPAWN MONSTER', 'Spawn Monster',
923 ('ARRAY TR SPAWN ITEM', 'Spawn Item',
925 ('ARRAY TR MUSIC', 'Play Music',
927 ('ARRAY TR PUSH', 'Push',
929 ('ARRAY TR SCORE', 'Team Score',
931 ('ARRAY TR MESSAGE', 'Message',
933 ('ARRAY TR DAMAGE', 'Damage',
935 ('ARRAY TR HEALTH', 'Healer',
937 ('ARRAY TR SHOT', 'Turret',
939 ('ARRAY TR EFFECT', 'Effect',
948 ('PROP WIDTH', 'Width',
950 ('PROP HEIGHT', 'Height',
952 ('PROP PANEL TYPE', 'Panel Type',
954 ('PROP PANEL TEX', 'Texture',
956 ('PROP PANEL ALPHA', 'Transparency',
958 ('PROP PANEL BLEND', 'Blending',
960 ('PROP DM ONLY', 'DM Only',
962 ('PROP ITEM FALLS', 'Falls',
964 ('PROP DIRECTION', 'Direction',
967 ('PROP TR TYPE', 'Trigger Type',
969 ('PROP TR ENABLED', 'Enabled',
971 ('PROP TR TEXTURE PANEL', 'Textured Panel',
972 'Панель с текстурой'),
973 ('PROP TR ACTIVATION', 'Activation Type',
975 ('PROP TR KEYS', 'Keys',
977 ('PROP TR D2D', 'D2D-like',
979 ('PROP TR SILENT', 'Silent',
981 ('PROP TR COUNT', 'Count',
983 ('PROP TR INTERVAL', 'Interval (in ticks)',
984 'Интервал (в тиках)'),
985 ('PROP TR HEALTH', 'Health',
987 ('PROP TR NEXT MAP', 'Next Map',
989 ('PROP TR TELEPORT TO', 'Teleport to',
991 ('PROP TR TELEPORT SILENT', 'Silent',
993 ('PROP TR TELEPORT DIR', 'New Direction',
994 'Направление после'),
995 ('PROP TR DOOR PANEL', 'Door Panel',
997 ('PROP TR TRAP PANEL', 'Trap Panel',
999 ('PROP TR EX AREA', 'Action Area',
1000 'Область воздействия'),
1001 ('PROP TR EX DELAY', 'Delay',
1003 ('PROP TR EX COUNT', 'Count',
1005 ('PROP TR EX MONSTER', 'Monster ID',
1007 ('PROP TR EX RANDOM', 'Random',
1009 ('PROP TR LIFT PANEL', 'Stream Panel',
1011 ('PROP TR TEXTURE ONCE', 'Once',
1013 ('PROP TR TEXTURE ANIM ONCE', 'Animate Once',
1015 ('PROP TR SOUND NAME', 'Sound (snd)',
1017 ('PROP TR SOUND VOLUME', 'Volume',
1019 ('PROP TR SOUND PAN', 'Pan',
1021 ('PROP TR SOUND COUNT', 'Loops',
1023 ('PROP TR SOUND LOCAL', 'Local',
1025 ('PROP TR SOUND SWITCH', 'Switch',
1027 ('PROP TR FX TYPE', 'Effect',
1029 ('PROP TR SPAWN TO', 'Spawn at',
1031 ('PROP TR SPAWN MAX', 'Maximum',
1033 ('PROP TR SPAWN DELAY', 'Autospawn (in ticks)',
1034 'Автоспаун (в тиках)'),
1035 ('PROP TR MONSTER TYPE', 'Monster',
1037 ('PROP TR MONSTER ACTIVE', 'Active',
1039 ('PROP TR MONSTER BEHAVIOUR', 'Behaviour',
1041 ('PROP TR MONSTER BEHAVIOUR 0', 'Normal',
1043 ('PROP TR MONSTER BEHAVIOUR 1', 'Killer',
1045 ('PROP TR MONSTER BEHAVIOUR 2', 'Maniac',
1047 ('PROP TR MONSTER BEHAVIOUR 3', 'Insane',
1049 ('PROP TR MONSTER BEHAVIOUR 4', 'Cannibal',
1051 ('PROP TR MONSTER BEHAVIOUR 5', 'Good',
1053 ('PROP TR ITEM TYPE', 'Item',
1055 ('PROP TR MUSIC NAME', 'Music',
1057 ('PROP TR MUSIC ACT', 'Action (m)',
1059 ('PROP TR MUSIC ON', 'Play',
1061 ('PROP TR MUSIC OFF', 'Pause',
1063 ('PROP TR PUSH ANGLE', 'Angle',
1065 ('PROP TR PUSH FORCE', 'Force',
1067 ('PROP TR PUSH RESET', 'Reset velocity',
1068 'Сбрасывать скорость'),
1069 ('PROP TR SCORE ACT', 'Action (s)',
1071 ('PROP TR SCORE ACT 0', 'Add points',
1073 ('PROP TR SCORE ACT 1', 'Subtract points',
1075 ('PROP TR SCORE ACT 2', 'Team Wins',
1077 ('PROP TR SCORE ACT 3', 'Team Loses',
1079 ('PROP TR SCORE TEAM', 'Team',
1081 ('PROP TR SCORE TEAM 0', 'My',
1083 ('PROP TR SCORE TEAM 1', 'Enemy',
1085 ('PROP TR SCORE TEAM 2', 'Red',
1087 ('PROP TR SCORE TEAM 3', 'Blue',
1089 ('PROP TR SCORE CON', 'Console message',
1090 'Сообщение в консоль'),
1091 ('PROP TR SCORE MSG', 'Game message',
1092 'Сообщение в игру'),
1093 ('PROP TR DAMAGE VALUE', 'Damage',
1095 ('PROP TR HEALTH MAX', 'To maximum',
1097 ('PROP TR SHOT TYPE', 'Projectile',
1099 ('PROP TR SHOT SOUND', 'Shot sound',
1101 ('PROP TR SHOT ANGLE', 'Angle',
1103 ('PROP TR SHOT ACC', 'Spread',
1105 ('PROP TR SHOT TO', 'Auto targeting',
1107 ('PROP TR SHOT TO 0', 'None',
1109 ('PROP TR SHOT TO 1', 'Monsters',
1111 ('PROP TR SHOT TO 2', 'Players',
1113 ('PROP TR SHOT TO 3', 'Red team',
1115 ('PROP TR SHOT TO 4', 'Blue team',
1117 ('PROP TR SHOT TO 5', 'Monsters, players',
1119 ('PROP TR SHOT TO 6', 'Players, monsters',
1121 ('PROP TR SHOT AIM', 'Auto-aiming mode',
1122 'Режим автонаведения'),
1123 ('PROP TR SHOT AIM 0', 'Trigger area',
1124 'Область триггера'),
1125 ('PROP TR SHOT AIM 1', 'Entire map',
1127 ('PROP TR SHOT AIM 2', 'Trace trigger area',
1128 'Область триггера с трассировкой'),
1129 ('PROP TR SHOT AIM 3', 'Trace entire map',
1130 'Вся карта с трассировкой'),
1131 ('PROP TR SHOT AMMO', 'Ammo limit',
1133 ('PROP TR SHOT RELOAD', 'Reload interval (in ticks)',
1134 'Перезарядка (в тиках)'),
1135 ('PROP TR SHOT SIGHT', 'Sight interval (in ticks)',
1136 'Реакция (в тиках)'),
1137 ('PROP TR SHOT PANEL', 'Indicator panel',
1138 'Панель индикации'),
1139 ('PROP TR MESSAGE KIND', 'Message kind',
1141 ('PROP TR MESSAGE KIND 0', 'Console message',
1143 ('PROP TR MESSAGE KIND 1', 'Event message',
1144 'Крупный текст по центру'),
1145 ('PROP TR MESSAGE TO', 'Send to',
1147 ('PROP TR MESSAGE TO 0', 'Me',
1149 ('PROP TR MESSAGE TO 1', 'My team',
1151 ('PROP TR MESSAGE TO 2', 'Enemy team',
1152 'Вражеская команда'),
1153 ('PROP TR MESSAGE TO 3', 'Red team',
1155 ('PROP TR MESSAGE TO 4', 'Blue team',
1157 ('PROP TR MESSAGE TO 5', 'Everyone',
1159 ('PROP TR MESSAGE TEXT', 'Message text',
1161 ('PROP TR MESSAGE TIME', 'Time (in ticks)',
1162 'Время показа (в тиках)'),
1163 ('PROP TR EFFECT TYPE', 'Effect type',
1165 ('PROP TR EFFECT SUBTYPE', 'Effect subtype',
1167 ('PROP TR EFFECT COLOR', 'Effect color',
1169 ('PROP TR EFFECT CENTER', 'Trigger center',
1171 ('PROP TR EFFECT VELX', 'Horizontal speed',
1172 'Скорость по горизонтали'),
1173 ('PROP TR EFFECT VELY', 'Vertical speed',
1174 'Скорость по вертикали'),
1175 ('PROP TR EFFECT SPL', 'Speed variance left',
1176 'Отклонение влево'),
1177 ('PROP TR EFFECT SPR', 'Speed variance right',
1178 'Отклонение вправо'),
1179 ('PROP TR EFFECT SPU', 'Speed variance up',
1180 'Отклонение вверх'),
1181 ('PROP TR EFFECT SPD', 'Speed variance down',
1183 ('PROP TR EFFECT PARTICLE', 'Particle generator',
1184 'Генератор частиц'),
1185 ('PROP TR EFFECT ANIMATION', 'Animation',
1187 ('PROP TR EFFECT SLIQUID', 'Water splash',
1189 ('PROP TR EFFECT LLIQUID', 'Light colored splash',
1190 'Цветные брызги (светлее)'),
1191 ('PROP TR EFFECT DLIQUID', 'Dark colored splash',
1192 'Цветные брызги (темнее)'),
1193 ('PROP TR EFFECT BLOOD', 'Blood',
1195 ('PROP TR EFFECT SPARK', 'Sparks',
1197 ('PROP TR EFFECT BUBBLE', 'Bubbles',
1200 ('MSG ERROR', 'Error',
1202 ('MSG WRONG TEXWIDTH', 'Panel Width must be a multiple of Texture Width (%d)',
1203 'Ширина панели должна быть кратна ширине текстуры (%d)'),
1204 ('MSG WRONG TEXHEIGHT', 'Panel Height must be a multiple of Texture Height (%d)',
1205 'Высота панели должна быть кратна высоте текстуры (%d)'),
1206 ('MSG WRONG ALPHA', 'Transparency must be in [0..255] interval',
1207 'Прозрачность должна быть в интервале [0..255]'),
1208 ('MSG WRONG SIZE', 'Width and Height must be greater than 0',
1209 'Ширина и высота должны быть больше 0'),
1210 ('MSG WRONG XY', 'X or Y coordinate hasn''t been set',
1211 'Не задана X или Y координата'),
1212 ('MSG TEXTURE ALREADY', 'Texture "%s" already exists',
1213 'Текстура "%s" уже добавлена'),
1214 ('MSG RES NAME 64', 'Resource "%s" name must not be longer than 64 chars',
1215 'Имя ресурса "%s" должно быть не длиннее 64 символов'),
1216 ('MSG CHOOSE ITEM', 'Select Item',
1217 'Выберите предмет'),
1218 ('MSG CHOOSE MONSTER', 'Select Monster',
1219 'Выберите монстра'),
1220 ('MSG CHOOSE AREA', 'Select Area',
1221 'Выберите область'),
1222 ('MSG CHOOSE TEXTURE', 'Select Texture',
1223 'Выберите текстуру'),
1224 ('MSG CHOOSE RES', 'Resource hasn''t been selected',
1225 'Не выбран ресурс'),
1226 ('MSG EXIT', 'Exit',
1228 ('MSG EXIT PROMT', 'Leaving so soon?',
1230 ('MSG DEL TEXTURE', 'Delete the texture',
1231 'Удалить текстуру'),
1232 ('MSG DEL TEXTURE PROMT', 'Delete the texture "%s" ?',
1233 'Удалить текстуру "%s" ?'),
1234 ('MSG DEL TEXTURE CANT', 'Can''t delete texture in use. Replace it on all panels with this texture.',
1235 'Нельзя удалить используемую текстуру. Замените её на каждой панели с ней.'),
1236 ('MSG DEL RECENT', 'File does not longer exist',
1237 'Этого файла больше нет'),
1238 ('MSG DEL RECENT PROMT', 'Remove entry from recent list?',
1239 'Убрать запись из истории?'),
1240 ('MSG CLEAR MAP', 'New map',
1242 ('MSG CLEAR MAP PROMT', 'Clear the entire map?',
1243 'Очистить всю карту?'),
1244 ('MSG DELETE MAP', 'Delete the map',
1246 ('MSG DELETE MAP PROMT', 'Delete the map "%s" from "%s" ?',
1247 'Удалить карту "%s" из "%s" ?'),
1248 ('MSG MAP DELETED', 'Map is deleted',
1250 ('MSG MAP DELETED PROMT', 'Map "%s" is deleted',
1251 'Карта "%s" удалена'),
1252 ('MSG REOPEN MAP PROMT', 'Reopen this map?',
1253 'Загрузить карту заново?'),
1254 ('MSG EXEC ERROR', 'Game start error',
1255 'Ошибка запуска игры'),
1256 ('MSG SOUND ERROR', 'Can''t play sound',
1257 'Не удалось проиграть звук'),
1258 ('MSG WAD ERROR', 'Can''t open WAD: %s',
1259 'Ошибка при открытии WAD: %s'),
1260 ('MSG RES ERROR', 'Can''t read resource: %s:%s\%s',
1261 'Ошибка при чтении ресурса: %s:%s\%s'),
1262 ('MSG PACKED', 'Map "%s" with resources saved to "%s"',
1263 'Карта "%s" вместе с ресурсами сохранена в "%s"'),
1264 ('MSG MAP EXISTS', 'Map "%s" already exists. Overwrite?',
1265 'Карта "%s" уже существует. Заменить?'),
1266 ('MSG SAVE MAP', 'Save the map',
1269 ('HINT TELEPORT', 'Choose destination of Teleport',
1270 'Выберите точку телепорта'),
1271 ('HINT SPAWN', 'Choose Spawn point',
1272 'Выберите точку появления'),
1273 ('HINT PANEL DOOR', 'Choose Door',
1274 'Выберите панель двери'),
1275 ('HINT PANEL TEXTURE', 'Choose textured Panel',
1276 'Выберите панель с текстурой'),
1277 ('HINT PANEL SHOT', 'Choose textured shot indicator Panel',
1278 'Выберите панель индикации выстрела с текстурой'),
1279 ('HINT PANEL LIFT', 'Choose Stream Panel',
1280 'Выберите панель лифта'),
1281 ('HINT MONSTER', 'Choose Monster',
1282 'Выберите монстра'),
1283 ('HINT EXT AREA', 'Specify action Area',
1284 'Укажите область воздействия'),
1285 ('HINT WIDTH', 'Width: %d',
1287 ('HINT HEIGHT', 'Height: %d',
1290 ('MENU FILE', 'File',
1292 ('MENU FILE NEW', 'New Map',
1294 ('MENU FILE OPEN', 'Open Map',
1296 ('MENU FILE SAVE', 'Save Map',
1298 ('MENU FILE SAVE AS', 'Save Map As...',
1299 'Сохранить карту как...'),
1300 ('MENU FILE OPEN WAD', 'Select Map',
1302 ('MENU FILE REOPEN', 'Reopen Map',
1304 ('MENU FILE SAVE MINI', 'Save Mini-map',
1305 'Сохранить мини-карту'),
1306 ('MENU FILE DELETE', 'Delete Map from WAD...',
1307 'Удалить карту из WAD...'),
1308 ('MENU FILE PACK MAP', 'Pack Map',
1310 ('MENU FILE EXIT', 'Exit',
1313 ('MENU EDIT', 'Edit',
1315 ('MENU EDIT UNDO', 'Undo',
1317 ('MENU EDIT COPY', 'Copy',
1319 ('MENU EDIT CUT', 'Cut',
1321 ('MENU EDIT PASTE', 'Paste',
1323 ('MENU EDIT SELECT ALL', 'Select All',
1325 ('MENU EDIT TO FORE', 'Bring to Front',
1326 'Передвинуть вперёд'),
1327 ('MENU EDIT TO BACK', 'Send to Back',
1328 'Передвинуть назад'),
1330 ('MENU TOOLS', 'Tools',
1332 ('MENU TOOLS SNAP GRID', 'Snap to Grid',
1333 'Привязка к сетке'),
1334 ('MENU TOOLS MINIMAP', 'Show Mini-map',
1336 ('MENU TOOLS STEP GRID', 'Switch Grid step',
1337 'Сменить шаг сетки'),
1338 ('MENU TOOLS SHOW EDGES', 'Switch Map edges',
1340 ('MENU TOOLS LAYERS', 'Layers',
1343 ('MENU SERV', 'Service',
1345 ('MENU SERV TEST', 'Check the Map',
1347 ('MENU SERV OPT', 'Optimize the Map',
1348 'Оптимизация карты'),
1349 ('MENU SERV PREVIEW', 'Map Preview',
1350 'Предварительный просмотр'),
1351 ('MENU SERV LAUNCH', 'In-game test',
1352 'Тест карты в игре'),
1354 ('MENU SETS', 'Settings',
1356 ('MENU SETS MAP', 'Map parameters',
1358 ('MENU SETS EDITOR', 'Editor settings',
1359 'Настройки редактора'),
1360 ('MENU SETS LAUNCH', 'In-game test settings',
1361 'Настройки теста в игре'),
1363 ('MENU HELP', 'Help',
1365 ('MENU HELP ABOUT', 'About',
1368 ('MENU LAYER BACK', '1. Background',
1370 ('MENU LAYER WALL', '2. Walls',
1372 ('MENU LAYER FORE', '3. Foreground',
1373 '3. Передний план'),
1374 ('MENU LAYER STAIR', '4. Steps',
1376 ('MENU LAYER WATER', '5. Liquids',
1378 ('MENU LAYER ITEM', '6. Items',
1380 ('MENU LAYER MONSTER', '7. Monsters',
1382 ('MENU LAYER AREA', '8. Areas',
1384 ('MENU LAYER TRIGGER', '9. Triggers',
1387 ('MENU TB NEW', 'New Map',
1389 ('MENU TB OPEN', 'Open Map',
1391 ('MENU TB SAVE', 'Save Map',
1393 ('MENU TB OPEN WAD', 'Open another Map from same WAD',
1394 'Открыть другую карту из этого же WAD''а'),
1395 ('MENU TB MINIMAP', 'Show Mini-map',
1396 'Показать мини-карту'),
1397 ('MENU TB LAYERS', 'Show/Hide Objects',
1398 'Отрисовка панелей/объектов'),
1399 ('MENU TB GRID', 'Grid On/Off',
1400 'Включить/Отключить отображение сетки'),
1401 ('MENU TB GRID STEP', 'Switch Grid step',
1402 'Изменить шаг сетки'),
1403 ('MENU TB LAUNCH', 'In-game test',
1404 'Тест карты в игре'),
1406 ('MENU LAUNCH SETS', 'Settings...',
1409 ('CAP FX TYPE', 'Select Effect type',
1410 'Выберите тип эффекта'),
1411 ('CAP MONSTER TYPE', 'Select Monster type',
1412 'Выберите тип монстра'),
1413 ('CAP ITEM TYPE', 'Select Item type',
1414 'Выберите тип предмета'),
1415 ('CAP ABOUT', 'About Map Editor',
1417 ('CAP ACT', 'Activation type',
1419 ('CAP ADD SKY', 'Select Sky Texture',
1420 'Выберите текстуру неба'),
1421 ('CAP ADD SOUND', 'Select Sound/Music',
1422 'Выберите звук/музыку'),
1423 ('CAP ADD TEXTURE', 'Select Texture',
1424 'Выберите текстуру'),
1425 ('CAP KEYS', 'Keys',
1427 ('CAP TEST', 'Map Checking',
1429 ('CAP OPT', 'Map Optimization',
1430 'Оптимизация карты'),
1431 ('CAP SETS', 'Map Parameters',
1433 ('CAP LAUNCH', 'In-game test Settings',
1434 'Настройки теста в игре'),
1435 ('CAP ES', 'Editor Settings',
1436 'Настройки редактора'),
1437 ('CAP PACK', 'Pack Map',
1439 ('CAP SAVE', 'Save Map',
1441 ('CAP MINI', 'Save Mini-map',
1442 'Сохранить мини-карту'),
1443 ('CAP SELECT', 'Select Map',
1445 ('CAP OPEN', 'Open Map',
1447 ('CAP REMOVE', 'Remove Map',
1449 ('CAP TEXTURE', 'Texture: %dx%d',
1451 ('CAP ANIMATION', 'Animation: %dx%d, %d frames',
1452 'Анимация: %dx%d, %d кадров'),
1453 ('CAP STAT SELECTED', 'Selected objects: %d',
1454 'Выделено объектов: %d'),
1456 ('CTRL PROP KEY', 'Property',
1458 ('CTRL PROP VALUE', 'Value',
1461 ('CTRL PANELS', 'Panels',
1463 ('CTRL ITEMS', 'Items',
1465 ('CTRL MONSTERS', 'Monsters',
1467 ('CTRL AREAS', 'Areas',
1469 ('CTRL TRIGGERS', 'Triggers',
1472 ('CTRL LIST TEXTURE', 'Texture List',
1474 ('CTRL LIST ITEM', 'Item List',
1475 'Список предметов'),
1476 ('CTRL LIST MONSTER', 'Monster List',
1478 ('CTRL LIST AREA', 'Area List',
1480 ('CTRL LIST TRIGGER', 'Trigger List',
1481 'Список триггеров'),
1482 ('CTRL LIST ACTIVE', 'Activation Type',
1483 'Тип активации триггера'),
1484 ('CTRL LIST KEYS', 'Keys Needed',
1485 'Ключи для активации'),
1487 ('CTRL PREVIEW', 'Texture Preview',
1488 'Предварительный просмотр'),
1489 ('CTRL ITEM DM', 'DM Only',
1491 ('CTRL ITEM FALLS', 'Falls',
1493 ('CTRL LEFT', 'Left',
1495 ('CTRL RIGHT', 'Right',
1498 ('CTRL ACT PLAYER CLOSE', 'Player Collides',
1500 ('CTRL ACT MONSTER CLOSE', 'Monster Collides',
1502 ('CTRL ACT PLAYER PRESS', 'Player Pressed',
1504 ('CTRL ACT MONSTER PRESS', 'Monster Pressed',
1506 ('CTRL ACT SHOT', 'Shot',
1508 ('CTRL ACT NO MONSTER', 'No Monsters',
1511 ('CTRL KEYS RED', 'Red Key',
1513 ('CTRL KEYS GREEN', 'Green Key',
1515 ('CTRL KEYS BLUE', 'Blue Key',
1517 ('CTRL KEYS TEAM RED', 'Red Team',
1519 ('CTRL KEYS TEAM BLUE', 'Blue Team',
1522 ('CTRL OPT GB', 'Optimization',
1524 ('CTRL OPT TEXTURE', 'Texture Optimization',
1525 'Оптимизация текстур'),
1526 ('CTRL OPT PANEL', 'Panel Optimization',
1527 'Оптимизация панелей'),
1528 ('CTRL OPT WALL', 'Walls',
1530 ('CTRL OPT FORE', 'Foreground',
1532 ('CTRL OPT BACK', 'Background',
1534 ('CTRL OPT STAIR', 'Steps',
1536 ('CTRL OPT WATER', 'Water',
1538 ('CTRL OPT ACID1', 'Acid 1',
1540 ('CTRL OPT ACID2', 'Acid 2',
1542 ('CTRL OPT LIFT', 'Streams',
1544 ('CTRL OPT BLOCKMON', 'Monster Boundary',
1545 'Блокиратор монстров'),
1546 ('CTRL OPT DESC TEXTURE', 'Deletes unused textures from texture list.',
1547 'Удаляет неиспользуемые текстуры из списка.'),
1548 ('CTRL OPT DESC PANEL', 'Merges nearby panels of same type. Increases game performance.',
1549 'Объединяет одинаковые панели, расположенные вплотную друг к другу, увеличивая тем самым производительность игры.'),
1550 ('CTRL SETS STATS', 'Statistics:',
1552 ('CTRL SETS SIZES', 'Map Size:',
1555 ('CTRL LAUNCH DM', 'Deathmatch',
1557 ('CTRL LAUNCH TDM', 'Team Deathmatch',
1559 ('CTRL LAUNCH CTF', 'Capture the Flag',
1560 'Capture the Flag'),
1561 ('CTRL LAUNCH COOP', 'Cooperative',
1563 ('CTRL LAUNCH 2P', 'Two Players',
1565 ('CTRL LAUNCH FF', 'Friendly Fire',
1567 ('CTRL LAUNCH EXIT', 'Enable Exit',
1569 ('CTRL LAUNCH WEAPONS', 'Weapons Stay',
1571 ('CTRL LAUNCH MONSTERS', 'Enable Monsters',
1573 ('CTRL LAUNCH CLOSE', 'Close the game after exiting the map',
1574 'Закрыть игру после выхода из карты'),
1575 ('CTRL LAUNCH OPEN', 'Select Doom 2D: Forever executable',
1576 'Выберите файл игры Doom 2D: Forever'),
1578 ('CTRL ES GRID', 'Show Grid',
1579 'Показывать сетку'),
1580 ('CTRL ES TEXTURE', 'Show Panel Texture',
1581 'Показывать текстуру панели'),
1582 ('CTRL ES PANEL SIZE', 'Show Panel Size',
1583 'Показывать размеры панели '),
1584 ('CTRL ES CHECKERBOARD', 'Use Checkerboard',
1585 'Использовать шахматку'),
1587 ('CTRL PACK TEXTURES', 'Textures',
1589 ('CTRL PACK SKY', 'Sky',
1591 ('CTRL PACK MUSIC', 'Music',
1593 ('CTRL PACK ADD', 'Don''t overwrite WAD',
1594 'Не перезаписывать WAD'),
1595 ('CTRL PACK NON STD', 'Non-standard Resources only',
1596 'Только нестандартные ресурсы'),
1598 ('LAB TEX WIDTH', 'Texture Width:',
1599 'Ширина текстуры:'),
1600 ('LAB TEX HEIGHT', 'Texture Height:',
1601 'Высота текстуры:'),
1603 ('LAB SPECTRUM', 'Show the Spectrum',
1606 ('LAB ABOUT VER', 'Version 2.1.5',
1608 ('LAB ABOUT AUTHOR', 'Author: rs.falcon',
1609 'Автор: rs.falcon'),
1610 ('LAB ABOUT AUTHOR 2', 'Additions: Pss',
1611 'Дорабатывал: Pss'),
1612 ('LAB ABOUT MAIL', 'rmw.falcon@mail.ru',
1613 'rmw.falcon@mail.ru'),
1614 ('LAB ABOUT MAIL 2', 'pssxx@mail.ru',
1616 ('LAB ABOUT SITE', 'Doom 2D: Forever Web-site',
1617 'Сайт Doom 2D: Forever'),
1618 ('LAB ABOUT HTTP', 'www.doom2d.org',
1621 ('LAB ADD WADS', 'WAD Files:',
1622 'Список WAD-файлов:'),
1623 ('LAB ADD SECTIONS', 'WAD Sections:',
1624 'Список секций WAD-файла:'),
1626 ('LAB SETS NAME', 'Map Name:',
1628 ('LAB SETS DESC', 'Map Description',
1630 ('LAB SETS AUTHOR', 'Author:',
1632 ('LAB SETS BACK', 'Background/Sky:',
1634 ('LAB SETS MUSIC', 'Music:',
1636 ('LAB SETS TEXTURES', 'Textures:',
1638 ('LAB SETS PANELS', 'Panels:',
1640 ('LAB SETS ITEMS', 'Items:',
1642 ('LAB SETS MONSTERS', 'Monsters:',
1644 ('LAB SETS AREAS', 'Areas:',
1646 ('LAB SETS TRIGGERS', 'Triggers:',
1648 ('LAB SETS SIZES', 'Current:',
1650 ('LAB SETS WIDTH', 'Width:',
1652 ('LAB SETS HEIGHT', 'Height:',
1654 ('LAB SETS MAPMOVE', 'Direction to shift map objects:',
1655 'Направление смещения объектов карты:'),
1656 ('LAB SETS SNAPPING', 'Preserve snapping',
1657 'Сохранять привязку'),
1659 ('LAB LAUNCH TIME', 'Time Limit:',
1661 ('LAB LAUNCH SECS', 'seconds',
1663 ('LAB LAUNCH SCORE', 'Score Limit:',
1665 ('LAB LAUNCH PATH', 'Path to Doom2DF.exe:',
1666 'Путь к Doom2DF.exe:'),
1667 ('LAB LAUNCH ARGS', 'Launch Arguments:',
1668 'Параметры запуска:'),
1670 ('LAB ES GRID', 'Grid Step:',
1672 ('LAB ES GRID COLOR', 'Grid Color:',
1674 ('LAB ES GRID SIZE', 'Grid Dot Size:',
1675 'Размер точек сетки:'),
1676 ('LAB ES BACK', 'Background Color:',
1678 ('LAB ES PREVIEW', 'Texture Preview Background Color:',
1679 'Цвет фона поля предпросмотра текстуры:'),
1680 ('LAB ES MINIMAP', 'Mini-map Scale:',
1681 'Масштаб мини-карты:'),
1682 ('LAB ES RECENT', 'Recent Maps List Contains:',
1683 'Запоминать последних открытых карт:'),
1684 ('LAB ES LANGUAGE', 'Language:',
1686 ('LAB ES COMPRESS', 'Compress archive when save',
1687 'Сжимать архив при сохранении'),
1688 ('LAB ES BACKUP', 'Make backup before save',
1689 'Резервная копия при сохранении'),
1691 ('LAB PACK SAVE TO', 'Save to:',
1693 ('LAB PACK MAP NAME', 'Map Resource Name:',
1694 'Название ресурса карты:'),
1695 ('LAB PACK TEXTURES', 'Texture Section:',
1696 'Секция для текстур:'),
1697 ('LAB PACK SKY', 'Sky Section:',
1698 'Секция для неба:'),
1699 ('LAB PACK MUSIC', 'Music Section:',
1700 'Секция для музыки:'),
1702 ('LAB MINI SCALE', 'Scale:',
1705 ('BTN APPLY PROPS', 'Apply Properties',
1706 'Применить свойства'),
1709 ('BTN CANCEL', 'Cancel',
1713 ('BTN CLOSE', 'Close',
1715 ('BTN ADD CLOSE', 'Add and Close',
1716 'Добавить и закрыть'),
1717 ('BTN TEST AGAIN', 'Check',
1719 ('BTN START', 'Run',
1721 ('BTN PACK', 'Pack',
1723 ('BTN SAVE', 'Save',
1725 ('BTN NO SOUND', 'No sound',
1727 ('BTN TEXTURE ADD', 'Add texture to the list',
1728 'Добавить текстуру в список'),
1729 ('BTN TEXTURE DELETE', 'Delete texture from the list',
1730 'Удалить текстуру из списка'),
1731 ('BTN TEXTURE EMPTY', 'Deselect texture',
1732 'Снять выбор с текстуры'),
1734 ('LOAD WAD', 'Reading WAD',
1736 ('LOAD MAP', 'Loading Map',
1738 ('LOAD TEXTURES', 'Reading Textures',
1740 ('LOAD PANELS', 'Reading Panels',
1742 ('LOAD ITEMS', 'Reading Items',
1743 'Чтение предметов'),
1744 ('LOAD MONSTERS', 'Reading Monsters',
1746 ('LOAD AREAS', 'Reading Areas',
1748 ('LOAD TRIGGERS', 'Reading Triggers',
1749 'Чтение триггеров'),
1751 ('TEST AREA WALL', 'Player collides with the wall and will be stuck.',
1752 'Если в этой области появится игрок, то он застрянет в стене и не сможет двигаться.'),
1753 ('TEST AREA WALL STR', 'Area #%d collides with Map (%d:%d)',
1754 'Область #%d пересекается с картой (%d:%d)'),
1755 ('TEST SPAWNS 1', 'There are several spawn points for First Player on the map',
1756 'Несколько точек появления первого игрока'),
1757 ('TEST SPAWNS 2', 'There are several spawn points for Second Player on the map',
1758 'Несколько точек появления второго игрока'),
1759 ('TEST SPAWNS', 'There are several spawn points on the map. Random one will be used.',
1760 'Несколько точек появления игрока, будет использована случайная.'),
1761 ('TEST NO DM', 'There are no DM spawn points on the map',
1762 'На карте нет точек DM'),
1763 ('TEST NO DM EX', 'There are no DM spawn points on the map. Only "Single Player" mode available.',
1764 'На карте нет точек DM, поиграть получится только в режиме "Single Player".'),
1765 ('TEST MONSTER WALL', 'Monster collides with the wall and will be stuck.',
1766 'Монстр пересекается с картой. Он застрянет в стене и не сможет двигаться'),
1767 ('TEST MONSTER WALL STR', 'Monster #%d collides with a map (%d:%d)',
1768 'Монстр #%d пересекается с картой (%d:%d)'),
1770 ('OPT NO TEXTURES', 'Texture list is empty',
1771 'Список текстур пуст'),
1772 ('OPT DELETED TEXTURES', 'Deleted Textures:',
1773 'Удалённые текстуры:'),
1774 ('OPT TOTAL TEXTURES', 'Textures Total:',
1776 ('OPT TEX DELETED', 'Textures Deleted:',
1777 'Удалено текстур:'),
1778 ('OPT PANELS OPT', 'Panels Optimized:',
1779 'Оптимизировано панелей:'),
1780 ('OPT WALLS', 'Walls Optimization...',
1781 'Оптимизация стен...'),
1782 ('OPT FORES', 'Foreground Optimization...',
1783 'Оптимизация переднего плана...'),
1784 ('OPT BACKS', 'Background Optimization...',
1785 'Оптимизация фона...'),
1786 ('OPT STAIRS', 'Steps Optimization...',
1787 'Оптимизация ступеней...'),
1788 ('OPT WATER', 'Water Optimization...',
1789 'Оптимизация воды...'),
1790 ('OPT ACID1', 'Acid 1 Optimization...',
1791 'Оптимизация кислоты 1...'),
1792 ('OPT ACID2', 'Acid 2 Optimization...',
1793 'Оптимизация кислоты 2...'),
1794 ('OPT LIFTS', 'Streams Optimization...',
1795 'Оптимизация лифтов...'),
1796 ('OPT BLOCKMON', 'Monster Boundaries Optimization...',
1797 'Оптимизация блокираторов монстров....'),
1798 ('OPT TOTAL PANELS', 'Panels Total:',
1800 ('OPT PANELS AFTER', 'Panels after Optimization:',
1801 'Панелей после оптимизации:'),
1803 ('WAD SPECIAL MAP', '<MAP WAD-FILE>',
1804 '<WAD-ФАЙЛ КАРТЫ>'),
1805 ('WAD SPECIAL TEXS', '<EXTRA TEXTURES>',
1808 ('FILE FILTER ALL', 'Doom 2D: Forever Maps (*.dfz, *.wad)|*.dfz;*.wad|Doom 2D: Forever 0.30 Maps (*.ini)|*.ini|Все файлы (*.*)|*.*',
1809 'Карты Doom 2D: Forever (*.dfz, *.wad)|*.dfz;*.wad|Старые карты Doom 2D: Forever 0.30 (*.ini)|*.ini|Все файлы (*.*)|*.*'),
1810 ('FILE FILTER WAD', 'Doom 2D: Forever Maps (*.dfz)|*.dfz|Doom 2D: Forever Maps (*.wad)|*.wad|Все файлы (*.*)|*.*',
1811 'Карты Doom 2D: Forever (*.dfz)|*.dfz|Карты Doom 2D: Forever (*.wad)|*.wad|Все файлы (*.*)|*.*'),
1813 ('EDITOR TITLE', 'Doom 2D: Forever Map Editor',
1814 'Редактор карт Doom 2D: Forever'),
1820 procedure SetupArrays();
1826 BoolNames
[False] := _lc
[I_ARRAY_BOOL_FALSE
];
1827 BoolNames
[True] := _lc
[I_ARRAY_BOOL_TRUE
];
1830 DirNames
[D_LEFT
] := _lc
[I_ARRAY_DIR_LEFT
];
1831 DirNames
[D_RIGHT
] := _lc
[I_ARRAY_DIR_RIGHT
];
1833 // Смены направления:
1834 DirNamesAdv
[0] := _lc
[I_ARRAY_DIR_SAME
];
1835 DirNamesAdv
[1] := _lc
[I_ARRAY_DIR_LEFT
];
1836 DirNamesAdv
[2] := _lc
[I_ARRAY_DIR_RIGHT
];
1837 DirNamesAdv
[3] := _lc
[I_ARRAY_DIR_REVERSED
];
1839 // Направление (на кнопках):
1840 DirButtonNames
[1] := _lc
[I_ARRAY_DIRBTN_LEFT
];
1841 DirButtonNames
[2] := _lc
[I_ARRAY_DIRBTN_RIGHT
];
1842 DirButtonNames
[3] := _lc
[I_ARRAY_DIRBTN_UP
];
1843 DirButtonNames
[4] := _lc
[I_ARRAY_DIRBTN_DOWN
];
1845 // Названия панелей:
1846 PANELNAMES
[0] := _lc
[I_ARRAY_PANEL_WALL
];
1847 PANELNAMES
[1] := _lc
[I_ARRAY_PANEL_BACK
];
1848 PANELNAMES
[2] := _lc
[I_ARRAY_PANEL_FRONT
];
1849 PANELNAMES
[3] := _lc
[I_ARRAY_PANEL_DOOR_OPEN
];
1850 PANELNAMES
[4] := _lc
[I_ARRAY_PANEL_DOOR_CLOSE
];
1851 PANELNAMES
[5] := _lc
[I_ARRAY_PANEL_STAIR
];
1852 PANELNAMES
[6] := _lc
[I_ARRAY_PANEL_WATER
];
1853 PANELNAMES
[7] := _lc
[I_ARRAY_PANEL_ACID_1
];
1854 PANELNAMES
[8] := _lc
[I_ARRAY_PANEL_ACID_2
];
1855 PANELNAMES
[9] := _lc
[I_ARRAY_PANEL_LIFT_UP
];
1856 PANELNAMES
[10] := _lc
[I_ARRAY_PANEL_LIFT_DOWN
];
1857 PANELNAMES
[11] := _lc
[I_ARRAY_PANEL_LIFT_LEFT
];
1858 PANELNAMES
[12] := _lc
[I_ARRAY_PANEL_LIFT_RIGHT
];
1859 PANELNAMES
[13] := _lc
[I_ARRAY_PANEL_BLOCKMON
];
1861 // Названия эффектов:
1862 EffectNames
[EFFECT_NONE
] := _lc
[I_ARRAY_FX_NONE
];
1863 EffectNames
[EFFECT_TELEPORT
] := _lc
[I_ARRAY_FX_TELEPORT
];
1864 EffectNames
[EFFECT_RESPAWN
] := _lc
[I_ARRAY_FX_RESPAWN
];
1865 EffectNames
[EFFECT_FIRE
] := _lc
[I_ARRAY_FX_FIRE
];
1867 // Названия предметов:
1868 ItemNames
[ITEM_MEDKIT_SMALL
] := _lc
[I_ARRAY_ITEM_MEDKIT
];
1869 ItemNames
[ITEM_MEDKIT_LARGE
] := _lc
[I_ARRAY_ITEM_LARGE_MEDKIT
];
1870 ItemNames
[ITEM_MEDKIT_BLACK
] := _lc
[I_ARRAY_ITEM_BLACK_MEDKIT
];
1871 ItemNames
[ITEM_ARMOR_GREEN
] := _lc
[I_ARRAY_ITEM_GREEN_ARMOR
];
1872 ItemNames
[ITEM_ARMOR_BLUE
] := _lc
[I_ARRAY_ITEM_BLUE_ARMOR
];
1873 ItemNames
[ITEM_SPHERE_BLUE
] := _lc
[I_ARRAY_ITEM_BLUE_SPHERE
];
1874 ItemNames
[ITEM_SPHERE_WHITE
] := _lc
[I_ARRAY_ITEM_MEGASPHERE
];
1875 ItemNames
[ITEM_SUIT
] := _lc
[I_ARRAY_ITEM_HAZ_SUIT
];
1876 ItemNames
[ITEM_OXYGEN
] := _lc
[I_ARRAY_ITEM_OXYGEN
];
1877 ItemNames
[ITEM_INVUL
] := _lc
[I_ARRAY_ITEM_INVULNERABILITY
];
1878 ItemNames
[ITEM_WEAPON_SAW
] := _lc
[I_ARRAY_ITEM_CHAINSAW
];
1879 ItemNames
[ITEM_WEAPON_SHOTGUN1
] := _lc
[I_ARRAY_ITEM_SHOTGUN
];
1880 ItemNames
[ITEM_WEAPON_SHOTGUN2
] := _lc
[I_ARRAY_ITEM_DB_SHOTGUN
];
1881 ItemNames
[ITEM_WEAPON_CHAINGUN
] := _lc
[I_ARRAY_ITEM_CHAINGUN
];
1882 ItemNames
[ITEM_WEAPON_ROCKETLAUNCHER
] := _lc
[I_ARRAY_ITEM_ROCKET_LAUNCHER
];
1883 ItemNames
[ITEM_WEAPON_PLASMA
] := _lc
[I_ARRAY_ITEM_PLASMA_RIFLE
];
1884 ItemNames
[ITEM_WEAPON_BFG
] := _lc
[I_ARRAY_ITEM_BFG
];
1885 ItemNames
[ITEM_WEAPON_SUPERPULEMET
] := _lc
[I_ARRAY_ITEM_SUPER_MINIGUN
];
1886 ItemNames
[ITEM_WEAPON_FLAMETHROWER
] := _lc
[I_ARRAY_ITEM_FLAMETHROWER
];
1887 ItemNames
[ITEM_AMMO_BULLETS
] := _lc
[I_ARRAY_ITEM_CLIP
];
1888 ItemNames
[ITEM_AMMO_BULLETS_BOX
] := _lc
[I_ARRAY_ITEM_AMMO_BOX
];
1889 ItemNames
[ITEM_AMMO_SHELLS
] := _lc
[I_ARRAY_ITEM_4_SHELLS
];
1890 ItemNames
[ITEM_AMMO_SHELLS_BOX
] := _lc
[I_ARRAY_ITEM_25_SHELLS
];
1891 ItemNames
[ITEM_AMMO_ROCKET
] := _lc
[I_ARRAY_ITEM_1_ROCKET
];
1892 ItemNames
[ITEM_AMMO_ROCKET_BOX
] := _lc
[I_ARRAY_ITEM_ROCKET_BOX
];
1893 ItemNames
[ITEM_AMMO_CELL
] := _lc
[I_ARRAY_ITEM_CELL
];
1894 ItemNames
[ITEM_AMMO_CELL_BIG
] := _lc
[I_ARRAY_ITEM_LARGE_CELL
];
1895 ItemNames
[ITEM_AMMO_FUELCAN
] := _lc
[I_ARRAY_ITEM_FUELCAN
];
1896 ItemNames
[ITEM_AMMO_BACKPACK
] := _lc
[I_ARRAY_ITEM_BACKPACK
];
1897 ItemNames
[ITEM_KEY_RED
] := _lc
[I_ARRAY_ITEM_KEY_RED
];
1898 ItemNames
[ITEM_KEY_GREEN
] := _lc
[I_ARRAY_ITEM_KEY_GREEN
];
1899 ItemNames
[ITEM_KEY_BLUE
] := _lc
[I_ARRAY_ITEM_KEY_BLUE
];
1900 ItemNames
[ITEM_WEAPON_KASTET
] := '?';
1901 ItemNames
[ITEM_WEAPON_PISTOL
] := '??';
1902 ItemNames
[ITEM_BOTTLE
] := _lc
[I_ARRAY_ITEM_BOTTLE
];
1903 ItemNames
[ITEM_HELMET
] := _lc
[I_ARRAY_ITEM_HELMET
];
1904 ItemNames
[ITEM_JETPACK
] := _lc
[I_ARRAY_ITEM_JETPACK
];
1905 ItemNames
[ITEM_INVIS
] := _lc
[I_ARRAY_ITEM_INVIS
];
1907 // Названия снарядов:
1908 ShotNames
[TRIGGER_SHOT_PISTOL
] := _lc
[I_ARRAY_SHOT_PISTOL
];
1909 ShotNames
[TRIGGER_SHOT_BULLET
] := _lc
[I_ARRAY_SHOT_BULLET
];
1910 ShotNames
[TRIGGER_SHOT_SHOTGUN
] := _lc
[I_ARRAY_SHOT_SHOTGUN
];
1911 ShotNames
[TRIGGER_SHOT_SSG
] := _lc
[I_ARRAY_SHOT_SSG
];
1912 ShotNames
[TRIGGER_SHOT_IMP
] := _lc
[I_ARRAY_SHOT_IMP
];
1913 ShotNames
[TRIGGER_SHOT_PLASMA
] := _lc
[I_ARRAY_SHOT_PLASMA
];
1914 ShotNames
[TRIGGER_SHOT_SPIDER
] := _lc
[I_ARRAY_SHOT_SPIDER
];
1915 ShotNames
[TRIGGER_SHOT_CACO
] := _lc
[I_ARRAY_SHOT_CACO
];
1916 ShotNames
[TRIGGER_SHOT_BARON
] := _lc
[I_ARRAY_SHOT_BARON
];
1917 ShotNames
[TRIGGER_SHOT_MANCUB
] := _lc
[I_ARRAY_SHOT_MANCUB
];
1918 ShotNames
[TRIGGER_SHOT_REV
] := _lc
[I_ARRAY_SHOT_REV
];
1919 ShotNames
[TRIGGER_SHOT_ROCKET
] := _lc
[I_ARRAY_SHOT_ROCKET
];
1920 ShotNames
[TRIGGER_SHOT_BFG
] := _lc
[I_ARRAY_SHOT_BFG
];
1921 ShotNames
[TRIGGER_SHOT_EXPL
] := _lc
[I_ARRAY_SHOT_EXPL
];
1922 ShotNames
[TRIGGER_SHOT_BFGEXPL
] := _lc
[I_ARRAY_SHOT_BFGEXPL
];
1923 ShotNames
[TRIGGER_SHOT_FLAME
] := _lc
[I_ARRAY_SHOT_FLAME
];
1925 // Названия монстров:
1926 MonsterNames
[MONSTER_DEMON
] := _lc
[I_ARRAY_MON_DEMON
];
1927 MonsterNames
[MONSTER_IMP
] := _lc
[I_ARRAY_MON_IMP
];
1928 MonsterNames
[MONSTER_ZOMBY
] := _lc
[I_ARRAY_MON_ZOMBIE
];
1929 MonsterNames
[MONSTER_SERG
] := _lc
[I_ARRAY_MON_SERGEANT
];
1930 MonsterNames
[MONSTER_CYBER
] := _lc
[I_ARRAY_MON_CYBER
];
1931 MonsterNames
[MONSTER_CGUN
] := _lc
[I_ARRAY_MON_CGUN
];
1932 MonsterNames
[MONSTER_BARON
] := _lc
[I_ARRAY_MON_HELL_BARON
];
1933 MonsterNames
[MONSTER_KNIGHT
] := _lc
[I_ARRAY_MON_HELL_KNIGHT
];
1934 MonsterNames
[MONSTER_CACO
] := _lc
[I_ARRAY_MON_CACODEMON
];
1935 MonsterNames
[MONSTER_SOUL
] := _lc
[I_ARRAY_MON_LOST_SOUL
];
1936 MonsterNames
[MONSTER_PAIN
] := _lc
[I_ARRAY_MON_PAIN_ELEMENTAL
];
1937 MonsterNames
[MONSTER_SPIDER
] := _lc
[I_ARRAY_MON_MASTERMIND
];
1938 MonsterNames
[MONSTER_BSP
] := _lc
[I_ARRAY_MON_ARACHNATRON
];
1939 MonsterNames
[MONSTER_MANCUB
] := _lc
[I_ARRAY_MON_MANCUBUS
];
1940 MonsterNames
[MONSTER_SKEL
] := _lc
[I_ARRAY_MON_REVENANT
];
1941 MonsterNames
[MONSTER_VILE
] := _lc
[I_ARRAY_MON_ARCHVILE
];
1942 MonsterNames
[MONSTER_FISH
] := _lc
[I_ARRAY_MON_FISH
];
1943 MonsterNames
[MONSTER_BARREL
] := _lc
[I_ARRAY_MON_BARREL
];
1944 MonsterNames
[MONSTER_ROBO
] := _lc
[I_ARRAY_MON_ROBOT
];
1945 MonsterNames
[MONSTER_MAN
] := _lc
[I_ARRAY_MON_PRIKOLIST
];
1947 // Названия областей:
1948 AreaNames
[AREA_PLAYERPOINT1
] := _lc
[I_ARRAY_AREA_PLAYER_ONE
];
1949 AreaNames
[AREA_PLAYERPOINT2
] := _lc
[I_ARRAY_AREA_PLAYER_TWO
];
1950 AreaNames
[AREA_DMPOINT
] := _lc
[I_ARRAY_AREA_DM
];
1951 AreaNames
[AREA_REDFLAG
] := _lc
[I_ARRAY_AREA_FLAG_RED
];
1952 AreaNames
[AREA_BLUEFLAG
] := _lc
[I_ARRAY_AREA_FLAG_BLUE
];
1953 AreaNames
[AREA_DOMFLAG
] := _lc
[I_ARRAY_AREA_FLAG_DOM
];
1954 AreaNames
[AREA_REDTEAMPOINT
] := _lc
[I_ARRAY_AREA_TEAM_RED
];
1955 AreaNames
[AREA_BLUETEAMPOINT
] := _lc
[I_ARRAY_AREA_TEAM_BLUE
];
1957 // Названия триггеров:
1958 TriggerNames
[TRIGGER_EXIT
] := _lc
[I_ARRAY_TR_EXIT
];
1959 TriggerNames
[TRIGGER_TELEPORT
] := _lc
[I_ARRAY_TR_TELEPORT
];
1960 TriggerNames
[TRIGGER_OPENDOOR
] := _lc
[I_ARRAY_TR_DOOR_OPEN
];
1961 TriggerNames
[TRIGGER_CLOSEDOOR
] := _lc
[I_ARRAY_TR_DOOR_CLOSE
];
1962 TriggerNames
[TRIGGER_DOOR
] := _lc
[I_ARRAY_TR_DOOR_SWITCH
];
1963 TriggerNames
[TRIGGER_DOOR5
] := _lc
[I_ARRAY_TR_DOOR_5_SEC
];
1964 TriggerNames
[TRIGGER_CLOSETRAP
] := _lc
[I_ARRAY_TR_TRAP_CLOSE
];
1965 TriggerNames
[TRIGGER_TRAP
] := _lc
[I_ARRAY_TR_TRAP
];
1966 TriggerNames
[TRIGGER_PRESS
] := _lc
[I_ARRAY_TR_EXTEND
];
1967 TriggerNames
[TRIGGER_SECRET
] := _lc
[I_ARRAY_TR_SECRET
];
1968 TriggerNames
[TRIGGER_LIFTUP
] := _lc
[I_ARRAY_TR_LIFT_UP
];
1969 TriggerNames
[TRIGGER_LIFTDOWN
] := _lc
[I_ARRAY_TR_LIFT_DOWN
];
1970 TriggerNames
[TRIGGER_LIFT
] := _lc
[I_ARRAY_TR_LIFT_SWITCH
];
1971 TriggerNames
[TRIGGER_TEXTURE
] := _lc
[I_ARRAY_TR_TEXTURE
];
1972 TriggerNames
[TRIGGER_ON
] := _lc
[I_ARRAY_TR_ON
];
1973 TriggerNames
[TRIGGER_OFF
] := _lc
[I_ARRAY_TR_OFF
];
1974 TriggerNames
[TRIGGER_ONOFF
] := _lc
[I_ARRAY_TR_SWITCH
];
1975 TriggerNames
[TRIGGER_SOUND
] := _lc
[I_ARRAY_TR_SOUND
];
1976 TriggerNames
[TRIGGER_SPAWNMONSTER
] := _lc
[I_ARRAY_TR_SPAWN_MONSTER
];
1977 TriggerNames
[TRIGGER_SPAWNITEM
] := _lc
[I_ARRAY_TR_SPAWN_ITEM
];
1978 TriggerNames
[TRIGGER_MUSIC
] := _lc
[I_ARRAY_TR_MUSIC
];
1979 TriggerNames
[TRIGGER_PUSH
] := _lc
[I_ARRAY_TR_PUSH
];
1980 TriggerNames
[TRIGGER_SCORE
] := _lc
[I_ARRAY_TR_SCORE
];
1981 TriggerNames
[TRIGGER_MESSAGE
] := _lc
[I_ARRAY_TR_MESSAGE
];
1982 TriggerNames
[TRIGGER_DAMAGE
] := _lc
[I_ARRAY_TR_DAMAGE
];
1983 TriggerNames
[TRIGGER_HEALTH
] := _lc
[I_ARRAY_TR_HEALTH
];
1984 TriggerNames
[TRIGGER_SHOT
] := _lc
[I_ARRAY_TR_SHOT
];
1985 TriggerNames
[TRIGGER_EFFECT
] := _lc
[I_ARRAY_TR_EFFECT
];
1987 // Установка значений в панели выбора объектов:
1990 lbPanelType
.Items
.Clear();
1991 for i
:= 0 to High(PANELNAMES
) do
1992 lbPanelType
.Items
.Add(PANELNAMES
[i
]);
1993 lbPanelType
.ItemIndex
:= 0;
1996 for i
:= ITEM_MEDKIT_SMALL
to ITEM_KEY_BLUE
do
1997 lbItemList
.Items
.Add(ItemNames
[i
]);
1998 lbItemList
.Items
.Add(ItemNames
[ITEM_BOTTLE
]);
1999 lbItemList
.Items
.Add(ItemNames
[ITEM_HELMET
]);
2000 lbItemList
.Items
.Add(ItemNames
[ITEM_JETPACK
]);
2001 lbItemList
.Items
.Add(ItemNames
[ITEM_INVIS
]);
2002 lbItemList
.Items
.Add(ItemNames
[ITEM_WEAPON_FLAMETHROWER
]);
2003 lbItemList
.Items
.Add(ItemNames
[ITEM_AMMO_FUELCAN
]);
2005 lbMonsterList
.Clear();
2006 for i
:= MONSTER_DEMON
to MONSTER_MAN
do
2007 lbMonsterList
.Items
.Add(MonsterNames
[i
]);
2009 lbAreasList
.Clear();
2010 for i
:= AREA_PLAYERPOINT1
to AREA_BLUETEAMPOINT
do
2011 lbAreasList
.Items
.Add(AreaNames
[i
]);
2013 lbTriggersList
.Clear();
2014 for i
:= Low(TriggerNames
) to High(TriggerNames
) do
2015 lbTriggersList
.Items
.Add(TriggerNames
[i
]);
2017 clbActivationType
.Clear();
2018 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_PLAYER_CLOSE
]);
2019 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_MONSTER_CLOSE
]);
2020 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_PLAYER_PRESS
]);
2021 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_MONSTER_PRESS
]);
2022 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_SHOT
]);
2023 clbActivationType
.Items
.Add(_lc
[I_CTRL_ACT_NO_MONSTER
]);
2026 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_RED
]);
2027 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_GREEN
]);
2028 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_BLUE
]);
2029 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_TEAM_RED
]);
2030 clbKeys
.Items
.Add(_lc
[I_CTRL_KEYS_TEAM_BLUE
]);
2034 procedure SetupCaptions();
2043 FormCaption
:= _lc
[I_EDITOR_TITLE
];
2044 i
:= Pos('-', Caption
);
2047 Caption
:= FormCaption
+ ' ' + Copy(Caption
, i
, Length(Caption
)-i
+1);
2050 Caption
:= FormCaption
;
2053 miMenuFile
.Caption
:= _lc
[I_MENU_FILE
];
2054 miNewMap
.Caption
:= _lc
[I_MENU_FILE_NEW
];
2055 miOpenMap
.Caption
:= _lc
[I_MENU_FILE_OPEN
];
2056 miSaveMap
.Caption
:= _lc
[I_MENU_FILE_SAVE
];
2057 miSaveMapAs
.Caption
:= _lc
[I_MENU_FILE_SAVE_AS
];
2058 miOpenWadMap
.Caption
:= _lc
[I_MENU_FILE_OPEN_WAD
];
2059 miReopenMap
.Caption
:= _lc
[I_MENU_FILE_REOPEN
];
2060 miSaveMiniMap
.Caption
:= _lc
[I_MENU_FILE_SAVE_MINI
];
2061 miDeleteMap
.Caption
:= _lc
[I_MENU_FILE_DELETE
];
2062 miPackMap
.Caption
:= _lc
[I_MENU_FILE_PACK_MAP
];
2063 miExit
.Caption
:= _lc
[I_MENU_FILE_EXIT
];
2065 miMenuEdit
.Caption
:= _lc
[I_MENU_EDIT
];
2066 miUndo
.Caption
:= _lc
[I_MENU_EDIT_UNDO
];
2067 miCopy
.Caption
:= _lc
[I_MENU_EDIT_COPY
];
2068 miCut
.Caption
:= _lc
[I_MENU_EDIT_CUT
];
2069 miPaste
.Caption
:= _lc
[I_MENU_EDIT_PASTE
];
2070 miSelectAll
.Caption
:= _lc
[I_MENU_EDIT_SELECT_ALL
];
2071 miToFore
.Caption
:= _lc
[I_MENU_EDIT_TO_FORE
];
2072 miToBack
.Caption
:= _lc
[I_MENU_EDIT_TO_BACK
];
2074 miMenuTools
.Caption
:= _lc
[I_MENU_TOOLS
];
2075 miSnapToGrid
.Caption
:= _lc
[I_MENU_TOOLS_SNAP_GRID
];
2076 miMiniMap
.Caption
:= _lc
[I_MENU_TOOLS_MINIMAP
];
2077 miSwitchGrid
.Caption
:= _lc
[I_MENU_TOOLS_STEP_GRID
];
2078 miShowEdges
.Caption
:= _lc
[I_MENU_TOOLS_SHOW_EDGES
];
2079 miLayers
.Caption
:= _lc
[I_MENU_TOOLS_LAYERS
];
2080 miLayer1
.Caption
:= _lc
[I_MENU_LAYER_BACK
];
2081 miLayer2
.Caption
:= _lc
[I_MENU_LAYER_WALL
];
2082 miLayer3
.Caption
:= _lc
[I_MENU_LAYER_FORE
];
2083 miLayer4
.Caption
:= _lc
[I_MENU_LAYER_STAIR
];
2084 miLayer5
.Caption
:= _lc
[I_MENU_LAYER_WATER
];
2085 miLayer6
.Caption
:= _lc
[I_MENU_LAYER_ITEM
];
2086 miLayer7
.Caption
:= _lc
[I_MENU_LAYER_MONSTER
];
2087 miLayer8
.Caption
:= _lc
[I_MENU_LAYER_AREA
];
2088 miLayer9
.Caption
:= _lc
[I_MENU_LAYER_TRIGGER
];
2090 miMenuService
.Caption
:= _lc
[I_MENU_SERV
];
2091 miCheckMap
.Caption
:= _lc
[I_MENU_SERV_TEST
];
2092 miOptimmization
.Caption
:= _lc
[I_MENU_SERV_OPT
];
2093 miMapPreview
.Caption
:= _lc
[I_MENU_SERV_PREVIEW
];
2094 miTestMap
.Caption
:= _lc
[I_MENU_SERV_LAUNCH
];
2096 miMenuSettings
.Caption
:= _lc
[I_MENU_SETS
];
2097 miMapOptions
.Caption
:= _lc
[I_MENU_SETS_MAP
];
2098 miOptions
.Caption
:= _lc
[I_MENU_SETS_EDITOR
];
2099 miMapTestSettings
.Caption
:= _lc
[I_MENU_SETS_LAUNCH
];
2101 miMenuHelp
.Caption
:= _lc
[I_MENU_HELP
];
2102 miAbout
.Caption
:= _lc
[I_MENU_HELP_ABOUT
];
2104 // Панель инструментов:
2105 tbNewMap
.Hint
:= _lc
[I_MENU_TB_NEW
];
2106 tbOpenMap
.Hint
:= _lc
[I_MENU_TB_OPEN
];
2107 tbSaveMap
.Hint
:= _lc
[I_MENU_TB_SAVE
];
2108 tbOpenWadMap
.Hint
:= _lc
[I_MENU_TB_OPEN_WAD
];
2109 tbShowMap
.Hint
:= _lc
[I_MENU_TB_MINIMAP
];
2110 tbShow
.Hint
:= _lc
[I_MENU_TB_LAYERS
];
2111 tbGridOn
.Hint
:= _lc
[I_MENU_TB_GRID
];
2112 tbGrid
.Hint
:= _lc
[I_MENU_TB_GRID_STEP
];
2113 tbTestMap
.Hint
:= _lc
[I_MENU_TB_LAUNCH
];
2114 // Всплывающее меню для кнопки слоев:
2115 miLayerP1
.Caption
:= _lc
[I_MENU_LAYER_BACK
];
2116 miLayerP2
.Caption
:= _lc
[I_MENU_LAYER_WALL
];
2117 miLayerP3
.Caption
:= _lc
[I_MENU_LAYER_FORE
];
2118 miLayerP4
.Caption
:= _lc
[I_MENU_LAYER_STAIR
];
2119 miLayerP5
.Caption
:= _lc
[I_MENU_LAYER_WATER
];
2120 miLayerP6
.Caption
:= _lc
[I_MENU_LAYER_ITEM
];
2121 miLayerP7
.Caption
:= _lc
[I_MENU_LAYER_MONSTER
];
2122 miLayerP8
.Caption
:= _lc
[I_MENU_LAYER_AREA
];
2123 miLayerP9
.Caption
:= _lc
[I_MENU_LAYER_TRIGGER
];
2124 // Всплывающее меню для кнопки теста карты:
2125 miMapTestPMSet
.Caption
:= _lc
[I_MENU_LAUNCH_SETS
];
2127 // Кнопка применения свойств:
2128 bApplyProperty
.Caption
:= _lc
[I_BTN_APPLY_PROPS
];
2129 // Редактор свойств объектов:
2130 vleObjectProperty
.TitleCaptions
[0] := _lc
[I_CTRL_PROP_KEY
];
2131 vleObjectProperty
.TitleCaptions
[1] := _lc
[I_CTRL_PROP_VALUE
];
2133 // Вкладка "Панели":
2134 tsPanels
.Caption
:= _lc
[I_CTRL_PANELS
];
2135 lbPanelType
.Hint
:= _lc
[I_PROP_PANEL_TYPE
];
2136 lbTextureList
.Hint
:= _lc
[I_CTRL_LIST_TEXTURE
];
2137 // Панель настройки текстур:
2138 LabelTxW
.Caption
:= _lc
[I_LAB_TEX_WIDTH
];
2139 LabelTxH
.Caption
:= _lc
[I_LAB_TEX_HEIGHT
];
2140 cbPreview
.Caption
:= _lc
[I_CTRL_PREVIEW
];
2141 bbAddTexture
.Hint
:= _lc
[I_BTN_TEXTURE_ADD
];
2142 bbRemoveTexture
.Hint
:= _lc
[I_BTN_TEXTURE_DELETE
];
2143 bClearTexture
.Hint
:= _lc
[I_BTN_TEXTURE_EMPTY
];
2145 // Вкладка "Предметы":
2146 tsItems
.Caption
:= _lc
[I_CTRL_ITEMS
];
2147 lbItemList
.Hint
:= _lc
[I_CTRL_LIST_ITEM
];
2148 cbOnlyDM
.Caption
:= _lc
[I_CTRL_ITEM_DM
];
2149 cbFall
.Caption
:= _lc
[I_CTRL_ITEM_FALLS
];
2151 // Вкладка "Монстры":
2152 tsMonsters
.Caption
:= _lc
[I_CTRL_MONSTERS
];
2153 lbMonsterList
.Hint
:= _lc
[I_CTRL_LIST_MONSTER
];
2154 rbMonsterLeft
.Caption
:= _lc
[I_CTRL_LEFT
];
2155 rbMonsterRight
.Caption
:= _lc
[I_CTRL_RIGHT
];
2157 // Вкладка "Области":
2158 tsAreas
.Caption
:= _lc
[I_CTRL_AREAS
];
2159 lbAreasList
.Hint
:= _lc
[I_CTRL_LIST_AREA
];
2160 rbAreaLeft
.Caption
:= _lc
[I_CTRL_LEFT
];
2161 rbAreaRight
.Caption
:= _lc
[I_CTRL_RIGHT
];
2163 // Вкладка "Триггеры":
2164 tsTriggers
.Caption
:= _lc
[I_CTRL_TRIGGERS
];
2165 lbTriggersList
.Hint
:= _lc
[I_CTRL_LIST_TRIGGER
];
2166 clbActivationType
.Hint
:= _lc
[I_CTRL_LIST_ACTIVE
];
2167 clbKeys
.Hint
:= _lc
[I_CTRL_LIST_KEYS
];
2170 // Форма "О программе":
2173 Caption
:= _lc
[I_CAP_ABOUT
];
2174 LabelTitle
.Caption
:= _lc
[I_EDITOR_TITLE
];
2175 LabelVer
.Caption
:= _lc
[I_LAB_ABOUT_VER
];
2176 LabelAuthor
.Caption
:= _lc
[I_LAB_ABOUT_AUTHOR
];
2177 LabelAuthor2
.Caption
:= _lc
[I_LAB_ABOUT_AUTHOR_2
];
2178 LabelMail
.Caption
:= _lc
[I_LAB_ABOUT_MAIL
];
2179 LabelMail2
.Caption
:= _lc
[I_LAB_ABOUT_MAIL_2
];
2180 LabelSite
.Caption
:= _lc
[I_LAB_ABOUT_SITE
];
2181 LabelHttp
.Caption
:= _lc
[I_LAB_ABOUT_HTTP
];
2184 // Форма "Тип активации":
2185 with ActivationTypeForm
do
2187 Caption
:= _lc
[I_CAP_ACT
];
2188 cbPlayerCollide
.Caption
:= _lc
[I_CTRL_ACT_PLAYER_CLOSE
];
2189 cbMonsterCollide
.Caption
:= _lc
[I_CTRL_ACT_MONSTER_CLOSE
];
2190 cbPlayerPress
.Caption
:= _lc
[I_CTRL_ACT_PLAYER_PRESS
];
2191 cbMonsterPress
.Caption
:= _lc
[I_CTRL_ACT_MONSTER_PRESS
];
2192 cbShot
.Caption
:= _lc
[I_CTRL_ACT_SHOT
];
2193 cbNoMonster
.Caption
:= _lc
[I_CTRL_ACT_NO_MONSTER
];
2194 bOK
.Caption
:= _lc
[I_BTN_OK
];
2197 // Форма "Выбор текстуры для неба":
2200 Caption
:= _lc
[I_CAP_ADD_SKY
];
2201 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2202 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2203 bOK
.Caption
:= _lc
[I_BTN_OK
];
2204 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2207 // Форма "Выбор звука или музыки":
2208 with AddSoundForm
do
2210 Caption
:= _lc
[I_CAP_ADD_SOUND
];
2211 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2212 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2213 bOK
.Caption
:= _lc
[I_BTN_OK
];
2214 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2215 bEmpty
.Caption
:= _lc
[I_BTN_NO_SOUND
];
2218 // Форма "Выбор текстуры":
2219 with AddTextureForm
do
2221 Caption
:= _lc
[I_CAP_ADD_TEXTURE
];
2222 LabelWADs
.Caption
:= _lc
[I_LAB_ADD_WADS
];
2223 LabelSections
.Caption
:= _lc
[I_LAB_ADD_SECTIONS
];
2224 bAddTexture
.Caption
:= _lc
[I_BTN_ADD
];
2225 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2226 bAddClose
.Caption
:= _lc
[I_BTN_ADD_CLOSE
];
2229 // Форма "Выбор типа монстра" / "Выбор типа предмета":
2230 ChooseTypeForm
.bOK
.Caption
:= _lc
[I_BTN_OK
];
2235 Caption
:= _lc
[I_CAP_KEYS
];
2236 cbRedKey
.Caption
:= _lc
[I_CTRL_KEYS_RED
];
2237 cbGreenKey
.Caption
:= _lc
[I_CTRL_KEYS_GREEN
];
2238 cbBlueKey
.Caption
:= _lc
[I_CTRL_KEYS_BLUE
];
2239 cbRedTeam
.Caption
:= _lc
[I_CTRL_KEYS_TEAM_RED
];
2240 cbBlueTeam
.Caption
:= _lc
[I_CTRL_KEYS_TEAM_BLUE
];
2241 bOK
.Caption
:= _lc
[I_BTN_OK
];
2244 // Форма "Проверка карты":
2245 with MapCheckForm
do
2247 Caption
:= _lc
[I_CAP_TEST
];
2248 bCheckMap
.Caption
:= _lc
[I_BTN_TEST_AGAIN
];
2249 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2252 // Форма "Оптимизация карты":
2253 with MapOptimizationForm
do
2255 Caption
:= _lc
[I_CAP_OPT
];
2256 // Выбор оптимизации:
2257 GroupBoxOpt
.Caption
:= _lc
[I_CTRL_OPT_GB
];
2258 rbTexturesOptimization
.Caption
:= _lc
[I_CTRL_OPT_TEXTURE
];
2259 rbPanelsOptimization
.Caption
:= _lc
[I_CTRL_OPT_PANEL
];
2260 // Оптимизация текстур:
2261 bBeginTextureOptimization
.Caption
:= _lc
[I_BTN_START
];
2262 // Оптимизация панелей:
2263 cbOptimizeWalls
.Caption
:= _lc
[I_CTRL_OPT_WALL
];
2264 cbOptimizeForeGround
.Caption
:= _lc
[I_CTRL_OPT_FORE
];
2265 cbOptimizeBackGround
.Caption
:= _lc
[I_CTRL_OPT_BACK
];
2266 cbOptimizeSteps
.Caption
:= _lc
[I_CTRL_OPT_STAIR
];
2267 cbOptimizeWater
.Caption
:= _lc
[I_CTRL_OPT_WATER
];
2268 cbOptimizeAcid1
.Caption
:= _lc
[I_CTRL_OPT_ACID1
];
2269 cbOptimizeAcid2
.Caption
:= _lc
[I_CTRL_OPT_ACID2
];
2270 cbOptimizeLift
.Caption
:= _lc
[I_CTRL_OPT_LIFT
];
2271 cbOptimizeBlockMon
.Caption
:= _lc
[I_CTRL_OPT_BLOCKMON
];
2272 bBeginPanelsOptimization
.Caption
:= _lc
[I_BTN_START
];
2275 // Форма "Параметры карты":
2276 with MapOptionsForm
do
2278 Caption
:= _lc
[I_CAP_SETS
];
2279 // Основные параметры:
2280 LabelName
.Caption
:= _lc
[I_LAB_SETS_NAME
];
2281 LabelDesc
.Caption
:= _lc
[I_LAB_SETS_DESC
];
2282 LabelAuthor
.Caption
:= _lc
[I_LAB_SETS_AUTHOR
];
2283 LabelBack
.Caption
:= _lc
[I_LAB_SETS_BACK
];
2284 LabelMusic
.Caption
:= _lc
[I_LAB_SETS_MUSIC
];
2286 GBStats
.Caption
:= _lc
[I_CTRL_SETS_STATS
];
2287 LabelTexs
.Caption
:= _lc
[I_LAB_SETS_TEXTURES
];
2288 LabelPanels
.Caption
:= _lc
[I_LAB_SETS_PANELS
];
2289 LabelItems
.Caption
:= _lc
[I_LAB_SETS_ITEMS
];
2290 LabelMonsters
.Caption
:= _lc
[I_LAB_SETS_MONSTERS
];
2291 LabelAreas
.Caption
:= _lc
[I_LAB_SETS_AREAS
];
2292 LabelTriggers
.Caption
:= _lc
[I_LAB_SETS_TRIGGERS
];
2294 GBSizes
.Caption
:= _lc
[I_CTRL_SETS_SIZES
];
2295 LabelWidth
.Caption
:= _lc
[I_LAB_SETS_WIDTH
];
2296 LabelHeight
.Caption
:= _lc
[I_LAB_SETS_HEIGHT
];
2297 LabelCurSize
.Caption
:= _lc
[I_LAB_SETS_SIZES
];
2298 LabelMapMove
.Caption
:= _lc
[I_LAB_SETS_MAPMOVE
];
2299 cbSnapping
.Caption
:= _lc
[I_LAB_SETS_SNAPPING
];
2301 bOK
.Caption
:= _lc
[I_BTN_OK
];
2302 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2305 // Форма "Настройки теста карты":
2308 Caption
:= _lc
[I_CAP_LAUNCH
];
2309 bOK
.Caption
:= _lc
[I_BTN_OK
];
2310 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2312 rbDM
.Caption
:= _lc
[I_CTRL_LAUNCH_DM
];
2313 rbTDM
.Caption
:= _lc
[I_CTRL_LAUNCH_TDM
];
2314 rbCTF
.Caption
:= _lc
[I_CTRL_LAUNCH_CTF
];
2315 rbCOOP
.Caption
:= _lc
[I_CTRL_LAUNCH_COOP
];
2317 cbTwoPlayers
.Caption
:= _lc
[I_CTRL_LAUNCH_2P
];
2318 cbTeamDamage
.Caption
:= _lc
[I_CTRL_LAUNCH_FF
];
2319 cbAllowExit
.Caption
:= _lc
[I_CTRL_LAUNCH_EXIT
];
2320 cbWeaponStay
.Caption
:= _lc
[I_CTRL_LAUNCH_WEAPONS
];
2321 cbMonstersDM
.Caption
:= _lc
[I_CTRL_LAUNCH_MONSTERS
];
2322 cbMapOnce
.Caption
:= _lc
[I_CTRL_LAUNCH_CLOSE
];
2323 LabelTime
.Caption
:= _lc
[I_LAB_LAUNCH_TIME
];
2324 LabelSecs
.Caption
:= _lc
[I_LAB_LAUNCH_SECS
];
2325 LabelScore
.Caption
:= _lc
[I_LAB_LAUNCH_SCORE
];
2327 LabelPath
.Caption
:= _lc
[I_LAB_LAUNCH_PATH
];
2328 FindD2dDialog
.Title
:= _lc
[I_CTRL_LAUNCH_OPEN
];
2330 LabelArgs
.Caption
:= _lc
[I_LAB_LAUNCH_ARGS
];
2333 // Форма "Настройки редактора":
2336 Caption
:= _lc
[I_CAP_ES
];
2337 bOK
.Caption
:= _lc
[I_BTN_OK
];
2338 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2340 cbShowDots
.Caption
:= _lc
[I_CTRL_ES_GRID
];
2341 cbShowTexture
.Caption
:= _lc
[I_CTRL_ES_TEXTURE
];
2342 cbShowSize
.Caption
:= _lc
[I_CTRL_ES_PANEL_SIZE
];
2343 cbCheckerboard
.Caption
:= _lc
[I_CTRL_ES_CHECKERBOARD
];
2344 cbCompress
.Caption
:= _lc
[I_LAB_ES_COMPRESS
];
2345 cbBackup
.Caption
:= _lc
[I_LAB_ES_BACKUP
];
2346 LabelGrid
.Caption
:= _lc
[I_LAB_ES_GRID
];
2347 LabelGridCol
.Caption
:= _lc
[I_LAB_ES_GRID_COLOR
];
2348 LabelGridSize
.Caption
:= _lc
[I_LAB_ES_GRID_SIZE
];
2349 LabelBack
.Caption
:= _lc
[I_LAB_ES_BACK
];
2350 LabelPreview
.Caption
:= _lc
[I_LAB_ES_PREVIEW
];
2351 LabelMinimap
.Caption
:= _lc
[I_LAB_ES_MINIMAP
];
2352 LabelRecent
.Caption
:= _lc
[I_LAB_ES_RECENT
];
2353 LabelLanguage
.Caption
:= _lc
[I_LAB_ES_LANGUAGE
];
2356 // Форма "Упаковать карту":
2359 Caption
:= _lc
[I_CAP_PACK
];
2360 bPack
.Caption
:= _lc
[I_BTN_PACK
];
2361 LabelSaveTo
.Caption
:= _lc
[I_LAB_PACK_SAVE_TO
];
2362 LabelMapName
.Caption
:= _lc
[I_LAB_PACK_MAP_NAME
];
2364 cbTextrures
.Caption
:= _lc
[I_CTRL_PACK_TEXTURES
];
2365 LabelTextures
.Caption
:= _lc
[I_LAB_PACK_TEXTURES
];
2366 cbSky
.Caption
:= _lc
[I_CTRL_PACK_SKY
];
2367 LabelSky
.Caption
:= _lc
[I_LAB_PACK_SKY
];
2368 cbMusic
.Caption
:= _lc
[I_CTRL_PACK_MUSIC
];
2369 LabelMusic
.Caption
:= _lc
[I_LAB_PACK_MUSIC
];
2370 cbAdd
.Caption
:= _lc
[I_CTRL_PACK_ADD
];
2371 cbNonStandart
.Caption
:= _lc
[I_CTRL_PACK_NON_STD
];
2374 // Форма "Сохранить карту":
2377 Caption
:= _lc
[I_CAP_SAVE
];
2378 bOK
.Caption
:= _lc
[I_BTN_OK
];
2379 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2382 // Форма "Сохранить мини-карту":
2383 with SaveMiniMapForm
do
2385 Caption
:= _lc
[I_CAP_MINI
];
2386 LabelScale
.Caption
:= _lc
[I_LAB_MINI_SCALE
];
2387 bSave
.Caption
:= _lc
[I_BTN_SAVE
];
2388 bClose
.Caption
:= _lc
[I_BTN_CLOSE
];
2391 // Форма "Выбор карты":
2392 with SelectMapForm
do
2394 Caption
:= _lc
[I_CAP_SELECT
];
2395 bOK
.Caption
:= _lc
[I_BTN_OK
];
2396 bCancel
.Caption
:= _lc
[I_BTN_CANCEL
];
2399 // Заголовок приложения:
2400 Application
.Title
:= _lc
[I_EDITOR_TITLE
];
2403 procedure g_Language_Load(fileName
: String);
2412 // Значения по-умолчанию:
2413 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
2414 _lc
[i
] := g_lang_default
[i
][LANGUAGE_ENGLISH_N
];
2416 if FileExists(fileName
) then
2418 AssignFile(F
, fileName
);
2429 // Строка - ключ перевода:
2432 (Pos(']', key
) > 2) then
2434 key
:= UpperCase(Copy(key
, 2, Pos(']', key
)-2));
2436 // Пропускаем пустые строки до строки - перевода:
2438 while (not EoF(F
)) and (value
= '') do
2441 value
:= Trim(value
);
2444 // Есть строка - перевод:
2447 // Ищем индекс ключа перевода:
2449 i
:= TStrings_Locale(k
);
2451 // От текущего к первому:
2452 while i
> Low(TStrings_Locale
) do
2454 if g_lang_default
[i
][1] = key
then
2467 i
:= Low(TStrings_Locale
);
2469 if (g_lang_default
[i
][1] = key
) then
2476 // От следующего за текущим до последнего:
2479 i
:= TStrings_Locale(k
);
2481 while i
< High(TStrings_Locale
) do
2485 if g_lang_default
[i
][1] = key
then
2501 e_WriteLog('Language file "'+fileName
+'" not found!', MSG_WARNING
);
2505 RemoveSelectFromObjects();
2508 procedure g_Language_Set(lang
: String);
2514 if lang
= LANGUAGE_ENGLISH
then
2515 n
:= LANGUAGE_ENGLISH_N
2517 n
:= LANGUAGE_RUSSIAN_N
;
2519 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do
2521 _lc
[i
] := g_lang_default
[i
][n
];
2522 // have to cache a CP1251 version for GL text
2523 _glc
[i
] := utf8to1251(g_lang_default
[i
][n
]);
2528 RemoveSelectFromObjects();
2531 procedure g_Language_Dump(fileName
: String);
2537 AssignFile(F
, fileName
);
2540 for i
:= Low(TStrings_Locale
) to High(TStrings_Locale
) do