Commit graph

98 commits

Author SHA1 Message Date
MaxED
44b5c60b0d Fixed, Doom -> Hexen map format conversion: SP/Coop/MP flags were lost during Thing flags conversion resulting in Things not showing in any game mode. 2015-12-09 21:17:05 +00:00
MaxED
e8cda3c9c5 Script Editor:
Added: Tab text now looks differently when appropriate script was changed.
Added: Script Editor now has it's own status bar.
Added: several files can now be opened at once when using "Open File" command.
Added: ACS scripts navigator now shows script and function arguments.
Changed: when closing a tab, previous tab is selected instead of the first tab.
Changed: SCRIPTS lump can't be compiled as a library.
Changed: external acs files can only be compiled as libraries.
Changed: when an external acs file is marked as #library, it will be saved as [library name].o alongside [filename].acs.
Fixed: files opened using "Open File" command were immediately flagged as changed.
Fixed: Script Editor was unable to navigate to error location after clicking on the error description when the error was in include file.
Updated ZDoom ACC.
2015-11-30 14:18:42 +00:00
MaxED
6d0823b943 Fixed, ACS parser: fixed a crash when trying to load zero-length acs lump/file.
Fixed, Visual mode: fixed incorrect GLDEFS glow brightness calculation for Things.
Updated ZDoom_DECORATE.cfg.
2015-11-28 20:59:32 +00:00
MaxED
f452fca58c Fixed, Script Editor: in some cases includes list was not updated before trying to compile the script leading to compilation failure.
Changed, ACC compiler: when building includes list, the compiler no longer tries to find/copy include files defined in current script configuration (previously it was hardcoded to skip "zcommon.acs" and "common.acs" only).
Fixed, Visual mode: things with Additive RenderStyle were rendered as additive only when their alpha was less than 1.0.
2015-11-13 21:42:41 +00:00
MaxED
17ac1c6db5 Sectors/Linedefs modes: removed "Select Things in Selected Sectors" action.
Sectors mode: removed "Move Things in Selected Sectors" toolbar button.
Sectors mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, things dragging will be synchronized to sector dragging. Regular, Paint and Rectangular selection will also select things (holding Alt while selecting inverts this behavior). Deleting sectors will also delete selected things.
Linedefs mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, selected things will be dragged when dragging linedefs. Rectangular selection will also select things (holding Alt while selecting inverts this behavior).
Changed: selection info now always displays info about all types of map elements.
Fixed: .dbs containing only current map settings was created when trying to save unchanged map. 
Fixed, Visual mode, "Copy Texture" action: when "Use long texture names" option is disabled, texture name as stored in Sidedef should be used, not the 8-char texture name.
Updated documentation.
2015-11-03 08:54:56 +00:00
MaxED
a182a5098d Game Configurations: added Vanilla Strife, Vanilla Heretic and Vanilla Hexen game configurations.
Added "makedoorceil" game configuration property. Works the same way as "makedoortrack" and "makedoordoor", but for ceilings of door sectors. 
Changed, Game configurations: the editor no longer tries to load DECORATE/MODELDEF/VOXELDEF/GLDEFS/REVERBS lumps when "decorategames" setting is not specified / is set to empty string.
Changed, General interface: "Tools -> Reload MODELDEF/VOXELDEF" and "Tools -> Reload GLDEFS" menu items are no longer shown when current game configuration doesn't support DECORATE. 
Fixed a crash when pasting linedef/thing properties in Hexen map format.
Fixed, Visual mode: Visual Thing resources were not fully unloaded when resetting D3D device leading to crash when switching to the editor from a DX-using game engine (like ZDoom) running in fullscreen.
Fixed: in some cases, when current game configuration supported multiple script compilers, it was possible to open/create a map or change map options without selecting any script compiler.
Fixed, New Map Options window: default map name was not updated when switching game configurations.
Fixed: copied map element properties were not reset after switching to another map.
Fixed: stored textures for "Make Door" action were not reset after switching to another map.
Fixed, Game Configurations window: currently selected test engine name was not updated when pasting test engines from another configuration. 
Fixed, Game Configurations: all "Heretic in Doom map format" configurations were using Doom sector effects list.
Fixed, Game Configurations: all "Strife in Doom map format" configurations were using Doom sector effects list.
2015-10-21 13:35:42 +00:00
MaxED
9253788ccd Fixed, DB2 bug: we should not switch to a new editing mode if it fails to initialize.
More detailed info is now saved to the log file (GZBuilder.log) when an editing mode fails to initialize.
General interface: added "Help -> Program Configuration Folder" menu item.
2015-10-02 23:15:29 +00:00
MaxED
942c8a3276 Fixed, UDMF: we should fail map loading if there were TEXTMAP parsing errors.
Fixed, UDMF parser: parser failed to parse decimals stored using scientific notation (like "1E-06").
Fixed, UDMF parser: incorrect line numbers were shown when displaying errors.
Changed, UDMF parser: many error descriptions are now more detailed.
Updated ZDoom ACC to Git rev. ae5f036.
2015-10-01 21:35:52 +00:00
MaxED
07b4a7a9cd Added, Visual mode, DECORATE: "Alpha" and "DefaultAlpha" properties are now supported.
Added, Visual mode, DECORATE: "RenderStyle" property is now partially supported.
Added, Visual mode, DECORATE: +BRIGHT flag is now supported.
Added, Visual mode, UDMF: "Alpha" thing property is now supported.
Added, Visual mode, UDMF: "RenderStyle" thing property is now partially supported.
Added, Visual mode, Hexen map format and UDMF: "Translucent" and "Invisible" thing flags are now supported.
Added, Game Configurations: added "alpha" and "renderstyle" Thing and Thing Category properties.
Fixed, Visual mode: blockmap was not updated when moving things using "Move Thing Left/Right/Forward/Backward" and "Move Thing to Cursor Location" actions.
DECORATE parser: added a warning when unable to find actor's parent class.
Internal: current map format can now be checked using "General.Map.UDMF", "General.Map.HEXEN" and "General.Map.DOOM" properties.
Updated documentation ("Game Configuration - Things Settings" page).
2015-09-28 14:57:48 +00:00
MaxED
f729c811f5 Added, Visual mode: translucent/additive geometry is now rendered properly.
Fixed: "Open map in current wad" action was accidentally broken in R2403.
2015-09-27 21:09:14 +00:00
MaxED
dc840605aa Added emergency map backup system (EMBS). When the editor crashes, it will try to export a backup copy of the map structures. When the same map is loaded again, it will ask the user if he wants to restore the map.
High-DPI: fixed many issues with incorrect controls size (Tag selector width, Comment Editor size, icons size, tabs size etc.).
Cosmetic: changed map geometry dragging undo messages to more descriptive ones.
Fixed, Textures Browser, cosmetic: "Show textures in subdirectories" checkbox should be repositioned when "Long texture names" one is invisible.
Updated ZDoom_DECORATE.cfg (added A_SetFloatSpeed + a couple of fixes).
2015-09-25 13:20:53 +00:00
MaxED
6ac256eb4f Fixed: map file lock check was performed in incorrect place leading to always reporting the map file as locked on Windows XP.
Fixed, DB2 bug (partially): 4 settings were reset to the state saved in the program configuration after applying the changes made in the Preferences window.
Fixed: several Brushes were not disposed in ImageBrowserItem (DB2 bug) and ColoredComboBox, resulting in a very slow memory leak.
Fixed, Linedefs Mode, cosmetic: incorrect distance was used when calculating vertex insert preview opacity.
Changed, Script Editor: disabled indentation guides.
2015-09-12 21:05:01 +00:00
MaxED
fe38d59169 Added, Classic modes: default thing arguments are now taken into account when highlighting related map elements.
Probably fixed an exception when trying to check which program(s) lock the map file on Windows XP.
Changed: added an option to try to close all programs, which lock the map file when saving the map and the map file is locked (requires Windows Vista or newer).
Fixed, Preferences window: some trackbars had incorrect background color.
Fixed, General interface: in some cases status messages were almost immediately replaced by selection info messages.
2015-09-08 14:54:53 +00:00
MaxED
6dc100321a Changed: when the editor is unable to save the map, it will now display the list of processes, which lock the map file.
Fixed, Update Checker: the existence of Updater.exe and Updater.ini was not checked when using Help -> Check for updates command.
2015-09-06 22:15:21 +00:00
MaxED
39beaf2cdb Linedef Color Presets: completely redone Linedef Color Presets UI. Now it's done the same way as Things Filters UI.
Linedef Color Presets: Linedef Color Presets can now be disabled.
Things Filters window: a warning icon is now displayed near the filter name in the filters list when the filter has no usable settings.
Change Map in Current WAD window: keyboard focus was not set to initially selected item.
Changed the default wad filename from "unnamed.wad" to "[map name].wad".
Updated documentation ("Custom linedef colors" page).
2015-07-30 23:48:16 +00:00
MaxED
5cd998b1fc Changed, Linedef/Thing Edit windows: when using ACS specials and choosing a script with arguments, appropriate action argument names are replaced with script argument names.
Changed, Linedef/Thing Info panel: when displaying a linedef/thing with an ACS special, which uses a script with arguments, appropriate action argument names are replaced with script argument names.
Changed, Sector/Linedef/Thing Edit windows, Comments tab: window is no longer closed when pressing Enter while editing a comment. Newline is inserted instead.
Changed: Script Editor window is now toggled to normal state when pressing "Show Script Editor" button if said window was already open, but minimized.
Fixed: in some cases action arguments were not cleared during setup when displaying multiple map elements with mixed argument values.
Internal: added ArgumentsControl.
2015-07-27 09:02:28 +00:00
MaxED
712dbd03e8 Cosmetic: renamed Drawing mode to Draw Lines mode.
Changed: current 2D position and zoom is now stored in the .dbs file when saving the map and restored when opening it (should this be turned into toggleable option?).
Draw Lines mode, Draw Curve mode: you can now hold Alt - Shift to snap to 8 cardinal directions.
Draw Rectangle mode, Draw Grid mode: you can now hold Alt - Shift to draw square shapes.
Draw Ellipse mode: you can now hold Alt - Shift to draw circle shapes.
You can now hold Alt - Shift to snap to 8 cardinal directions while dragging map objects.
Fixed, Draw Lines mode: line angle is now displayed in 0..359 range (was -45..314).
Fixed, Linedef info panel: line angle is now displayed in 0..359 range (was -45..314).
2015-07-09 22:32:12 +00:00
MaxED
1b9f94f3f7 More code sanity changes (constructors of abstract classes should not be public or internal). 2015-05-27 12:38:03 +00:00
MaxED
369e39dbc6 Added: Tag Explorer now has polyobjects display mode.
Changed, Tag Explorer: several wildcards can now be used at once. For example, entering "#12 $9" will show only map elements with tag 12 and action 9.
Changed, Tag Explorer: you can now filter list by polyobject number by entering "^NN" in the Filter field.
Changed, cosmetic: reduced map resizing caused by UI resizing during map loading.
2015-03-11 11:38:25 +00:00
MaxED
0993c189ea Changed, cosmetic: info panel, sidebar and most of the main toolbar buttons are now shown only when a map is loaded.
Fixed, cosmetic: fixed disappearing toolbars separators.
2015-03-05 23:19:10 +00:00
MaxED
3575ffc0a3 Added some more boilerplate to MapManager.CompileLump() 2015-01-29 08:18:11 +00:00
MaxED
3c9ea89d4d Changed ZDoom/GZDoom/Zandronum configuration names to avoid confusion. 2015-01-29 08:00:41 +00:00
MaxED
ed2a832c5a Added some boilerplate to MapManager.CompileLump(). 2015-01-28 23:33:56 +00:00
MaxED
38d2b14570 Fixed, Script Editor: named scripts were not shown in the script navigator drop-down when current map was not in UDMF. 2015-01-22 20:34:27 +00:00
MaxED
3676bd1a9b Visual mode: "Auto-align textures" actions now align mixed textures when used on a selection (helpful if you want to align several different textures, which can tile into each other).
Cosmetic: errors and warnings are now cleared when reloading resources.
2015-01-20 07:58:47 +00:00
MaxED
c325d7ec14 Changed, "Snap selected map elements to grid" action: the action now works on any selected map element type.
Fixed, Sectors mode: holding Alt to (de)select things inside of sectors worked only in band selection mode. Now it also works when selecting individual sectors and when using paint selection mode.
Fixed, Statistics Control: forgot to remove some test code in r2176...
Internal: removed several unused icons.
2015-01-10 23:12:19 +00:00
MaxED
1b911628ac Fixed, Linedef Edit form (classic): it was impossible to enable disabled front/back sides, because corresponding check-boxes were inside of corresponding groups.
Fixed, Nodes Viewer Mode: the mode was unable to handle missing node lumps properly.
Fixed, Nodes Viewer Mode: the mode no longer builds nodes when unable to find both classic nodes and ZNODES at the same time.
Removed SlimDX installer, because it's no longer required.
Internal: debug console is now cleared when opening a map.
2015-01-09 13:56:54 +00:00
MaxED
4f7e2298f4 Added Hexen -> UDMF and UDMF -> Hexen action conversion as described in "Universal Doom Map Format ZDoom extensions" (udmf_zdoom.txt). It is used when changing map format form Hexen to UDMF and from UDMF to Hexen.
Game configurations, Line Identification action: added "Front side only" (128) flag to arg1.
Game configurations, Line Identification action: renamed arg1 flags to match corresponding UDMF flag names.
Updated udmf_zdoom.txt.
2014-12-29 09:19:20 +00:00
MaxED
deb43343bb Visual mode: "Fit Textures" action can now fit textures across multiple selected surfaces. A number of times to repeat a texture can now be specified.
Visual mode: removed "Fit Texture's Width" and "Fit Texture's Height" actions.
Visual mode: "Auto-align texture offsets" actions were incorrectly aligning double-sided middle walls in some cases.
Visual mode: "Auto-align texture offsets" actions now align non-wrapped double-sided middle walls to vertical offset closest to their initial vertical offset.
Visual mode: middle parts of double-sided walls were ignored when Shift-selecting walls.
Nodebuilders/Game configurations: GL nodes definitions were missing from game configurations.
Nodebuilders/Game configurations: "~MAP" wildcard can now be a part of a lump name. 
Nodebuilders: GL nodes were not properly handled by the editor.
Main Window: the window is now moved into the view when stored position is ouside of screen bounds. 
Classic and Visual modes: changing thing pitch was ignored in some cases.
Visual mode: raising and lowering a thing with "+SPAWNCEILING" flag now works the same way as when raising/lowering a regular thing.
Visual mode: using "Raise/Lower Floor/Ceiling to adjacent sector" actions on a thing with "+SPAWNCEILING" flag now works the same way as when using them on a regular thing.  
Rendering: even more fixes to MODELDEF and UDMF properties-related model rendering logic.
Internal, ResourceListEditor: rewritten resource validation check in a more OOP-ish way.
Configurations: fixed an infinite loop crash when a file was trying to include() itself.
UDMF thing flags: added Skill 6-8 to the flags list (because there are thing filters for these).
ZDoom_ACS.cfg: added definitions for SetTeleFog and SwapTeleFog.
ZDoom_DECORATE.cfg: added definitions for A_SetTeleFog and A_SwapTeleFog.
Updated ZDoom ACC.
Updated documentation.
2014-12-22 21:36:49 +00:00
MaxED
716d9d26f4 Rendering: MODELDEF "offset" property is now supported.
Rendering: mode fixes to MODELDEF and UDMF properties-related model rendering logic.
2014-12-11 12:55:35 +00:00
MaxED
f9b5399a39 Added AngleByteHandler (type 22).
Bit Flags form now changes width to show flags with long names without scrolling.
Bit Flags form: flag numbers are now shown as well as names.
Game configurations: updated Hexen and ZDoom linedef definitions. Now they (hopefully) fully match ZDoom ones. 
Action Selector Control: fixed a crash when trying to increase action above maximum value using mouse wheel.
Sector/Linedef/Thing tag lists are now handled by corresponding TypeHandlers (and not by dirty hacks as before).
Linedef info panel: line peggedness labels were obscured by effect label in Doom/Hexen map formats.
2014-12-08 21:06:08 +00:00
MaxED
15b2adfe30 Texture Browser Form: swapped foreground and background colors of texture size labels.
Fixed, Texture Browser Form: well, I broke "Tab" key functionality again (in previous commit)...
Maintenance: changed curly braces style to match DB2 one (hopefully not breaking anything in the process...).
Maintenance: changed private method names casing to match DB2 one.
2014-12-03 23:15:26 +00:00
MaxED
99f3ba2844 Changed long texture names handling. Texture names conversion is no longer required.
Texture browser form: added "Long texture names" check-box. It can be used to toggle between displaying long and short texture names.
Texture browser form: added "Show image size" check-box.
Texture browser form: image size is now shown differently.
Image Selector: added a button to toggle between long and short texture name.
Linedef info panel: long texture names are now displayed properly.
Sector info panel: long texture names are now displayed properly.
Fixed: "Save Screenshot" and "Save Edit Area Screenshot" actions were triggered multiple times when a child window was open.
Fixed: used textures should be always updated after using "Change map in current WAD" action.
Fixed, "Change map in current WAD": fixed a crash when trying to switch from a map with missing game configuration path.
Updated ZDoom_ACS.cfg.
2014-12-03 09:06:05 +00:00
MaxED
6b765f5a27 Added long texture names support (enabled when "longtexturenames" game configuration property is set to true and "Use long texture names" check box is checked in Map Options).
Open Map in Current WAD: resources are now reloaded when current and target map's resources don't match.
Added some boilerplate to UniversalParser and PK3FileImage.
Internal: ImageSelectorControl now has "UsePreviews" property.
Internal: added ConfigurablePictureBox.
Updated ZDoom_DECORATE.cfg.
2014-11-25 11:52:01 +00:00
MaxED
613e51ce41 Internal: removed GameConfiguration.MapLumpNames, instead GameConfiguration.MapLumps is now used.
Internal: removed some unrelated stuff from NodesViewer.csproj.
2014-11-11 11:47:10 +00:00
MaxED
840cdf66bc Fixed: when switching to a different map format, all nodes with "nodebuild" property set to true in the "maplumpnames" block of current game configuration are now removed. 2014-11-02 19:02:01 +00:00
MaxED
05d097a713 Internal: removed ambiguous method override. 2014-10-23 13:04:01 +00:00
MaxED
e849c04112 Changed: when using "Save map" action, only .dbs file is saved when map was not changed.
Cosmetic: changed Angle Control's outline color.
2014-09-24 11:47:52 +00:00
MaxED
786caf3b34 ZDoom_ACS.cfg: added "DropInventory" function definition.
Visual mode: vertex handle size is now updated after closing the Preferences form.
2014-09-20 22:05:23 +00:00
MaxED
90689ad1dc Fixed a crash when saving a map after changing map format. 2014-08-30 18:12:07 +00:00
MaxED
7cce80f030 Selection groups are now stored in the map's .dbs file.
Rewritten Add to/Select/Clear group Edit menu handling.
2014-07-16 09:45:04 +00:00
MaxED
f2ba13d509 Fixed 2 bugs introduced in r1970:
Script names/numbers cache was not updated (no scripts were shown in the drop downs when using script setting actions).
SCRIPTS lump was not saved when saving a map.
2014-07-14 08:33:03 +00:00
MaxED
00688d4c7c Script type can now be chosen when creating a new map and changed in Map Options form.
BCC script compiler (https://github.com/wormt/bcc/) is now bundled with GZDB.
Main Form, "File" menu: only existing files are now added to the "recent files" list.
2014-07-11 10:13:26 +00:00
MaxED
17c793f17d "File -> Save Map Into" command: a map with previously used map name was deleted from the target wad if the command was used after changing current map name.
"File -> Save Map Into" command: added a confirmation dialog when a map with the same name already exists in the target wad.
2014-06-30 13:42:45 +00:00
MaxED
8555d75cd2 A r1959 change in ImageSelectorControl prevented inherited classes from showing properly in Visual Studio's designer.
Also made a bunch of methods static.
2014-05-20 09:09:28 +00:00
MaxED
a61bba2536 UDMF map format: increased maximum supported texture name length to 2048.
Preferences: added "Capitalize texture names" option (located in Preferences -> Appearance -> Additional options). When disabled, the casing of displayed texture names will match filenames for textures loaded form TEXTURES or pk3/pk7/folder resources.
Textures Browser: added support for displaying long texture names.
Errors list is now cleared when reloading resources.
Visual mode: added basic support for sector slopes (no UI for that feature yet).
2014-05-19 13:33:38 +00:00
MaxED
8599f18f4c "Reset" button was missing from "Draw Grid" settings.
Buttons order was messed up in editing modes toolbar after performing "Reload Resources" action.
Fixed editing modes toolbar layout.
2014-03-04 09:04:43 +00:00
MaxED
0369c969d1 According to dotnetperls.com, "new Dictionary<string, [anything]>(StringComparer.Ordinal)" works 17% faster than "new Dictionary<string, [anything]>()", so let's stick that everywhere and see what happens :)
Draw Curve Mode: added settings panel.
Sectors mode: added "Make Door" button to the toolbar.
Swapped Side panel and Info panel z-order. 
Interface: split toolbar into 3 separate toolbars. All toolbar buttons are now viewable at 1024x768.
Interface: grouped stuff in "Modes" menu a bit better.
Interface: added "Draw [stuff]" buttons to modes toolbar.
Interface: reorganized main menu. Hope it makes more sense now.
API: added General.Interface.AddModesButton() and General.Interface.AddModesMenu(), which can be used to add buttons to specific group in "Modes" toolbar and menu items to specific group in "Modes" menu, so actions, which behave like an editing mode, but are not part of one can be added there.
2014-02-26 14:11:06 +00:00
MaxED
3e5f85dc8f Game configurations: added "fixedrotation" property to dynamic lights, which use the angle property as a parameter.
Maintenance: removed a ton of redundant stuff.
2014-02-21 14:42:12 +00:00
MaxED
592887a086 Configurations: increased game configuration loading speed (in previous builds it took ~650 ms. to load a single game configuration, now it takes ~120 ms. to load all 64 of them). As a side effect, New\Open Map Options, Map Options and Game Configurations windows are now opened noticeably faster. The editor starts up a bit faster as well.
Configurations: all 64 game configuration are now available by default.
Game Configurations window: game configurations can now be disabled. This setting is mostly cosmetic. When a game configuration is disabled, it won't be shown in "game configuration" dropdowns in New\Open Map Options and Map Options windows. If a map's .dbs file specifies a disabled configuration, it will be picked as a map configuration anyway.
Linedefs mode: vertex insert preview logic used Highlight range instead of Stitch range (which is used when draw mode engages).
Visual mode: double-sided middle textures were not selected when using "Select" action with "with same texture" modifier.
Textures: some optimizations in patch blending code.
ZDoom ACS script configuration: added definitions for StrLeft, StrMid and StrRight functions.
2014-02-18 14:04:14 +00:00