3 {$INCLUDE ../shared/a_modes.inc}
10 MsgNotAccessible
= 'N/A';
12 MsgArrayBoolFalse
= 'No';
13 MsgArrayBoolTrue
= 'Yes';
15 MsgArrayDirLeft
= 'Left';
16 MsgArrayDirRight
= 'Right';
17 MsgArrayDirSame
= 'Don''t change';
18 MsgArrayDirReversed
= 'Reversed';
20 MsgArrayDirbtnLeft
= 'Left';
21 MsgArrayDirbtnRight
= 'Right';
22 MsgArrayDirbtnUp
= 'Up';
23 MsgArrayDirbtnDown
= 'Down';
25 MsgArrayPanelWall
= 'Wall';
26 MsgArrayPanelBack
= 'Background';
27 MsgArrayPanelFront
= 'Foreground';
28 MsgArrayPanelDoorOpen
= 'Open Door';
29 MsgArrayPanelDoorClose
= 'Closed Door';
30 MsgArrayPanelStair
= 'Step';
31 MsgArrayPanelWater
= 'Water';
32 MsgArrayPanelAcid1
= 'Acid 1';
33 MsgArrayPanelAcid2
= 'Acid 2';
34 MsgArrayPanelLiftUp
= 'Stream Up';
35 MsgArrayPanelLiftDown
= 'Stream Down';
36 MsgArrayPanelLiftLeft
= 'Stream Left';
37 MsgArrayPanelLiftRight
= 'Stream Right';
38 MsgArrayPanelBlockmon
= 'Monster Boundary';
40 MsgArrayFxNone
= 'None';
41 MsgArrayFxTeleport
= 'Teleport';
42 MsgArrayFxRespawn
= 'Respawn';
43 MsgArrayFxFire
= 'Arch-Vile Fire';
45 MsgArrayItemMedkit
= 'Stimpack';
46 MsgArrayItemLargeMedkit
= 'Medikit';
47 MsgArrayItemBlackMedkit
= 'Berserk Pack';
48 MsgArrayItemGreenArmor
= 'Green Armor';
49 MsgArrayItemBlueArmor
= 'Blue Armor';
50 MsgArrayItemBlueSphere
= 'Soulsphere';
51 MsgArrayItemMegasphere
= 'Megasphere';
52 MsgArrayItemHazSuit
= 'Envirosuit';
53 MsgArrayItemOxygen
= 'Scuba';
54 MsgArrayItemInvulnerability
= 'Invulnerability';
55 MsgArrayItemChainsaw
= 'Chainsaw';
56 MsgArrayItemShotgun
= 'Shotgun';
57 MsgArrayItemDbShotgun
= 'Super Shotgun';
58 MsgArrayItemChaingun
= 'Chaingun';
59 MsgArrayItemRocketLauncher
= 'Rocket Launcher';
60 MsgArrayItemPlasmaRifle
= 'Plasma Rifle';
61 MsgArrayItemBfg
= 'BFG9000';
62 MsgArrayItemSuperMinigun
= 'Super Chaingun';
63 MsgArrayItemFlamethrower
= 'Flamethrower';
64 MsgArrayItemClip
= 'Clip';
65 MsgArrayItemAmmoBox
= 'Box of Bullets';
66 MsgArrayItem4Shells
= '4 Shells';
67 MsgArrayItem25Shells
= 'Box of Shells';
68 MsgArrayItem1Rocket
= 'Rocket';
69 MsgArrayItemRocketBox
= 'Box of Rockets';
70 MsgArrayItemCell
= 'Energy Cell';
71 MsgArrayItemLargeCell
= 'Energy Cell Pack';
72 MsgArrayItemFuelcan
= 'Fuel Canister';
73 MsgArrayItemBackpack
= 'Backpack';
74 MsgArrayItemKeyRed
= 'Red Key';
75 MsgArrayItemKeyGreen
= 'Green Key';
76 MsgArrayItemKeyBlue
= 'Blue Key';
77 MsgArrayItemBottle
= 'Health Globe';
78 MsgArrayItemHelmet
= 'Armor Shard';
79 MsgArrayItemJetpack
= 'Jetpack';
80 MsgArrayItemInvis
= 'Invisibility';
82 MsgArrayShotPistol
= 'Pistol shot';
83 MsgArrayShotBullet
= 'Chaingun shot';
84 MsgArrayShotShotgun
= 'Shotgun shot';
85 MsgArrayShotSsg
= 'Super Shotgun shot';
86 MsgArrayShotImp
= 'Imp fireball';
87 MsgArrayShotPlasma
= 'Blue plasma';
88 MsgArrayShotSpider
= 'Arachnotron plasma';
89 MsgArrayShotCaco
= 'Cacodemon fireball';
90 MsgArrayShotBaron
= 'Hell Baron projectile';
91 MsgArrayShotMancub
= 'Mancubus gunshot';
92 MsgArrayShotRev
= 'Revenant projectile';
93 MsgArrayShotRocket
= 'Rocket';
94 MsgArrayShotBfg
= 'BFG ball';
95 MsgArrayShotExpl
= 'Explosion';
96 MsgArrayShotBfgexpl
= 'BFG explosion';
97 MsgArrayShotFlame
= 'Flame';
99 MsgArrayMonDemon
= 'Pinky';
100 MsgArrayMonImp
= 'Imp';
101 MsgArrayMonZombie
= 'Zombie';
102 MsgArrayMonSergeant
= 'Sergeant';
103 MsgArrayMonCyber
= 'Cyberdemon';
104 MsgArrayMonCgun
= 'Commando';
105 MsgArrayMonHellBaron
= 'Hell Baron';
106 MsgArrayMonHellKnight
= 'Hell Knight';
107 MsgArrayMonCacodemon
= 'Cacodemon';
108 MsgArrayMonLostSoul
= 'Lost Soul';
109 MsgArrayMonPainElemental
= 'Pain Elemental';
110 MsgArrayMonMastermind
= 'Spider Mastermind';
111 MsgArrayMonArachnatron
= 'Arachnotron';
112 MsgArrayMonMancubus
= 'Mancubus';
113 MsgArrayMonRevenant
= 'Revenant';
114 MsgArrayMonArchvile
= 'Arch-Vile';
115 MsgArrayMonFish
= 'Piranha';
116 MsgArrayMonBarrel
= 'Barrel';
117 MsgArrayMonRobot
= 'Robot';
118 MsgArrayMonPrikolist
= 'Prikolist';
120 MsgArrayAreaPlayerOne
= 'Player 1';
121 MsgArrayAreaPlayerTwo
= 'Player 2';
122 MsgArrayAreaDm
= 'DM Spawn Point';
123 MsgArrayAreaFlagRed
= 'Red Flag';
124 MsgArrayAreaFlagBlue
= 'Blue Flag';
125 MsgArrayAreaFlagDom
= 'Domination Flag';
126 MsgArrayAreaTeamRed
= 'Red Team';
127 MsgArrayAreaTeamBlue
= 'Blue Team';
129 MsgArrayTrExit
= 'Exit';
130 MsgArrayTrTeleport
= 'Teleport';
131 MsgArrayTrDoorOpen
= 'Open Door';
132 MsgArrayTrDoorClose
= 'Close Door';
133 MsgArrayTrDoorSwitch
= 'Door';
134 MsgArrayTrDoor5Sec
= 'Door (5 sec)';
135 MsgArrayTrTrapClose
= 'Close Trap';
136 MsgArrayTrTrap
= 'Trap';
137 MsgArrayTrExtend
= 'Extender';
138 MsgArrayTrSecret
= 'Secret';
139 MsgArrayTrLiftUp
= 'Turn stream up/left';
140 MsgArrayTrLiftDown
= 'Turn stream down/right';
141 MsgArrayTrLiftSwitch
= 'Revert stream';
142 MsgArrayTrTexture
= 'Change Texture';
143 MsgArrayTrOn
= 'Enable Trigger';
144 MsgArrayTrOff
= 'Disable Trigger';
145 MsgArrayTrSwitch
= 'Trigger Toggle';
146 MsgArrayTrSound
= 'Play Sound';
147 MsgArrayTrSpawnMonster
= 'Spawn Monster';
148 MsgArrayTrSpawnItem
= 'Spawn Item';
149 MsgArrayTrMusic
= 'Play Music';
150 MsgArrayTrPush
= 'Push';
151 MsgArrayTrScore
= 'Team Score';
152 MsgArrayTrMessage
= 'Message';
153 MsgArrayTrDamage
= 'Damage';
154 MsgArrayTrHealth
= 'Healer';
155 MsgArrayTrShot
= 'Turret';
156 MsgArrayTrEffect
= 'Effect';
161 MsgPropWidth
= 'Width';
162 MsgPropHeight
= 'Height';
163 MsgPropPanelType
= 'Panel Type';
164 MsgPropPanelTex
= 'Texture';
165 MsgPropPanelAlpha
= 'Transparency';
166 MsgPropPanelBlend
= 'Blending';
167 MsgPropDmOnly
= 'DM Only';
168 MsgPropItemFalls
= 'Falls';
169 MsgPropDirection
= 'Direction';
171 MsgPropTrType
= 'Trigger Type';
172 MsgPropTrEnabled
= 'Enabled';
173 MsgPropTrTexturePanel
= 'Textured Panel';
174 MsgPropTrActivation
= 'Activation Type';
175 MsgPropTrKeys
= 'Keys';
176 MsgPropTrD2d
= 'D2D-like';
177 MsgPropTrSilent
= 'Silent';
178 MsgPropTrCount
= 'Count';
179 MsgPropTrInterval
= 'Interval (in ticks)';
180 MsgPropTrHealth
= 'Health';
181 MsgPropTrNextMap
= 'Next Map';
182 MsgPropTrTeleportTo
= 'Teleport to';
183 MsgPropTrTeleportSilent
= 'Silent';
184 MsgPropTrTeleportDir
= 'New Direction';
185 MsgPropTrDoorPanel
= 'Door Panel';
186 MsgPropTrTrapPanel
= 'Trap Panel';
187 MsgPropTrExArea
= 'Action Area';
188 MsgPropTrExDelay
= 'Delay';
189 MsgPropTrExCount
= 'Count';
190 MsgPropTrExMonster
= 'Monster ID';
191 MsgPropTrExRandom
= 'Random';
192 MsgPropTrLiftPanel
= 'Stream Panel';
193 MsgPropTrTextureOnce
= 'Once';
194 MsgPropTrTextureAnimOnce
= 'Animate Once';
195 MsgPropTrSoundName
= 'Sound (snd)';
196 MsgPropTrSoundVolume
= 'Volume';
197 MsgPropTrSoundPan
= 'Pan';
198 MsgPropTrSoundCount
= 'Loops';
199 MsgPropTrSoundLocal
= 'Local';
200 MsgPropTrSoundSwitch
= 'Switch';
201 MsgPropTrFxType
= 'Effect';
202 MsgPropTrSpawnTo
= 'Spawn at';
203 MsgPropTrSpawnMax
= 'Maximum';
204 MsgPropTrSpawnDelay
= 'Autospawn (in ticks)';
205 MsgPropTrMonsterType
= 'Monster';
206 MsgPropTrMonsterActive
= 'Active';
207 MsgPropTrMonsterBehaviour
= 'Behaviour';
208 MsgPropTrMonsterBehaviour0
= 'Normal';
209 MsgPropTrMonsterBehaviour1
= 'Killer';
210 MsgPropTrMonsterBehaviour2
= 'Maniac';
211 MsgPropTrMonsterBehaviour3
= 'Insane';
212 MsgPropTrMonsterBehaviour4
= 'Cannibal';
213 MsgPropTrMonsterBehaviour5
= 'Good';
214 MsgPropTrItemType
= 'Item';
215 MsgPropTrMusicName
= 'Music';
216 MsgPropTrMusicAct
= 'Action (m)';
217 MsgPropTrMusicOn
= 'Play';
218 MsgPropTrMusicOff
= 'Pause';
219 MsgPropTrPushAngle
= 'Angle';
220 MsgPropTrPushForce
= 'Force';
221 MsgPropTrPushReset
= 'Reset velocity';
222 MsgPropTrScoreAct
= 'Action (s)';
223 MsgPropTrScoreAct0
= 'Add points';
224 MsgPropTrScoreAct1
= 'Subtract points';
225 MsgPropTrScoreAct2
= 'Team Wins';
226 MsgPropTrScoreAct3
= 'Team Loses';
227 MsgPropTrScoreTeam
= 'Team';
228 MsgPropTrScoreTeam0
= 'My';
229 MsgPropTrScoreTeam1
= 'Enemy';
230 MsgPropTrScoreTeam2
= 'Red';
231 MsgPropTrScoreTeam3
= 'Blue';
232 MsgPropTrScoreCon
= 'Console message';
233 MsgPropTrScoreMsg
= 'Game message';
234 MsgPropTrDamageValue
= 'Damage';
235 MsgPropTrDamageKind
= 'Damage type';
236 MsgPropTrDamageKind0
= 'HIT_SOME';
237 MsgPropTrDamageKind3
= 'HIT_TRAP';
238 MsgPropTrDamageKind4
= 'HIT_FALL';
239 MsgPropTrDamageKind5
= 'HIT_WATER';
240 MsgPropTrDamageKind6
= 'HIT_ACID';
241 MsgPropTrDamageKind7
= 'HIT_ELECTRO';
242 MsgPropTrDamageKind8
= 'HIT_FLAME';
243 MsgPropTrHealthMax
= 'To maximum';
244 MsgPropTrShotType
= 'Projectile';
245 MsgPropTrShotSound
= 'Shot sound';
246 MsgPropTrShotAngle
= 'Angle';
247 MsgPropTrShotAcc
= 'Spread';
248 MsgPropTrShotTo
= 'Auto targeting';
249 MsgPropTrShotTo0
= 'None';
250 MsgPropTrShotTo1
= 'Monsters';
251 MsgPropTrShotTo2
= 'Players';
252 MsgPropTrShotTo3
= 'Red team';
253 MsgPropTrShotTo4
= 'Blue team';
254 MsgPropTrShotTo5
= 'Monsters, players';
255 MsgPropTrShotTo6
= 'Players, monsters';
256 MsgPropTrShotAim
= 'Auto-aiming mode';
257 MsgPropTrShotAim0
= 'Trigger area';
258 MsgPropTrShotAim1
= 'Entire map';
259 MsgPropTrShotAim2
= 'Trace trigger area';
260 MsgPropTrShotAim3
= 'Trace entire map';
261 MsgPropTrShotAmmo
= 'Ammo limit';
262 MsgPropTrShotReload
= 'Reload interval (in ticks)';
263 MsgPropTrShotSight
= 'Sight interval (in ticks)';
264 MsgPropTrShotPanel
= 'Indicator panel';
265 MsgPropTrMessageKind
= 'Message kind';
266 MsgPropTrMessageKind0
= 'Console message';
267 MsgPropTrMessageKind1
= 'Event message';
268 MsgPropTrMessageTo
= 'Send to';
269 MsgPropTrMessageTo0
= 'Me';
270 MsgPropTrMessageTo1
= 'My team';
271 MsgPropTrMessageTo2
= 'Enemy team';
272 MsgPropTrMessageTo3
= 'Red team';
273 MsgPropTrMessageTo4
= 'Blue team';
274 MsgPropTrMessageTo5
= 'Everyone';
275 MsgPropTrMessageText
= 'Message text';
276 MsgPropTrMessageTime
= 'Time (in ticks)';
277 MsgPropTrEffectType
= 'Effect type';
278 MsgPropTrEffectSubtype
= 'Effect subtype';
279 MsgPropTrEffectColor
= 'Effect color';
280 MsgPropTrEffectCenter
= 'Trigger center';
281 MsgPropTrEffectVelx
= 'Horizontal speed';
282 MsgPropTrEffectVely
= 'Vertical speed';
283 MsgPropTrEffectSpl
= 'Speed variance left';
284 MsgPropTrEffectSpr
= 'Speed variance right';
285 MsgPropTrEffectSpu
= 'Speed variance up';
286 MsgPropTrEffectSpd
= 'Speed variance down';
287 MsgPropTrEffectParticle
= 'Particle generator';
288 MsgPropTrEffectAnimation
= 'Animation';
289 MsgPropTrEffectSliquid
= 'Water splash';
290 MsgPropTrEffectLliquid
= 'Light colored splash';
291 MsgPropTrEffectDliquid
= 'Dark colored splash';
292 MsgPropTrEffectBlood
= 'Blood';
293 MsgPropTrEffectSpark
= 'Sparks';
294 MsgPropTrEffectBubble
= 'Bubbles';
296 MsgMsgError
= 'Error';
297 MsgMsgWrongTexwidth
= 'Panel Width must be a multiple of Texture Width (%d)';
298 MsgMsgWrongTexheight
= 'Panel Height must be a multiple of Texture Height (%d)';
299 MsgMsgWrongAlpha
= 'Transparency must be in [0..255] interval';
300 MsgMsgWrongSize
= 'Width and Height must be greater than 0';
301 MsgMsgWrongXy
= 'X or Y coordinate hasn''t been set';
302 MsgMsgTextureAlready
= 'Texture "%s" already exists';
303 MsgMsgResName64
= 'Resource "%s" name must not be longer than 64 chars';
304 MsgMsgChooseItem
= 'Select Item';
305 MsgMsgChooseMonster
= 'Select Monster';
306 MsgMsgChooseArea
= 'Select Area';
307 MsgMsgChooseTexture
= 'Select Texture';
308 MsgMsgChooseRes
= 'Resource hasn''t been selected';
310 MsgMsgExitPromt
= 'Leaving so soon?';
311 MsgMsgDelTexture
= 'Delete the texture';
312 MsgMsgDelTexturePromt
= 'Delete the texture "%s" ?';
313 MsgMsgDelTextureCant
= 'Can''t delete texture in use. Replace it on all panels with this texture.';
314 MsgMsgDelRecent
= 'File does not longer exist';
315 MsgMsgDelRecentPromt
= 'Remove entry from recent list?';
316 MsgMsgClearMap
= 'New map';
317 MsgMsgClearMapPromt
= 'Clear the entire map?';
318 MsgMsgDeleteMap
= 'Delete the map';
319 MsgMsgDeleteMapPromt
= 'Delete the map "%s" from "%s" ?';
320 MsgMsgMapDeleted
= 'Map is deleted';
321 MsgMsgMapDeletedPromt
= 'Map "%s" is deleted';
322 MsgMsgReopenMapPromt
= 'Reopen this map?';
323 MsgMsgExecError
= 'Game start error';
324 MsgMsgSoundError
= 'Can''t play sound';
325 MsgMsgWadError
= 'Can''t open WAD: %s';
326 MsgMsgResError
= 'Can''t read resource: %s:%s\%s';
327 MsgMsgPacked
= 'Map "%s" with resources saved to "%s"';
328 MsgMsgMapExists
= 'Map "%s" already exists. Overwrite?';
329 MsgMsgSaveMap
= 'Save the map';
331 MsgHintTeleport
= 'Choose destination of Teleport';
332 MsgHintSpawn
= 'Choose Spawn point';
333 MsgHintPanelDoor
= 'Choose Door';
334 MsgHintPanelTexture
= 'Choose textured Panel';
335 MsgHintPanelShot
= 'Choose textured shot indicator Panel';
336 MsgHintPanelLift
= 'Choose Stream Panel';
337 MsgHintMonster
= 'Choose Monster';
338 MsgHintExtArea
= 'Specify action Area';
339 MsgHintWidth
= 'Width: %d';
340 MsgHintHeight
= 'Height: %d';
342 MsgMenuFile
= 'File';
343 MsgMenuFileNew
= 'New';
344 MsgMenuFileOpen
= 'Open...';
345 MsgMenuFileSave
= 'Save';
346 MsgMenuFileSaveAs
= 'Save As...';
347 MsgMenuFileOpenWad
= 'Select Map...';
348 MsgMenuFileReopen
= 'Revert to Saved';
349 MsgMenuFileSaveMini
= 'Save Minimap...';
350 MsgMenuFileDelete
= 'Delete from WAD...';
351 MsgMenuFilePackMap
= 'Pack to WAD...';
352 MsgMenuFileExit
= 'Exit';
354 MsgMenuEdit
= 'Edit';
355 MsgMenuEditUndo
= 'Undo';
356 MsgMenuEditCopy
= 'Copy';
357 MsgMenuEditCut
= 'Cut';
358 MsgMenuEditPaste
= 'Paste';
359 MsgMenuEditSelectAll
= 'Select All';
360 MsgMenuEditToFore
= 'Bring to Front';
361 MsgMenuEditToBack
= 'Send to Back';
363 MsgMenuTools
= 'Tools';
364 MsgMenuToolsSnapGrid
= 'Snap to Grid';
365 MsgMenuToolsMinimap
= 'Show Minimap';
366 MsgMenuToolsStepGrid
= 'Switch Grid Granularity';
367 MsgMenuToolsShowEdges
= 'Show Map Bounds';
368 MsgMenuToolsLayers
= 'Layers';
370 MsgMenuServ
= 'Service';
371 MsgMenuServTest
= 'Analyse Map...';
372 MsgMenuServOpt
= 'Optimize Map...';
373 MsgMenuServPreview
= 'Preview Mode';
374 MsgMenuServLaunch
= 'Run Test';
376 MsgMenuSets
= 'Settings';
377 MsgMenuSetsMap
= 'Map Properties...';
378 MsgMenuSetsEditor
= 'Preferences...';
379 MsgMenuSetsLaunch
= 'In-game test settings';
381 MsgMenuHelp
= 'Help';
382 MsgMenuHelpAbout
= 'About';
384 MsgMenuLayerBack
= '1. Background';
385 MsgMenuLayerWall
= '2. Walls';
386 MsgMenuLayerFore
= '3. Foreground';
387 MsgMenuLayerStair
= '4. Steps';
388 MsgMenuLayerWater
= '5. Liquids';
389 MsgMenuLayerItem
= '6. Items';
390 MsgMenuLayerMonster
= '7. Monsters';
391 MsgMenuLayerArea
= '8. Areas';
392 MsgMenuLayerTrigger
= '9. Triggers';
394 MsgMenuTbNew
= 'New Map';
395 MsgMenuTbOpen
= 'Open Map';
396 MsgMenuTbSave
= 'Save Map';
397 MsgMenuTbOpenWad
= 'Open another Map from same WAD';
398 MsgMenuTbMinimap
= 'Show Mini-map';
399 MsgMenuTbLayers
= 'Show/Hide Objects';
400 MsgMenuTbGrid
= 'Grid On/Off';
401 MsgMenuTbGridStep
= 'Switch Grid step';
402 MsgMenuTbLaunch
= 'Run Test';
404 MsgMenuLaunchSets
= 'Settings...';
406 MsgCapFxType
= 'Select Effect type';
407 MsgCapMonsterType
= 'Select Monster type';
408 MsgCapItemType
= 'Select Item type';
409 MsgCapAbout
= 'About Map Editor';
410 MsgCapAct
= 'Activation type';
411 MsgCapAddSky
= 'Select Sky Texture';
412 MsgCapAddSound
= 'Select Sound/Music';
413 MsgCapAddTexture
= 'Select Texture';
415 MsgCapTest
= 'Analyse Map';
416 MsgCapOpt
= 'Optimize Map';
417 MsgCapSets
= 'Map Properties';
418 MsgCapLaunch
= 'In-game test Settings';
419 MsgCapEs
= 'Editor Preferences';
420 MsgCapPack
= 'Pack Map';
421 MsgCapSave
= 'Save Map';
422 MsgCapMini
= 'Save Minimap';
423 MsgCapSelect
= 'Select Map';
424 MsgCapOpen
= 'Open Map';
425 MsgCapRemove
= 'Remove Map';
426 MsgCapTexture
= 'Texture: %dx%d';
427 MsgCapAnimation
= 'Animation: %dx%d, %d frames';
428 MsgCapStatSelected
= 'Selected objects: %d';
430 MsgCtrlPropKey
= 'Property';
431 MsgCtrlPropValue
= 'Value';
433 MsgCtrlPanels
= 'Panels';
434 MsgCtrlItems
= 'Items';
435 MsgCtrlMonsters
= 'Monsters';
436 MsgCtrlAreas
= 'Areas';
437 MsgCtrlTriggers
= 'Triggers';
439 MsgCtrlListTexture
= 'Texture List';
440 MsgCtrlListItem
= 'Item List';
441 MsgCtrlListMonster
= 'Monster List';
442 MsgCtrlListArea
= 'Area List';
443 MsgCtrlListTrigger
= 'Trigger List';
444 MsgCtrlListActive
= 'Activation Type';
445 MsgCtrlListKeys
= 'Keys Needed';
447 MsgCtrlPreview
= 'Texture Preview';
448 MsgCtrlItemDm
= 'DM Only';
449 MsgCtrlItemFalls
= 'Falls';
450 MsgCtrlLeft
= 'Left';
451 MsgCtrlRight
= 'Right';
453 MsgCtrlActPlayerClose
= 'Player Collides';
454 MsgCtrlActMonsterClose
= 'Monster Collides';
455 MsgCtrlActPlayerPress
= 'Player Pressed';
456 MsgCtrlActMonsterPress
= 'Monster Pressed';
457 MsgCtrlActShot
= 'Shot';
458 MsgCtrlActNoMonster
= 'No Monsters';
460 MsgCtrlKeysRed
= 'Red Key';
461 MsgCtrlKeysGreen
= 'Green Key';
462 MsgCtrlKeysBlue
= 'Blue Key';
463 MsgCtrlKeysTeamRed
= 'Red Team';
464 MsgCtrlKeysTeamBlue
= 'Blue Team';
466 MsgCtrlOptGb
= 'Optimization';
467 MsgCtrlOptTexture
= 'Texture Optimization';
468 MsgCtrlOptPanel
= 'Panel Optimization';
469 MsgCtrlOptWall
= 'Walls';
470 MsgCtrlOptFore
= 'Foreground';
471 MsgCtrlOptBack
= 'Background';
472 MsgCtrlOptStair
= 'Steps';
473 MsgCtrlOptWater
= 'Water';
474 MsgCtrlOptAcid1
= 'Acid 1';
475 MsgCtrlOptAcid2
= 'Acid 2';
476 MsgCtrlOptLift
= 'Streams';
477 MsgCtrlOptBlockmon
= 'Monster Boundary';
478 MsgCtrlOptDescTexture
= 'Deletes unused textures from texture list.';
479 MsgCtrlOptDescPanel
= 'Merges nearby panels of same type. Increases game performance.';
480 MsgCtrlSetsStats
= 'Statistics:';
481 MsgCtrlSetsSizes
= 'Map Size:';
483 MsgCtrlLaunchDm
= 'Deathmatch';
484 MsgCtrlLaunchTdm
= 'Team Deathmatch';
485 MsgCtrlLaunchCtf
= 'Capture the Flag';
486 MsgCtrlLaunchCoop
= 'Cooperative';
487 MsgCtrlLaunch2p
= 'Two Players';
488 MsgCtrlLaunchFf
= 'Friendly Fire';
489 MsgCtrlLaunchExit
= 'Enable Exit';
490 MsgCtrlLaunchWeapons
= 'Weapons Stay';
491 MsgCtrlLaunchMonsters
= 'Enable Monsters';
492 MsgCtrlLaunchClose
= 'Close the game after exiting the map';
493 MsgCtrlLaunchOpen
= 'Select Doom 2D: Forever executable';
495 MsgCtrlEsGrid
= 'Show Grid';
496 MsgCtrlEsTexture
= 'Show Panel Texture';
497 MsgCtrlEsPanelSize
= 'Show Panel Size';
498 MsgCtrlEsCheckerboard
= 'Use Checkerboard';
500 MsgCtrlPackTextures
= 'Textures';
501 MsgCtrlPackSky
= 'Sky';
502 MsgCtrlPackMusic
= 'Music';
503 MsgCtrlPackAdd
= 'Don''t overwrite WAD';
504 MsgCtrlPackNonStd
= 'Non-standard Resources only';
506 MsgLabTexWidth
= 'Texture Width:';
507 MsgLabTexHeight
= 'Texture Height:';
509 MsgLabSpectrum
= 'Show the Spectrum';
511 MsgLabAboutVer
= 'Version 2.1.5';
512 MsgLabAboutAuthor
= 'Author: rs.falcon';
513 MsgLabAboutAuthor2
= 'Additions: Pss';
514 MsgLabAboutMail
= 'rmw.falcon@mail.ru';
515 MsgLabAboutMail2
= 'pssxx@mail.ru';
516 MsgLabAboutSite
= 'Doom 2D: Forever Web-site';
517 MsgLabAboutHttp
= 'www.doom2d.org';
519 MsgLabAddWads
= 'WAD Files:';
520 MsgLabAddSections
= 'WAD Sections:';
522 MsgLabSetsName
= 'Map Name:';
523 MsgLabSetsDesc
= 'Map Description';
524 MsgLabSetsAuthor
= 'Author:';
525 MsgLabSetsBack
= 'Background/Sky:';
526 MsgLabSetsMusic
= 'Music:';
527 MsgLabSetsTextures
= 'Textures:';
528 MsgLabSetsPanels
= 'Panels:';
529 MsgLabSetsItems
= 'Items:';
530 MsgLabSetsMonsters
= 'Monsters:';
531 MsgLabSetsAreas
= 'Areas:';
532 MsgLabSetsTriggers
= 'Triggers:';
533 MsgLabSetsSizes
= 'Current:';
534 MsgLabSetsWidth
= 'Width:';
535 MsgLabSetsHeight
= 'Height:';
536 MsgLabSetsMapmove
= 'Direction to shift map objects:';
537 MsgLabSetsSnapping
= 'Preserve snapping';
539 MsgLabLaunchTime
= 'Time Limit:';
540 MsgLabLaunchSecs
= 'seconds';
541 MsgLabLaunchScore
= 'Score Limit:';
542 MsgLabLaunchPath
= 'Path to Doom2DF.exe:';
543 MsgLabLaunchArgs
= 'Launch Arguments:';
545 MsgLabEsGrid
= 'Grid Step:';
546 MsgLabEsGridColor
= 'Grid Color:';
547 MsgLabEsGridSize
= 'Grid Dot Size:';
548 MsgLabEsBack
= 'Background Color:';
549 MsgLabEsPreview
= 'Texture Preview Background Color:';
550 MsgLabEsMinimap
= 'Mini-map Scale:';
551 MsgLabEsRecent
= 'Recent Maps List Contains:';
552 MsgLabEsLanguage
= 'Language:';
553 MsgLabEsCompress
= 'Compress archive when save';
554 MsgLabEsBackup
= 'Make backup before save';
556 MsgLabPackSaveTo
= 'Save to:';
557 MsgLabPackMapName
= 'Map Resource Name:';
558 MsgLabPackTextures
= 'Texture Section:';
559 MsgLabPackSky
= 'Sky Section:';
560 MsgLabPackMusic
= 'Music Section:';
562 MsgLabMiniScale
= 'Scale:';
564 MsgBtnApplyProps
= 'Apply Properties';
566 MsgBtnCancel
= 'Cancel';
568 MsgBtnClose
= 'Close';
569 MsgBtnAddClose
= 'Add and Close';
570 MsgBtnTestAgain
= 'Check';
574 MsgBtnNoSound
= 'No sound';
575 MsgBtnTextureAdd
= 'Add texture to the list';
576 MsgBtnTextureDelete
= 'Delete texture from the list';
577 MsgBtnTextureEmpty
= 'Deselect texture';
579 MsgLoadWad
= 'Reading WAD';
580 MsgLoadMap
= 'Loading Map';
581 MsgLoadTextures
= 'Reading Textures';
582 MsgLoadPanels
= 'Reading Panels';
583 MsgLoadItems
= 'Reading Items';
584 MsgLoadMonsters
= 'Reading Monsters';
585 MsgLoadAreas
= 'Reading Areas';
586 MsgLoadTriggers
= 'Reading Triggers';
588 MsgTestAreaWall
= 'Player collides with the wall and will be stuck.';
589 MsgTestAreaWallStr
= 'Area #%d collides with Map (%d:%d)';
590 MsgTestSpawns1
= 'There are several spawn points for First Player on the map';
591 MsgTestSpawns2
= 'There are several spawn points for Second Player on the map';
592 MsgTestSpawns
= 'There are several spawn points on the map. Random one will be used.';
593 MsgTestNoDm
= 'There are no DM spawn points on the map';
594 MsgTestNoDmEx
= 'There are no DM spawn points on the map. Only "Single Player" mode available.';
595 MsgTestMonsterWall
= 'Monster collides with the wall and will be stuck.';
596 MsgTestMonsterWallStr
= 'Monster #%d collides with a map (%d:%d)';
598 MsgOptNoTextures
= 'Texture list is empty';
599 MsgOptDeletedTextures
= 'Deleted Textures:';
600 MsgOptTotalTextures
= 'Textures Total:';
601 MsgOptTexDeleted
= 'Textures Deleted:';
602 MsgOptPanelsOpt
= 'Panels Optimized:';
603 MsgOptWalls
= 'Walls Optimization...';
604 MsgOptFores
= 'Foreground Optimization...';
605 MsgOptBacks
= 'Background Optimization...';
606 MsgOptStairs
= 'Steps Optimization...';
607 MsgOptWater
= 'Water Optimization...';
608 MsgOptAcid1
= 'Acid 1 Optimization...';
609 MsgOptAcid2
= 'Acid 2 Optimization...';
610 MsgOptLifts
= 'Streams Optimization...';
611 MsgOptBlockmon
= 'Monster Boundaries Optimization...';
612 MsgOptTotalPanels
= 'Panels Total:';
613 MsgOptPanelsAfter
= 'Panels after Optimization:';
615 MsgWadSpecialMap
= '<MAP WAD-FILE>';
616 MsgWadSpecialTexs
= '<EXTRA TEXTURES>';
618 MsgFileFilterAll
= 'Doom 2D: Forever Maps (*.dfz, *.dfzip, *.zip, *.wad)|*.dfz;*.dfzip;*.zip;*.wad|Doom 2D: Forever 0.30 Maps (*.ini)|*.ini|All Files (*.*)|*.*';
619 MsgFileFilterWad
= 'Doom 2D: Forever Maps (*.dfz)|*.dfz|Doom 2D: Forever Maps (*.dfzip)|*.dfzip|Doom 2D: Forever Maps (*.zip)|*.zip|Doom 2D: Forever Maps (*.wad)|*.wad|All Files (*.*)|*.*';
621 MsgEditorTitle
= 'Doom 2D: Forever Map Editor';
624 BoolNames
: Array [False..True] of String;
625 DirNames
: Array [D_LEFT
..D_RIGHT
] of String;
626 DirNamesAdv
: Array [0..3] of String;
627 DirButtonNames
: Array [1..4] of String;
628 PANELNAMES
: Array[0..13] of String;
629 EffectNames
: Array [EFFECT_NONE
..EFFECT_FIRE
] of String;
630 ItemNames
: Array [ITEM_MEDKIT_SMALL
..ITEM_MAX
] of String;
631 ShotNames
: Array [TRIGGER_SHOT_PISTOL
..TRIGGER_SHOT_MAX
] of String;
632 MonsterNames
: Array [MONSTER_DEMON
..MONSTER_MAN
] of String;
633 AreaNames
: Array [AREA_PLAYERPOINT1
..AREA_BLUETEAMPOINT
] of String;
634 TriggerNames
: Array [TRIGGER_EXIT
..TRIGGER_MAX
] of String;
636 procedure g_Language_Set(lang
: String);
642 SysUtils
, e_log
, f_main
, f_about
, f_activationtype
,
643 f_addresource_sky
, f_addresource_sound
,
644 f_addresource_texture
, f_choosetype
, f_keys
, f_mapcheck
,
645 f_mapoptions
, f_mapoptimization
, f_options
,
646 f_packmap
, f_savemap
, f_saveminimap
, f_selectmap
, Forms
, utils
;
648 procedure SetupArrays();
654 BoolNames
[False] := MsgArrayBoolFalse
;
655 BoolNames
[True] := MsgArrayBoolTrue
;
658 DirNames
[D_LEFT
] := MsgArrayDirLeft
;
659 DirNames
[D_RIGHT
] := MsgArrayDirRight
;
661 // Смены направления:
662 DirNamesAdv
[0] := MsgArrayDirSame
;
663 DirNamesAdv
[1] := MsgArrayDirLeft
;
664 DirNamesAdv
[2] := MsgArrayDirRight
;
665 DirNamesAdv
[3] := MsgArrayDirReversed
;
667 // Направление (на кнопках):
668 DirButtonNames
[1] := MsgArrayDirbtnLeft
;
669 DirButtonNames
[2] := MsgArrayDirbtnRight
;
670 DirButtonNames
[3] := MsgArrayDirbtnUp
;
671 DirButtonNames
[4] := MsgArrayDirbtnDown
;
674 PANELNAMES
[0] := MsgArrayPanelWall
;
675 PANELNAMES
[1] := MsgArrayPanelBack
;
676 PANELNAMES
[2] := MsgArrayPanelFront
;
677 PANELNAMES
[3] := MsgArrayPanelDoorOpen
;
678 PANELNAMES
[4] := MsgArrayPanelDoorClose
;
679 PANELNAMES
[5] := MsgArrayPanelStair
;
680 PANELNAMES
[6] := MsgArrayPanelWater
;
681 PANELNAMES
[7] := MsgArrayPanelAcid1
;
682 PANELNAMES
[8] := MsgArrayPanelAcid2
;
683 PANELNAMES
[9] := MsgArrayPanelLiftUp
;
684 PANELNAMES
[10] := MsgArrayPanelLiftDown
;
685 PANELNAMES
[11] := MsgArrayPanelLiftLeft
;
686 PANELNAMES
[12] := MsgArrayPanelLiftRight
;
687 PANELNAMES
[13] := MsgArrayPanelBlockmon
;
689 // Названия эффектов:
690 EffectNames
[EFFECT_NONE
] := MsgArrayFxNone
;
691 EffectNames
[EFFECT_TELEPORT
] := MsgArrayFxTeleport
;
692 EffectNames
[EFFECT_RESPAWN
] := MsgArrayFxRespawn
;
693 EffectNames
[EFFECT_FIRE
] := MsgArrayFxFire
;
695 // Названия предметов:
696 ItemNames
[ITEM_MEDKIT_SMALL
] := MsgArrayItemMedkit
;
697 ItemNames
[ITEM_MEDKIT_LARGE
] := MsgArrayItemLargeMedkit
;
698 ItemNames
[ITEM_MEDKIT_BLACK
] := MsgArrayItemBlackMedkit
;
699 ItemNames
[ITEM_ARMOR_GREEN
] := MsgArrayItemGreenArmor
;
700 ItemNames
[ITEM_ARMOR_BLUE
] := MsgArrayItemBlueArmor
;
701 ItemNames
[ITEM_SPHERE_BLUE
] := MsgArrayItemBlueSphere
;
702 ItemNames
[ITEM_SPHERE_WHITE
] := MsgArrayItemMegasphere
;
703 ItemNames
[ITEM_SUIT
] := MsgArrayItemHazSuit
;
704 ItemNames
[ITEM_OXYGEN
] := MsgArrayItemOxygen
;
705 ItemNames
[ITEM_INVUL
] := MsgArrayItemInvulnerability
;
706 ItemNames
[ITEM_WEAPON_SAW
] := MsgArrayItemChainsaw
;
707 ItemNames
[ITEM_WEAPON_SHOTGUN1
] := MsgArrayItemShotgun
;
708 ItemNames
[ITEM_WEAPON_SHOTGUN2
] := MsgArrayItemDbShotgun
;
709 ItemNames
[ITEM_WEAPON_CHAINGUN
] := MsgArrayItemChaingun
;
710 ItemNames
[ITEM_WEAPON_ROCKETLAUNCHER
] := MsgArrayItemRocketLauncher
;
711 ItemNames
[ITEM_WEAPON_PLASMA
] := MsgArrayItemPlasmaRifle
;
712 ItemNames
[ITEM_WEAPON_BFG
] := MsgArrayItemBfg
;
713 ItemNames
[ITEM_WEAPON_SUPERPULEMET
] := MsgArrayItemSuperMinigun
;
714 ItemNames
[ITEM_WEAPON_FLAMETHROWER
] := MsgArrayItemFlamethrower
;
715 ItemNames
[ITEM_AMMO_BULLETS
] := MsgArrayItemClip
;
716 ItemNames
[ITEM_AMMO_BULLETS_BOX
] := MsgArrayItemAmmoBox
;
717 ItemNames
[ITEM_AMMO_SHELLS
] := MsgArrayItem4Shells
;
718 ItemNames
[ITEM_AMMO_SHELLS_BOX
] := MsgArrayItem25Shells
;
719 ItemNames
[ITEM_AMMO_ROCKET
] := MsgArrayItem1Rocket
;
720 ItemNames
[ITEM_AMMO_ROCKET_BOX
] := MsgArrayItemRocketBox
;
721 ItemNames
[ITEM_AMMO_CELL
] := MsgArrayItemCell
;
722 ItemNames
[ITEM_AMMO_CELL_BIG
] := MsgArrayItemLargeCell
;
723 ItemNames
[ITEM_AMMO_FUELCAN
] := MsgArrayItemFuelcan
;
724 ItemNames
[ITEM_AMMO_BACKPACK
] := MsgArrayItemBackpack
;
725 ItemNames
[ITEM_KEY_RED
] := MsgArrayItemKeyRed
;
726 ItemNames
[ITEM_KEY_GREEN
] := MsgArrayItemKeyGreen
;
727 ItemNames
[ITEM_KEY_BLUE
] := MsgArrayItemKeyBlue
;
728 ItemNames
[ITEM_WEAPON_KASTET
] := '?';
729 ItemNames
[ITEM_WEAPON_PISTOL
] := '??';
730 ItemNames
[ITEM_BOTTLE
] := MsgArrayItemBottle
;
731 ItemNames
[ITEM_HELMET
] := MsgArrayItemHelmet
;
732 ItemNames
[ITEM_JETPACK
] := MsgArrayItemJetpack
;
733 ItemNames
[ITEM_INVIS
] := MsgArrayItemInvis
;
735 // Названия снарядов:
736 ShotNames
[TRIGGER_SHOT_PISTOL
] := MsgArrayShotPistol
;
737 ShotNames
[TRIGGER_SHOT_BULLET
] := MsgArrayShotBullet
;
738 ShotNames
[TRIGGER_SHOT_SHOTGUN
] := MsgArrayShotShotgun
;
739 ShotNames
[TRIGGER_SHOT_SSG
] := MsgArrayShotSsg
;
740 ShotNames
[TRIGGER_SHOT_IMP
] := MsgArrayShotImp
;
741 ShotNames
[TRIGGER_SHOT_PLASMA
] := MsgArrayShotPlasma
;
742 ShotNames
[TRIGGER_SHOT_SPIDER
] := MsgArrayShotSpider
;
743 ShotNames
[TRIGGER_SHOT_CACO
] := MsgArrayShotCaco
;
744 ShotNames
[TRIGGER_SHOT_BARON
] := MsgArrayShotBaron
;
745 ShotNames
[TRIGGER_SHOT_MANCUB
] := MsgArrayShotMancub
;
746 ShotNames
[TRIGGER_SHOT_REV
] := MsgArrayShotRev
;
747 ShotNames
[TRIGGER_SHOT_ROCKET
] := MsgArrayShotRocket
;
748 ShotNames
[TRIGGER_SHOT_BFG
] := MsgArrayShotBfg
;
749 ShotNames
[TRIGGER_SHOT_EXPL
] := MsgArrayShotExpl
;
750 ShotNames
[TRIGGER_SHOT_BFGEXPL
] := MsgArrayShotBfgexpl
;
751 ShotNames
[TRIGGER_SHOT_FLAME
] := MsgArrayShotFlame
;
753 // Названия монстров:
754 MonsterNames
[MONSTER_DEMON
] := MsgArrayMonDemon
;
755 MonsterNames
[MONSTER_IMP
] := MsgArrayMonImp
;
756 MonsterNames
[MONSTER_ZOMBY
] := MsgArrayMonZombie
;
757 MonsterNames
[MONSTER_SERG
] := MsgArrayMonSergeant
;
758 MonsterNames
[MONSTER_CYBER
] := MsgArrayMonCyber
;
759 MonsterNames
[MONSTER_CGUN
] := MsgArrayMonCgun
;
760 MonsterNames
[MONSTER_BARON
] := MsgArrayMonHellBaron
;
761 MonsterNames
[MONSTER_KNIGHT
] := MsgArrayMonHellKnight
;
762 MonsterNames
[MONSTER_CACO
] := MsgArrayMonCacodemon
;
763 MonsterNames
[MONSTER_SOUL
] := MsgArrayMonLostSoul
;
764 MonsterNames
[MONSTER_PAIN
] := MsgArrayMonPainElemental
;
765 MonsterNames
[MONSTER_SPIDER
] := MsgArrayMonMastermind
;
766 MonsterNames
[MONSTER_BSP
] := MsgArrayMonArachnatron
;
767 MonsterNames
[MONSTER_MANCUB
] := MsgArrayMonMancubus
;
768 MonsterNames
[MONSTER_SKEL
] := MsgArrayMonRevenant
;
769 MonsterNames
[MONSTER_VILE
] := MsgArrayMonArchvile
;
770 MonsterNames
[MONSTER_FISH
] := MsgArrayMonFish
;
771 MonsterNames
[MONSTER_BARREL
] := MsgArrayMonBarrel
;
772 MonsterNames
[MONSTER_ROBO
] := MsgArrayMonRobot
;
773 MonsterNames
[MONSTER_MAN
] := MsgArrayMonPrikolist
;
775 // Названия областей:
776 AreaNames
[AREA_PLAYERPOINT1
] := MsgArrayAreaPlayerOne
;
777 AreaNames
[AREA_PLAYERPOINT2
] := MsgArrayAreaPlayerTwo
;
778 AreaNames
[AREA_DMPOINT
] := MsgArrayAreaDm
;
779 AreaNames
[AREA_REDFLAG
] := MsgArrayAreaFlagRed
;
780 AreaNames
[AREA_BLUEFLAG
] := MsgArrayAreaFlagBlue
;
781 AreaNames
[AREA_DOMFLAG
] := MsgArrayAreaFlagDom
;
782 AreaNames
[AREA_REDTEAMPOINT
] := MsgArrayAreaTeamRed
;
783 AreaNames
[AREA_BLUETEAMPOINT
] := MsgArrayAreaTeamBlue
;
785 // Названия триггеров:
786 TriggerNames
[TRIGGER_EXIT
] := MsgArrayTrExit
;
787 TriggerNames
[TRIGGER_TELEPORT
] := MsgArrayTrTeleport
;
788 TriggerNames
[TRIGGER_OPENDOOR
] := MsgArrayTrDoorOpen
;
789 TriggerNames
[TRIGGER_CLOSEDOOR
] := MsgArrayTrDoorClose
;
790 TriggerNames
[TRIGGER_DOOR
] := MsgArrayTrDoorSwitch
;
791 TriggerNames
[TRIGGER_DOOR5
] := MsgArrayTrDoor5Sec
;
792 TriggerNames
[TRIGGER_CLOSETRAP
] := MsgArrayTrTrapClose
;
793 TriggerNames
[TRIGGER_TRAP
] := MsgArrayTrTrap
;
794 TriggerNames
[TRIGGER_PRESS
] := MsgArrayTrExtend
;
795 TriggerNames
[TRIGGER_SECRET
] := MsgArrayTrSecret
;
796 TriggerNames
[TRIGGER_LIFTUP
] := MsgArrayTrLiftUp
;
797 TriggerNames
[TRIGGER_LIFTDOWN
] := MsgArrayTrLiftDown
;
798 TriggerNames
[TRIGGER_LIFT
] := MsgArrayTrLiftSwitch
;
799 TriggerNames
[TRIGGER_TEXTURE
] := MsgArrayTrTexture
;
800 TriggerNames
[TRIGGER_ON
] := MsgArrayTrOn
;
801 TriggerNames
[TRIGGER_OFF
] := MsgArrayTrOff
;
802 TriggerNames
[TRIGGER_ONOFF
] := MsgArrayTrSwitch
;
803 TriggerNames
[TRIGGER_SOUND
] := MsgArrayTrSound
;
804 TriggerNames
[TRIGGER_SPAWNMONSTER
] := MsgArrayTrSpawnMonster
;
805 TriggerNames
[TRIGGER_SPAWNITEM
] := MsgArrayTrSpawnItem
;
806 TriggerNames
[TRIGGER_MUSIC
] := MsgArrayTrMusic
;
807 TriggerNames
[TRIGGER_PUSH
] := MsgArrayTrPush
;
808 TriggerNames
[TRIGGER_SCORE
] := MsgArrayTrScore
;
809 TriggerNames
[TRIGGER_MESSAGE
] := MsgArrayTrMessage
;
810 TriggerNames
[TRIGGER_DAMAGE
] := MsgArrayTrDamage
;
811 TriggerNames
[TRIGGER_HEALTH
] := MsgArrayTrHealth
;
812 TriggerNames
[TRIGGER_SHOT
] := MsgArrayTrShot
;
813 TriggerNames
[TRIGGER_EFFECT
] := MsgArrayTrEffect
;
815 // Установка значений в панели выбора объектов:
818 lbPanelType
.Items
.Clear();
819 for i
:= 0 to High(PANELNAMES
) do
820 lbPanelType
.Items
.Add(PANELNAMES
[i
]);
821 lbPanelType
.ItemIndex
:= 0;
824 for i
:= ITEM_MEDKIT_SMALL
to ITEM_KEY_BLUE
do
825 lbItemList
.Items
.Add(ItemNames
[i
]);
826 lbItemList
.Items
.Add(ItemNames
[ITEM_BOTTLE
]);
827 lbItemList
.Items
.Add(ItemNames
[ITEM_HELMET
]);
828 lbItemList
.Items
.Add(ItemNames
[ITEM_JETPACK
]);
829 lbItemList
.Items
.Add(ItemNames
[ITEM_INVIS
]);
830 lbItemList
.Items
.Add(ItemNames
[ITEM_WEAPON_FLAMETHROWER
]);
831 lbItemList
.Items
.Add(ItemNames
[ITEM_AMMO_FUELCAN
]);
833 lbMonsterList
.Clear();
834 for i
:= MONSTER_DEMON
to MONSTER_MAN
do
835 lbMonsterList
.Items
.Add(MonsterNames
[i
]);
838 for i
:= AREA_PLAYERPOINT1
to AREA_BLUETEAMPOINT
do
839 lbAreasList
.Items
.Add(AreaNames
[i
]);
841 lbTriggersList
.Clear();
842 for i
:= Low(TriggerNames
) to High(TriggerNames
) do
843 lbTriggersList
.Items
.Add(TriggerNames
[i
]);
845 clbActivationType
.Clear();
846 clbActivationType
.Items
.Add(MsgCtrlActPlayerClose
);
847 clbActivationType
.Items
.Add(MsgCtrlActMonsterClose
);
848 clbActivationType
.Items
.Add(MsgCtrlActPlayerPress
);
849 clbActivationType
.Items
.Add(MsgCtrlActMonsterPress
);
850 clbActivationType
.Items
.Add(MsgCtrlActShot
);
851 clbActivationType
.Items
.Add(MsgCtrlActNoMonster
);
854 clbKeys
.Items
.Add(MsgCtrlKeysRed
);
855 clbKeys
.Items
.Add(MsgCtrlKeysGreen
);
856 clbKeys
.Items
.Add(MsgCtrlKeysBlue
);
857 clbKeys
.Items
.Add(MsgCtrlKeysTeamRed
);
858 clbKeys
.Items
.Add(MsgCtrlKeysTeamBlue
);
862 procedure SetupCaptions();
863 var i
: Integer; s
: AnsiString;
869 s
:= g_GetBuildHash(false);
870 if s
= 'custom build' then
871 s
:= s
+ ' by ' + g_GetBuilderName() + ' ' + EDITOR_BUILDDATE
+ ' ' + EDITOR_BUILDTIME
;
872 FormCaption
:= MsgEditorTitle
+ ' (' + s
+ ')';
873 i
:= Pos('-', Caption
);
876 Caption
:= FormCaption
+ ' ' + Copy(Caption
, i
, Length(Caption
)-i
+1);
879 Caption
:= FormCaption
;
882 miMenuFile
.Caption
:= MsgMenuFile
;
883 miNewMap
.Caption
:= MsgMenuFileNew
;
884 miOpenMap
.Caption
:= MsgMenuFileOpen
;
885 miSaveMap
.Caption
:= MsgMenuFileSave
;
886 miSaveMapAs
.Caption
:= MsgMenuFileSaveAs
;
887 miOpenWadMap
.Caption
:= MsgMenuFileOpenWad
;
888 miReopenMap
.Caption
:= MsgMenuFileReopen
;
889 miSaveMiniMap
.Caption
:= MsgMenuFileSaveMini
;
890 miDeleteMap
.Caption
:= MsgMenuFileDelete
;
891 miPackMap
.Caption
:= MsgMenuFilePackMap
;
892 miExit
.Caption
:= MsgMenuFileExit
;
894 miMenuEdit
.Caption
:= MsgMenuEdit
;
895 miUndo
.Caption
:= MsgMenuEditUndo
;
896 miCopy
.Caption
:= MsgMenuEditCopy
;
897 miCut
.Caption
:= MsgMenuEditCut
;
898 miPaste
.Caption
:= MsgMenuEditPaste
;
899 miSelectAll
.Caption
:= MsgMenuEditSelectAll
;
900 miToFore
.Caption
:= MsgMenuEditToFore
;
901 miToBack
.Caption
:= MsgMenuEditToBack
;
903 miSnapToGrid
.Caption
:= MsgMenuToolsSnapGrid
;
904 miMiniMap
.Caption
:= MsgMenuToolsMinimap
;
905 miSwitchGrid
.Caption
:= MsgMenuToolsStepGrid
;
906 miShowEdges
.Caption
:= MsgMenuToolsShowEdges
;
907 miLayers
.Caption
:= MsgMenuToolsLayers
;
908 miLayer1
.Caption
:= MsgMenuLayerBack
;
909 miLayer2
.Caption
:= MsgMenuLayerWall
;
910 miLayer3
.Caption
:= MsgMenuLayerFore
;
911 miLayer4
.Caption
:= MsgMenuLayerStair
;
912 miLayer5
.Caption
:= MsgMenuLayerWater
;
913 miLayer6
.Caption
:= MsgMenuLayerItem
;
914 miLayer7
.Caption
:= MsgMenuLayerMonster
;
915 miLayer8
.Caption
:= MsgMenuLayerArea
;
916 miLayer9
.Caption
:= MsgMenuLayerTrigger
;
917 miMapOptions
.Caption
:= MsgMenuSetsMap
;
918 miOptions
.Caption
:= MsgMenuSetsEditor
;
920 miMenuService
.Caption
:= MsgMenuServ
;
921 miCheckMap
.Caption
:= MsgMenuServTest
;
922 miOptimmization
.Caption
:= MsgMenuServOpt
;
923 miMapPreview
.Caption
:= MsgMenuServPreview
;
924 miTestMap
.Caption
:= MsgMenuServLaunch
;
926 miMenuHelp
.Caption
:= MsgMenuHelp
;
927 miAbout
.Caption
:= MsgMenuHelpAbout
;
929 // Панель инструментов:
930 tbNewMap
.Hint
:= MsgMenuTbNew
;
931 tbOpenMap
.Hint
:= MsgMenuTbOpen
;
932 tbSaveMap
.Hint
:= MsgMenuTbSave
;
933 tbOpenWadMap
.Hint
:= MsgMenuTbOpenWad
;
934 tbShowMap
.Hint
:= MsgMenuTbMinimap
;
935 tbShow
.Hint
:= MsgMenuTbLayers
;
936 tbGridOn
.Hint
:= MsgMenuTbGrid
;
937 tbGrid
.Hint
:= MsgMenuTbGridStep
;
938 tbTestMap
.Hint
:= MsgMenuTbLaunch
;
939 // Всплывающее меню для кнопки слоев:
940 miLayerP1
.Caption
:= MsgMenuLayerBack
;
941 miLayerP2
.Caption
:= MsgMenuLayerWall
;
942 miLayerP3
.Caption
:= MsgMenuLayerFore
;
943 miLayerP4
.Caption
:= MsgMenuLayerStair
;
944 miLayerP5
.Caption
:= MsgMenuLayerWater
;
945 miLayerP6
.Caption
:= MsgMenuLayerItem
;
946 miLayerP7
.Caption
:= MsgMenuLayerMonster
;
947 miLayerP8
.Caption
:= MsgMenuLayerArea
;
948 miLayerP9
.Caption
:= MsgMenuLayerTrigger
;
950 // Кнопка применения свойств:
951 bApplyProperty
.Caption
:= MsgBtnApplyProps
;
952 // Редактор свойств объектов:
953 vleObjectProperty
.TitleCaptions
[0] := MsgCtrlPropKey
;
954 vleObjectProperty
.TitleCaptions
[1] := MsgCtrlPropValue
;
957 tsPanels
.Caption
:= MsgCtrlPanels
;
958 lbPanelType
.Hint
:= MsgPropPanelType
;
959 lbTextureList
.Hint
:= MsgCtrlListTexture
;
960 // Панель настройки текстур:
961 LabelTxW
.Caption
:= MsgLabTexWidth
;
962 LabelTxH
.Caption
:= MsgLabTexHeight
;
963 cbPreview
.Caption
:= MsgCtrlPreview
;
964 bbAddTexture
.Hint
:= MsgBtnTextureAdd
;
965 bbRemoveTexture
.Hint
:= MsgBtnTextureDelete
;
966 bClearTexture
.Hint
:= MsgBtnTextureEmpty
;
968 // Вкладка "Предметы":
969 tsItems
.Caption
:= MsgCtrlItems
;
970 lbItemList
.Hint
:= MsgCtrlListItem
;
971 cbOnlyDM
.Caption
:= MsgCtrlItemDm
;
972 cbFall
.Caption
:= MsgCtrlItemFalls
;
974 // Вкладка "Монстры":
975 tsMonsters
.Caption
:= MsgCtrlMonsters
;
976 lbMonsterList
.Hint
:= MsgCtrlListMonster
;
977 rbMonsterLeft
.Caption
:= MsgCtrlLeft
;
978 rbMonsterRight
.Caption
:= MsgCtrlRight
;
980 // Вкладка "Области":
981 tsAreas
.Caption
:= MsgCtrlAreas
;
982 lbAreasList
.Hint
:= MsgCtrlListArea
;
983 rbAreaLeft
.Caption
:= MsgCtrlLeft
;
984 rbAreaRight
.Caption
:= MsgCtrlRight
;
986 // Вкладка "Триггеры":
987 tsTriggers
.Caption
:= MsgCtrlTriggers
;
988 lbTriggersList
.Hint
:= MsgCtrlListTrigger
;
989 clbActivationType
.Hint
:= MsgCtrlListActive
;
990 clbKeys
.Hint
:= MsgCtrlListKeys
;
993 // Форма "О программе":
996 Caption
:= MsgCapAbout
;
997 LabelTitle
.Caption
:= MsgEditorTitle
;
998 LabelVer
.Caption
:= MsgLabAboutVer
;
999 LabelAuthor
.Caption
:= MsgLabAboutAuthor
;
1000 LabelAuthor2
.Caption
:= MsgLabAboutAuthor2
;
1001 LabelMail
.Caption
:= MsgLabAboutMail
;
1002 LabelMail2
.Caption
:= MsgLabAboutMail2
;
1003 LabelSite
.Caption
:= MsgLabAboutSite
;
1004 LabelHttp
.Caption
:= MsgLabAboutHttp
;
1007 // Форма "Тип активации":
1008 with ActivationTypeForm
do
1010 Caption
:= MsgCapAct
;
1011 cbPlayerCollide
.Caption
:= MsgCtrlActPlayerClose
;
1012 cbMonsterCollide
.Caption
:= MsgCtrlActMonsterClose
;
1013 cbPlayerPress
.Caption
:= MsgCtrlActPlayerPress
;
1014 cbMonsterPress
.Caption
:= MsgCtrlActMonsterPress
;
1015 cbShot
.Caption
:= MsgCtrlActShot
;
1016 cbNoMonster
.Caption
:= MsgCtrlActNoMonster
;
1017 bOK
.Caption
:= MsgBtnOk
;
1020 // Форма "Выбор текстуры для неба":
1023 Caption
:= MsgCapAddSky
;
1024 LabelWADs
.Caption
:= MsgLabAddWads
;
1025 LabelSections
.Caption
:= MsgLabAddSections
;
1026 bOK
.Caption
:= MsgBtnOk
;
1027 bCancel
.Caption
:= MsgBtnCancel
;
1030 // Форма "Выбор звука или музыки":
1031 with AddSoundForm
do
1033 Caption
:= MsgCapAddSound
;
1034 LabelWADs
.Caption
:= MsgLabAddWads
;
1035 LabelSections
.Caption
:= MsgLabAddSections
;
1036 bOK
.Caption
:= MsgBtnOk
;
1037 bCancel
.Caption
:= MsgBtnCancel
;
1038 bEmpty
.Caption
:= MsgBtnNoSound
;
1041 // Форма "Выбор текстуры":
1042 with AddTextureForm
do
1044 Caption
:= MsgCapAddTexture
;
1045 LabelWADs
.Caption
:= MsgLabAddWads
;
1046 LabelSections
.Caption
:= MsgLabAddSections
;
1047 bAddTexture
.Caption
:= MsgBtnAdd
;
1048 bClose
.Caption
:= MsgBtnClose
;
1049 bAddClose
.Caption
:= MsgBtnAddClose
;
1052 // Форма "Выбор типа монстра" / "Выбор типа предмета":
1053 ChooseTypeForm
.bOK
.Caption
:= MsgBtnOk
;
1058 Caption
:= MsgCapKeys
;
1059 cbRedKey
.Caption
:= MsgCtrlKeysRed
;
1060 cbGreenKey
.Caption
:= MsgCtrlKeysGreen
;
1061 cbBlueKey
.Caption
:= MsgCtrlKeysBlue
;
1062 cbRedTeam
.Caption
:= MsgCtrlKeysTeamRed
;
1063 cbBlueTeam
.Caption
:= MsgCtrlKeysTeamBlue
;
1064 bOK
.Caption
:= MsgBtnOk
;
1067 // Форма "Проверка карты":
1068 with MapCheckForm
do
1070 Caption
:= MsgCapTest
;
1071 bCheckMap
.Caption
:= MsgBtnTestAgain
;
1072 bClose
.Caption
:= MsgBtnClose
;
1075 // Форма "Оптимизация карты":
1076 with MapOptimizationForm
do
1078 Caption
:= MsgCapOpt
;
1079 // Выбор оптимизации:
1080 GroupBoxOpt
.Caption
:= MsgCtrlOptGb
;
1081 rbTexturesOptimization
.Caption
:= MsgCtrlOptTexture
;
1082 rbPanelsOptimization
.Caption
:= MsgCtrlOptPanel
;
1083 // Оптимизация текстур:
1084 bBeginTextureOptimization
.Caption
:= MsgBtnStart
;
1085 // Оптимизация панелей:
1086 cbOptimizeWalls
.Caption
:= MsgCtrlOptWall
;
1087 cbOptimizeForeGround
.Caption
:= MsgCtrlOptFore
;
1088 cbOptimizeBackGround
.Caption
:= MsgCtrlOptBack
;
1089 cbOptimizeSteps
.Caption
:= MsgCtrlOptStair
;
1090 cbOptimizeWater
.Caption
:= MsgCtrlOptWater
;
1091 cbOptimizeAcid1
.Caption
:= MsgCtrlOptAcid1
;
1092 cbOptimizeAcid2
.Caption
:= MsgCtrlOptAcid2
;
1093 cbOptimizeLift
.Caption
:= MsgCtrlOptLift
;
1094 cbOptimizeBlockMon
.Caption
:= MsgCtrlOptBlockmon
;
1095 bBeginPanelsOptimization
.Caption
:= MsgBtnStart
;
1098 // Форма "Параметры карты":
1099 with MapOptionsForm
do
1101 Caption
:= MsgCapSets
;
1102 // Основные параметры:
1103 LabelName
.Caption
:= MsgLabSetsName
;
1104 LabelDesc
.Caption
:= MsgLabSetsDesc
;
1105 LabelAuthor
.Caption
:= MsgLabSetsAuthor
;
1106 LabelBack
.Caption
:= MsgLabSetsBack
;
1107 LabelMusic
.Caption
:= MsgLabSetsMusic
;
1109 GBStats
.Caption
:= MsgCtrlSetsStats
;
1110 LabelTexs
.Caption
:= MsgLabSetsTextures
;
1111 LabelPanels
.Caption
:= MsgLabSetsPanels
;
1112 LabelItems
.Caption
:= MsgLabSetsItems
;
1113 LabelMonsters
.Caption
:= MsgLabSetsMonsters
;
1114 LabelAreas
.Caption
:= MsgLabSetsAreas
;
1115 LabelTriggers
.Caption
:= MsgLabSetsTriggers
;
1117 GBSizes
.Caption
:= MsgCtrlSetsSizes
;
1118 LabelWidth
.Caption
:= MsgLabSetsWidth
;
1119 LabelHeight
.Caption
:= MsgLabSetsHeight
;
1120 LabelCurSize
.Caption
:= MsgLabSetsSizes
;
1121 LabelMapMove
.Caption
:= MsgLabSetsMapmove
;
1122 cbSnapping
.Caption
:= MsgLabSetsSnapping
;
1124 bOK
.Caption
:= MsgBtnOk
;
1125 bCancel
.Caption
:= MsgBtnCancel
;
1128 // From "Editor settings":
1131 Caption
:= MsgCapEs
;
1132 bOK
.Caption
:= MsgBtnOk
;
1133 bCancel
.Caption
:= MsgBtnCancel
;
1135 cbShowDots
.Caption
:= MsgCtrlEsGrid
;
1136 cbShowTexture
.Caption
:= MsgCtrlEsTexture
;
1137 cbShowSize
.Caption
:= MsgCtrlEsPanelSize
;
1138 cbCheckerboard
.Caption
:= MsgCtrlEsCheckerboard
;
1139 LabelGrid
.Caption
:= MsgLabEsGrid
;
1140 LabelGridCol
.Caption
:= MsgLabEsGridColor
;
1141 LabelGridSize
.Caption
:= MsgLabEsGridSize
;
1142 LabelBack
.Caption
:= MsgLabEsBack
;
1143 LabelPreview
.Caption
:= MsgLabEsPreview
;
1144 LabelMinimap
.Caption
:= MsgLabEsMinimap
;
1145 LabelLanguage
.Caption
:= MsgLabEsLanguage
;
1147 cbCompress
.Caption
:= MsgLabEsCompress
;
1148 cbBackup
.Caption
:= MsgLabEsBackup
;
1149 LabelRecent
.Caption
:= MsgLabEsRecent
;
1151 rbDM
.Caption
:= MsgCtrlLaunchDm
;
1152 rbTDM
.Caption
:= MsgCtrlLaunchTdm
;
1153 rbCTF
.Caption
:= MsgCtrlLaunchCtf
;
1154 rbCOOP
.Caption
:= MsgCtrlLaunchCoop
;
1155 cbTwoPlayers
.Caption
:= MsgCtrlLaunch2p
;
1156 cbTeamDamage
.Caption
:= MsgCtrlLaunchFf
;
1157 cbAllowExit
.Caption
:= MsgCtrlLaunchExit
;
1158 cbWeaponStay
.Caption
:= MsgCtrlLaunchWeapons
;
1159 cbMonstersDM
.Caption
:= MsgCtrlLaunchMonsters
;
1160 cbMapOnce
.Caption
:= MsgCtrlLaunchClose
;
1161 LabelTime
.Caption
:= MsgLabLaunchTime
;
1162 LabelSecs
.Caption
:= MsgLabLaunchSecs
;
1163 LabelScore
.Caption
:= MsgLabLaunchScore
;
1164 LabelPath
.Caption
:= MsgLabLaunchPath
;
1165 FindD2dDialog
.Title
:= MsgCtrlLaunchOpen
;
1166 LabelArgs
.Caption
:= MsgLabLaunchArgs
;
1169 // Форма "Упаковать карту":
1172 Caption
:= MsgCapPack
;
1173 bPack
.Caption
:= MsgBtnPack
;
1174 LabelSaveTo
.Caption
:= MsgLabPackSaveTo
;
1175 LabelMapName
.Caption
:= MsgLabPackMapName
;
1177 cbTextrures
.Caption
:= MsgCtrlPackTextures
;
1178 LabelTextures
.Caption
:= MsgLabPackTextures
;
1179 cbSky
.Caption
:= MsgCtrlPackSky
;
1180 LabelSky
.Caption
:= MsgLabPackSky
;
1181 cbMusic
.Caption
:= MsgCtrlPackMusic
;
1182 LabelMusic
.Caption
:= MsgLabPackMusic
;
1183 cbAdd
.Caption
:= MsgCtrlPackAdd
;
1184 cbNonStandart
.Caption
:= MsgCtrlPackNonStd
;
1187 // Форма "Сохранить карту":
1190 Caption
:= MsgCapSave
;
1191 bOK
.Caption
:= MsgBtnOk
;
1192 bCancel
.Caption
:= MsgBtnCancel
;
1195 // Форма "Сохранить мини-карту":
1196 with SaveMiniMapForm
do
1198 Caption
:= MsgCapMini
;
1199 LabelScale
.Caption
:= MsgLabMiniScale
;
1200 bSave
.Caption
:= MsgBtnSave
;
1201 bClose
.Caption
:= MsgBtnClose
;
1204 // Форма "Выбор карты":
1205 with SelectMapForm
do
1207 Caption
:= MsgCapSelect
;
1208 bOK
.Caption
:= MsgBtnOk
;
1209 bCancel
.Caption
:= MsgBtnCancel
;
1212 // Заголовок приложения:
1213 Application
.Title
:= MsgEditorTitle
;
1216 procedure g_Language_Set(lang
: String);
1217 const langfilename
= 'editor';
1218 var syslang
, fallbacklang
: String;
1220 e_WriteLog('g_Language_Set: requested lang is "' + lang
+ '"', MSG_NOTIFY
);
1221 GetLanguageIDs(syslang
, fallbacklang
);
1222 if lang
= '' then lang
:= syslang
;
1224 ResetResourceTables
;
1226 e_WriteLog('g_Language_Set: try language "' + lang
+ '"', MSG_NOTIFY
);
1227 TranslateResourceStrings(LangDir
+ DirectorySeparator
+ langfilename
+ '.' + lang
+ '.mo');
1230 e_WriteLog('g_Language_Set: try system language "' + syslang
+ '"', MSG_NOTIFY
);
1231 TranslateResourceStrings(LangDir
+ DirectorySeparator
+ langfilename
+ '.' + syslang
+ '.mo');
1234 e_WriteLog('g_Language_Set: try fallback language "' + fallbacklang
+ '"', MSG_NOTIFY
);
1235 TranslateResourceStrings(LangDir
+ DirectorySeparator
+ langfilename
+ '.' + fallbacklang
+ '.mo');
1237 e_WriteLog('g_Language_Set: use default strings', MSG_NOTIFY
);
1241 e_WriteLog('g_Language_Set: ok', MSG_NOTIFY
);
1244 RemoveSelectFromObjects();