Commit graph

209 commits

Author SHA1 Message Date
MaxED
5fd02a6080 Updated Scintilla control to ScintillaNET 3.5.6 (https://github.com/jacobslusser/ScintillaNET). Scintilla.dll is no longer used by GZDB and can be safely removed.
Changed, Script Editor: pressing Ctrl-S when fixed compilable script tab (like SCRIPTS tab) is selected now compiles the script.
Fixed, Error Logger: fixed slowdowns when adding lots of errors and "Errors and Warnings" window was opened.
Fixed, Script Editor: text caret was incorrectly positioned after selecting a function in the navigator dropdown.
Fixed, Script Editor: incorrect ACS configuration was used for SCRIPTS lump for maps in Hexen map format for ZDoom-based engines.
Internal, rendering: added more error reporing-related code to D3DShader.LoadEffect().
Updated ZDoom_DECORATE.cfg.
2016-01-27 14:08:15 +00:00
MaxED
2cbe6640a6 Fixed, Visual mode: in some cases ceiling glow effect was interfering with Transfer Brightness effect resulting in incorrectly lit sidedef geometry.
Fixed, Visual mode: UDMF sidedef brightness should be ignored when a wall section is affected by Transfer Brightness effect.
Fixed, Visual mode: any custom fog should be rendered regardless of sector brightness. 
Fixed, Visual mode: "fogdensity" and "outsidefogdensity" MAPINFO values were processed incorrectly.
Fixed, Visual mode: in some cases Things were rendered twice during a render pass.
Fixed, Visual mode: floor glow effect should affect thing brightness only when applied to floor of the sector thing is in.
Fixed, TEXTURES parser: TEXTURES group was named incorrectly in the Textures Browser window when parsed from a WAD file.
Fixed, MAPINFO, GLDEFS, DECORATE parsers: "//$GZDB_SKIP" special comment was processed incorrectly.
Fixed, MAPINFO parser: "fogdensity" and "outsidefogdensity" properties are now initialized using GZDoom default value (255) instead of 0.
2016-01-25 13:42:53 +00:00
MaxED
f0643cbd04 Updated, Visual mode: classic skies are now rendered much closer to the way GZDoom renders them.
Fixed, Visual mode: "Select with the same texture" action should not select invisible geometry (like sidedef parts hidden by slopes).
Changed, Sector drawing: default sector height is now used when the nearest sector's height is <= 0.
2016-01-14 11:39:52 +00:00
MaxED
37feaa5de1 Added, Visual mode: sky rendering. Currently classic skies and GLDEFS Skyboxes are supported.
Added "Toggle sky rendering" action and toolbar button.
Added, MAPINFO parser: the editor now recognizes map number from classic map definition format. Hexen MAPINFO is now properly parsed.
Added, MAPINFO support: if current map definition contains map name as a text string, it will be shown in the editor's header.
Changed: "Toggle dynamic lights rendering" now toggles between "Don't show dynamic lights" and "Show dynamic lights" when used in Classic modes. 
Changed, Things mode: lowered the opacity of dynamic light radii.
Changed, (G)ZDoom text parsers: empty include files now trigger a warning instead of an error and no longer abort parsing.
Fixed, Game configurations: moved Stalagmite:5050 thing to Doom block (so the editor no longer tries to load it for non-Doom game configurations).
Fixed(?), Visual mode: probably fixed a hard-to-trigger exception when sorting translucent geometry.
Fixed, Visual mode: floor glow effect was incorrectly applied to walls (was broken in R2452).
Internal: restructured most of MAPINFO and GLDEFS parsers. Should be more maintainable now.  
Updated ZDoom ACC.
Updated zdbsp to 1.19.
Updated documentation.
2016-01-11 13:00:52 +00:00
MaxED
59da0cf2b1 MODELDEF, DECORATE, GLDEFS parsers: fixed a crash when checking a file path when said path contained unsupported characters. 2016-01-01 18:10:16 +00:00
MaxED
4920091e71 Fixed a crash after pressing "Edit Selection" button in the Find and Replace window when several instances of the same map element were selected.
Redesigned the Test Map button's drop-down: test engines are now shown and behave the same way as skills and also have appropriate icons.
2015-12-29 11:44:32 +00:00
MaxED
3a35b7603a Fixed, Map Analysis mode, "Check stuck things" check: rewritten parts of the flags checking logic to allow more accurate flag checks.
Fixed, Map Analysis mode: fixed a crash when trying to dissolve an invalid sector when one of it's linedefs referenced it on the both sides.
Fixed, Sectors mode: fixed incorrect undo description when deleting sectors.
Internal: joined declaration and assignment of some more variables.
2015-12-28 15:01:53 +00:00
MaxED
f6f277065f ACS parser: fixed several cases when #include and #import directives were processed incorrectly.
Internal: joined declaration and assignment of some variables.
2015-12-27 21:54:50 +00:00
MaxED
f86bc370d9 Fixed, GLDEFS parser: in some cases the parser was unable to detect the end of "Glow" block, which resulted in skipping the rest of the file. 2015-12-27 00:13:31 +00:00
MaxED
f3fbf241d9 Fixed, text parsers: in some cases include directives were processed differently from ZDoom.
Fixed, ACS parser: absolute and relative include paths handling was broken in R2448.
2015-12-21 14:17:47 +00:00
MaxED
b9eba267db Added ANIMDEFS CAMERATEXTURE support.
Some internal changes in text parsers logic.
2015-12-18 10:16:53 +00:00
MaxED
dbcc57b7a6 Fixed, Script Editor: file was marked as changed when changing script configurations.
Fixed, Script Editor: in some cases clicking on an error in the errors list didn't navigate to the error location.
Fixed, Script Editor: in some cases incorrect error line number was shown.
Fixed, Text lump parsers: fixed a crash when trying to get a filename from a quoted string with missing closing quote.
Fixed, Text lump parsers: in several cases parsing errors were ignored by overlaying data structures.
Fixed: in some cases Thing Filter thing flags were cleared when switching game configurations in the "Game Configurations" window.
Changed, PK3 reader: loading of files with invalid path chars is now skipped instead of skipping loading of the whole resource. Also more helpful warning message is now displayed.
Updated SharpCompress library to v.0.11.2.0.
2015-12-17 10:07:28 +00:00
MaxED
a35a336527 Added, Things mode: dynamic light things light radii are now rendered (can be disabled by setting "Dynamic light mode" to "Don't show dynamic lights" on the top toolbar).
Internal, Renderer2D.RenderArrows(): only visible lines are now rendered.
Internal, API: renamed public Line3D properties: v1 to Start, v2 to End, color to Color, renderarrowhead to RenderArrowhead.
2015-12-14 12:34:31 +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
e3cbe79113 Fixed, ACS parser: fixed another crash when trying to load zero-length acs lump/file. 2015-11-28 23:31:54 +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
dfdcaaf696 MODELDEF support: model frame number is now taken into account when loading MD3 models.
MODELDEF support: model frame number / frame name are now taken into account when loading MD2 models.
Compiling: changed the way /LARGEADDRESSAWARE flag is applied so it works when building using VS and batch files.
2015-11-17 12:22:49 +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
13c3155db5 Removed "Paste Properties Options" action.
Added "Paste Properties Special" actions in "Classic" and "Visual" categories. They work the same way as "Paste Special" action.
Added: "Copy Properties", "Paste Properties" and "Paste Properties Special" options are now shown in the Edit menu if current classic mode supports them.
Changed, Paste Properties Special window: only options relevant to current map format are now displayed.
Changed, Paste Properties Special window, UDMF: all UI-managed options are now available.
Fixed: MAPINFO parser was unable to process "include" directives.
Fixed, General interface: selection info was reset to "Nothing selected" after few seconds regardless of current selection.
Fixed, Visual mode: thing bounding boxes were not updated when changing things positions using Randomize mode.
Fixed, Visual mode: event lines were displayed at incorrect height when entering Visual mode for the first time.
Fixed, Texture Browser window: when MixTexturesFlats Game Configuration option is disabled, textures/flats are no longer shown in the Used group when flats/textures with the same names are used in the map. 
Fixed(?): probably fixed an exception some users reported when trying to initialize a Classic mode after switching from Visual mode with "Sync cameras" option enabled.
Changed, Game configurations, Thing Categories: a block must have at least one thing category property to be recognized as a thing category.
Changed, Visplane Explorer: the plugin now outputs more info when it fails to initialize vpo.dll.
Cosmetic, Thing Edit window, Doom/Hexen map format: adjusted UI layout so thing flags control no longer displays scrollbars in Hexen map format.
Internal: merged methods from UDMFTools into UniFields, removed UDMFTools. 
Updated Inno Setup script (added VC++ 2008 SP1 distributive). 
Updated ZDoom_DECORATE.cfg (A_CheckBlock).
Updated documentation (added "System Requirements" page).
2015-10-09 12:38:12 +00:00
MaxED
283c6c2272 Visual mode: noticeable performance boost (rendering now works ~40% faster).
Visual mode: fog distance calculation is now much closer to GZDoom one.
Visual mode: thing brightness calculation when a thing is affected by floor glow is now much closer to GZDoom one.
Linedef edit window, UDMF: added "Reset front/back brightness" buttons.
Sector edit window, UDMF: added "Reset ceiling/floor brightness" buttons.
Internal, Visual mode, Things mode: persistent event lines are now updated only when map objects are changed instead of doing it on every display redraw.
Internal: improved Dictionary lookup times when using map objects and textures as keys.
Internal: added "Release + Profiler" solution configuration.
Updated ZDoom_ACS.cfg (Warp).
2015-10-02 14:47:34 +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
ff265d87f9 Added some boilerplate to the rendering system. It's now impossible to start new rendering cycle if the previous one hasn't finished yet.
Changed: OS name, GPU name and GZDB revision info are now added to the exception text and GZCrash.log.
Fixed, cosmetic: toolstrip separators visibility must be updated when resizing the main window.
Internal: removed Plug.DisplaySize, Plug.DisplayLocationAbs and Renderer.ViewportSize. The same data can be accessed from anywhere using General.Interface.Display.Size and General.Interface.Display.LocationAbs. Also Plug.DisplayLocationAbs returned incorrect coordinates...
2015-09-17 12:02:39 +00:00
MaxED
25b3bf2287 Added, Texture Browser: added "Show textures in subdirectories" checkbox (enabled by default). When enabled, textures from current PK3/PK7/Directory resource directory and it's subdirectories will be shown. Otherwise, only textures from current directory will be shown.
Removed, Texture Browser: removed "Show image sizes" checkbox. "Show texture and flat sizes in browsers" preferences setting is now used instead.
Fixed, Things mode: event line between pre-last and the last PatrolPoint was not drawn.
Fixed, Things mode: highlight range for sizeless things (things with "fixedsize" game configuration property) was calculated incorrectly.
Fixed: fixed a crash when opening Script Editor after using "Open map in current wad" command to switch to UDMF map with SCRIPTS lump when current script configuration was not saved in the wad's .dbs file.
Fixed: map closing events were not triggered when using "Open map in current wad" command, which could potentially result in plugin crashes/incorrect behavior.
Fixed: Sector Drawing overrides panel could trigger an exception when closing the map during resource loading.
Internal: added "Debug + Profiler" solution configuration, added 2 profiling methods to DebugConsole.
Internal: rewrote MainForm.DisplayStatus() / StatusInfo to handle selection info in a more structured way.
Fixed, internal: some destructors could potentially be executed more than once potentially leading to exceptions. Other destructors were not called at all.
Updated ZDoom_DECORATE.cfg.
2015-09-16 12:10:43 +00:00
MaxED
deb65258ae Added, Visual mode, GLDEFS, GLOOME: subtractive glow is now supported.
Changed, Visual mode: changed thing fog calculation logic. Should be closer to GZDoom now.
Fixed, GLDEFS parser: "height" texture parameter was not treated as optional.
Fixed, text lump parsers: in some cases incorrect line number was displayed in error and warning messages.
Fixed, Visual mode: glow effect was not applied to sectors with 3 sidedefs.
Fixed, Visual mode: in some cases glow effect was not updated when replacing textures. 
Fixed, general interface: "Full Brightness" button state was not updated during map loading.
Fixed, Drag Linedefs/Vertices/Sectors/Things modes: positions of line length labels were not updated while panning the view.
Cosmetic: added a bunch of new icons.
Cosmetic: changed Visual mode crosshair.
2015-08-27 20:46:49 +00:00
MaxED
c0fbf5e71e Fixed, MAPINFO parser: map/defaultmap/adddefaultmap sub-blocks were not skipped properly.
Changed, General interface: all main menu toolbars are now visible when starting the editor for the first time.
Changed, General interface: "Prefabs" and "Edit" menus are now hidden when no map is loaded.
Changed, General interface: moved "Dynamic Grid Size" menu item to the "Edit" menu, also moved the button to the matching position on the toolbar.
Changed, General interface: changed "Show Comments" menu item position in the "View" menu, also moved the button to the matching position on the toolbar.
Game configurations: removed "gamedetect" block, because it was unused by the editor.
Updated documentation ("Map Format Settings" page).
2015-08-23 23:32:12 +00:00
MaxED
415a3644c7 Changed, curved event lines, Visual mode: associated lines were not rendered as curved when the control object was not on screen [Xabis' patch #3].
Game configurations: removed "GZDoom only" from FraggleScript actions (because FraggleScript can be used in ZDoon).
Internal: fixed a couple of bugs in DebugConsole.StopTimer();
2015-08-16 23:42:57 +00:00
MaxED
1b26fa35f1 Fixed, Things mode, curved event lines: in some cases IsCurved property was not applied to all InterpolationPoints in a path. 2015-08-10 18:31:27 +00:00
MaxED
527d3cf5dc Added, Things mode, Visual mode: event lines for InterpolationPoints are now curved when appropriate setting is enabled in the control thing (PathFollower/ActorMover/MovingCamera) [heavily inspired by Xabis' patch].
Added, Things mode: the editor will try to reconnect the path when deleting InterpolationPoints and PatrolPoints.
Internal: RenderArrows method now works the same way in Renderer2D and Renderer3D.
Internal: Line3D now has "renderarrowhead" property.
2015-08-08 21:56:43 +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
b3ab923487 UDMF: most of the code now supports multiple sector/linedef tags ('moreids' UDMF property). The only things left out are Tag Explorer and Tag Range plugins. 2015-07-28 15:04:21 +00:00
MaxED
45e303b2c8 UDMF: implemented 'moreids' handling. Currently this includes the core stuff, new TagsPicker control in Edit Sector/Linedef windows and updated Sector/Linedef Info panels. 2015-07-27 21:35:42 +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
c6f9146b8b Fixed, DECORATE parser: enums were not handled properly.
General interface: selection info is now always displayed.
Visual mode: you can now hold Alt-Shift or Ctrl-Alt while selecting sidedefs to stop selecting connected sidedefs when already (un)selected sidedef is encountered.
Added, Numeric Textbox: you can now use "+++" and "---" prefixes to incrementally increase or decrease result values by given value.
Fixed, Numeric Textbox: fixed a potential divide by zero exception when using "/" prefix in numeric textboxes with decimal input enabled.
Fixed, Thing Info panel: relative z position of things with "+SPAWNCEILING" flag was incorrect.
Changed: Update checker now displays messages using MessageBoxes when called manually.
Map Analysis: changed result descriptions for Unknown Texture and Missing Texture checks.
Doom map format: renamed "Secret" linedef flag to "Shown as 1-sided on automap".
Updated ZDoom_DECORATE.cfg (A_RadiusGive stuff).
2015-07-26 23:18:13 +00:00
MaxED
1118fd6b98 Changed: "Show Comments" option should also control whether comment tooltips are displayed.
Added some boilerplate to CommentsDocker.
Internal: converted a bunch of if-elses to switches.
2015-07-15 09:09:47 +00:00
MaxED
8f2c6e3f60 Classic modes: added "Show models for current things filter only" model rendering mode.
Things Filters: things filters can now be inverted (added "Invert Filter" checkbox to the Things Filters window).
2015-06-27 09:10:24 +00:00
MaxED
6eef13c252 Fixed: X and Y scale, defined in MODELDEF, were applied incorrectly. 2015-06-26 14:44:57 +00:00
MaxED
540eb2fda8 Classic modes: changed the way event lines are rendered. Should work much faster now. Event lines are now displayed while panning the view. 2015-06-24 21:21:19 +00:00
MaxED
a523f7eb28 Changed, Visual mode: models and lights are much less prone to disappear when near the edges of the screen.
Fixed, Classic modes: MODELDEF model scale was not taken into account when calculating model visibility, which resulted in models with increased scaled disappearing when near screen edges.
2015-06-22 19:52:23 +00:00
MaxED
d561371110 MD3 reader: fixed a crash when trying to load a skin when skin names were used as a relative path in a model with several surfaces (and boy this description is much longer than the fix itself :) ). 2015-06-21 21:35:28 +00:00
MaxED
3e70792915 Changed, Internal: ZDTextParser.ReadToken() now returns empty string instead of null when it's unable to read a token. This fixes many potential crashes when trying to parse malformed data (and hopefully doesn't bring new bugs...). 2015-06-18 19:45:39 +00:00
MaxED
35fd6e1dcc Fixed, Thig Edit Form, UDMF: Scale x/y linking status was not stored when closing the form.
Fixed, Engine Launcher: "%AP" test parameters placeholder was replaced with "" when current map was newly created and never saved.
2015-06-14 19:29:44 +00:00
MaxED
4034bd4c0c Fixed, Visual mode: in some cases info lines for polyobject setup things were not shown.
Fixed, Visual mode: z position of info lines for polyobject setup things was calculated incorrectly.
Updated ZDoom_DECORATE.cfg.
2015-06-03 13:20:06 +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
1d988b087c Fixed, Visual Mode: voxel models were not rendered in full brightness mode. 2015-05-27 11:05:57 +00:00
MaxED
cfae82afe4 Added some disposers here and there. 2015-05-27 10:34:25 +00:00
MaxED
8257c6869b Added, MAPINFO parser: we can also get "skyflatname" gameinfo property while we at it. 2015-05-23 21:40:21 +00:00
MaxED
2fe402b165 Fixed, MAPINFO parser: properties, written like '667=CuteCaco' were not parsed, while '667 = CuteCaco' worked fine.
Changed, Classic modes: increased maximum zoom level to 9000% (was 3000%).
Added, General interface: added "800%" zoom level to the bottom toolbar zoom menu.
Added, General interface: added "400%" and "800%" zoom levels to "View -> Zoom" menu.
2015-05-18 18:49:15 +00:00
MaxED
f30c1ba0c6 Fixed, MAPINFO parser: the parser was unable to handle DoomEdNum block's action special definitions.
Fixed, DoomEdNum handling: in some cases ThingTypeInfo was not assigned a proper DoomEdNum and was not placed in a ThingCategory.
2015-04-29 08:36:10 +00:00
MaxED
c2b3e92673 Fixed, ACS script names parser: we should skip inner scopes of scripts and functions.
Updated ZDoom_DECORATE.cfg.
2015-04-28 08:31:06 +00:00