Commit graph

51 commits

Author SHA1 Message Date
ZZYZX
09b8c27dab Merge anotak's optimizations - stage 1 2017-02-08 14:18:01 +02:00
ZZYZX
ebd7fb1a57 Upgrade to VS2015 (14.0) 2017-01-15 00:35:40 +02:00
MaxED
447851e457 Added, Textures Browser: redesigned textures list. Textures preview size can now be changed from the Textures Browser window. Folders are now shown in the textures list.
Fixed, Script Editor: Find and Replace window now sets keyboard focus to the input textbox when opening the window/switching between tabs.
Fixed, Nodes Viewer mode: SEGS overflows were not handled, causing a crash. Also extended SEGS limit is now used.
Updated ZDoom_DECORATE.cfg (A_SetSize).
2016-12-22 15:04:40 +00:00
MaxED
21cab1d134 Added, Game configurations, ZDoom: Ambient sound things (14001 - 14064) were missing arguments definitions.
Fixed, Make Sectors mode: in some cases sector shape detection logic returned incorrect shape, or no shape at all.
2016-11-21 13:03:19 +00:00
MaxED
bfd57379bb Added, Map Analysis mode: added "Check unknown ACS scripts" error check.
Added, Map Analysis mode: added "Edit Thing..." option to "Unknown Thing" and "Obsolete Thing" error check results.
Added: a warning is now displayed when a thing has both voxel and model attached.
Changed, Thing/Linedef Info panels: unknown ACS script names/numbers are now shown in red.
Fixed, Edit Things window, UDMF: unneeded undo was created when opening the window.
Re-fixed: in some cases invalid sectors were created after dragging map elements when using "Merge Dragged Geometry" and "Replace with Dragged Geometry" drag modes, when at least one of dragged linedef was facing into an enclosed void area (previous fix entirely disabled the associated logic).
2016-09-12 14:08:45 +00:00
MaxED
f7a1a64db0 Added, UDMF: Lock number is now displayed in Linedef info panel.
Fixed, Edit Linedefs / Edit Things windows: ACS script number/name was applied only when the form was accepted while displaying a tab with Action controls.
2016-06-16 22:57:20 +00:00
MaxED
6ff0a32279 Fixed, Thing/Linedef/Sector info panels: in some cases map element flags were cut off by the control border. 2016-06-14 20:39:46 +00:00
MaxED
4c60662374 Script Editor, Script Editor configurations: added additional keywords category for properties/operators. Added a separate color for those as well.
Fixed, Script Editor: auto-completion and syntax highlighting now works for properties with dots (like "Powerup.Color") and colon (like "See:").
Fixed, Linedef info panel, Hexen map format, cosmetic: activation type should be enabled when the line has an action assigned, even if it's default activation.
Updated ZDoom_linedefs.cfg (Line_SetPortal).
2016-02-06 21:23:43 +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
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
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
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
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
45dca2be46 Fixed, Thing, Linedef, Sector info panels: flags panel resize logic was a bit incorrect... 2015-04-12 22:29:22 +00:00
MaxED
ddd057950f Changed, Thing, Linedef, Sector info panels: flags are now shown in the same order as in corresponding Edit forms.
Changed, Linedef info panel: activation flags are now displayed before "regular" flags and using different color.
Added, Linedef info panel: sidedef flags are now displayed.
2015-04-12 21:05:09 +00:00
MaxED
1b1546ae6a Fixed(?), Texture Browser: possibly fixed Texture Browser not showing up / locking edit forms when current map has a ton of textures (like 2000 or more) in a single texture group.
Changed, cosmetic, Sector Info panel, Visual mode: info about currently highlighted surface is now shown using different color.
Changed, cosmetic, Linedef Info panel, Visual mode, non-UDMF: texture offset labels for currently highlighted sidedef are now shown using different color.
Changed, cosmetic, Vertex Info panel, UDMF: floor and ceiling offset labels are now grayed out when they have default values.
2015-03-23 22:39:31 +00:00
MaxED
fcac2d12f3 Fixed, Thing/Linedef/Sector info panels: "Flags" group width was calculated incorrectly when showing the control for the first time. 2015-03-23 20:16:14 +00:00
MaxED
52ab917179 Visual Mode, UDMF: Change texture scale actions now try to change scale by one texture/sprite pixel at a time. Action info now also shows scaled texture/sprite size.
Info panels: float values are now formatted regardless of current CultureInfo (e.g. decimal separator is now always dot). Also, they are no longer clamped to 2 decimal places.
Updated ZDoom_ACS.cfg.
2015-03-03 09:42:54 +00:00
MaxED
5f37b315d4 Visual mode: Sector_Set3dFloor and ExtraFloor_LightOnly effects now affect sidedef brightness more similarly to GZDoom.
Visual mode, Linedef info panel: info for currently highlighted side is now shown using a different color.
Updated ZDoom_ACS.cfg.
2015-02-25 19:59:17 +00:00
MaxED
cde97f2cfe Fixed, Edit Selection: in some cases thing angles were updated incorrectly when things with "FixedRotation" game configuration property were among selected things.
Fixed, Visual mode: floor brightness was calculated incorrectly when "Disable Light Effects"/"Restrict light inside" 3d floor flags were used and the floor had "lightfloor" property.
Fixed: "lightabsolute" flag was accessed incorrectly in previous commit.
2015-02-06 21:03:20 +00:00
MaxED
844ad7db79 Fixed, Texture previews: texture size labels were displaying incorrect size or no size at all when showing TEXTURES textures with negative scale.
Fixed, Visual mode, UDMF: when several wall parts were selected, only one could be dragged with the mouse.
Fixed, Visual mode, Auto-align textures, UDMF: TEXTURES scale is now taken into account when aligning textures.
Fixed, Visual mode, Auto-align textures (Y), UDMF: nearest height matching is now applied to non-wrapped middle backsides.
Cosmetic changes in ZDoom_ACS.cfg.
2015-01-27 11:40:25 +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
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
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
29437409d4 Linedef Info panel: tag text is now set in a more reliable fashion. 2014-03-14 14:21:34 +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
88b12750c1 Linedef info panel: tag is no longer shown in Hexen map format.
Numeric textbox: in addition to '++NN' and '--NN', you can use '*NN' and '/NN' to multiply or divide the values.
Configurations, ZDoom_linedefs.cfg: some linedef action arguments were missing a proper type.
Rewritten parts of hints system. Hints are now loaded from "Hints.cfg" file.
2014-01-23 13:36:51 +00:00
MaxED
88a6f5a46c Thing Info panel, Linedef info panel: tag labels are now displayed for action arguments. 2014-01-16 13:08:41 +00:00
MaxED
e487a9c80a Added Draw Grid mode.
When Draw Rectangle or Draw Ellipse mode is enabled, it's settings are now shown in side panel.
Draw Ellipse mode: increased maximum number of sides to 512.
Changed the way tags are shown in Tag Selector controls. Tags without labels are now shown as a number (not "Tag N"), and tags with label are now shown as "N (label)", not "label (N)".
Tag labels are now shown in Thing, Sector and Linedef info panels.
Once again changed the way things are rendered while dragged.
Rearranged the label in PairedIntControl and PairedFieldControl (it is now behind numeric controls).
Optimized MapSet.GetSectorByCoordinates().
2014-01-16 09:32:05 +00:00
MaxED
a99811a106 Linedef info panel, UDMF: activation flags were not shown in flags panel and were causing exception.
Linedef info panel, Hexen map format: activation is now shown.
2013-12-06 11:21:10 +00:00
MaxED
890fd10b7f Linedef info panel: linedef flags are now shown.
Removed 15 Mb of unused files (3 DB2 splash screen sources).
2013-12-05 14:04:25 +00:00
MaxED
fc57c3e331 Replaced massive amount of spaces with (massive amount of tabs / 4) 2013-09-11 09:47:53 +00:00
MaxED
f35e39de01 Linedef info panel: texture preview was not updated in some cases.
Visual mode: fixed major slowdowns and possible out of memory exceptions when viewing a map with lots of missing textures.
2013-08-05 13:46:43 +00:00
MaxED
993328b57b Textures with names starting with "-" were not processed correctly.
Textures were not loaded properly from PK3/PK7 archives.
Visual mode: restored ability to remove textures using Delete action.
Visual mode: fixed several bugs in Cut/Copy/Paste things actions.
Visual mode: vavoom style 3d floors were not displayed properly.
Visual mode, 3d floors: added support for "RestrictLighting" (2) flag.
Visual mode, 3d floors: inner sides of 3d floors with "swimmable"/"render inside" flags used incorrect brightness value.
2013-07-31 12:38:47 +00:00
MaxED
cf3d416967 Renderer now works much faster in 2D modes.
Textures now load up to 2x faster when "mix textures and flats" flag is set in game configuration.
TEXTUREx/TEXTURES: texture will now be created if at least one of it's patches is loaded.
Visual mode: fixed a crash when "Slope floor to here" (9500) or "Slope ceiling to here" (9501) things were not inside sector.
Fixed: flats were not loaded form wads inside Directory and PK3/PK7 resources.
Sector Info Panel, Linedef Info Panel: texture size was shown for unknown textures.
2013-07-29 08:50:50 +00:00
MaxED
b77b8e61d9 Visual mode, UDMF: added "Scale Texture Up (X)", "Scale Texture Down (X)", "Scale Texture Up (Y)", "Scale Texture Down (Y)" actions. Default keys are Num6, Num4, Num8, Num5.
Visual mode, UDMF: renamed "Rotate Thing Clockwise" and "Rotate Thing Counterclockwise" actions to "Rotate Clockwise" and "Rotate Counterclockwise". These actions can now be used to change rotation of floor/ceiling textures.
Visual mode, UDMF: "Reset Texture Offsets" action now also resets sidedef's scale and floor/ceiling's scale and rotation.
Visual mode, UDMF: control line's OffsetX and OffsetY were not taken into account when calculating texture offsets of 3d floors' sides.
Visual mode, UDMF: fixed a ton of bugs in Auto align functions.
Visual mode, UDMF: when using "Move Texture Left/Right/Up/Down by 1" actions texture offsets were not updated properly when texture's scale was < 1.0.
Visual mode, UDMF: OffsetX and OffsetY were not taken into account in "Fit Texture Width/Height" actions.
Dockers Panel: added Pin/Unpin button, which acts the same as "Preferences -> Interface -> Side panels -> Auto hide" checkbox.
Texture size labels can now be disabled by unchecking "Preferences -> Interface -> Show texture and flat sizes in browsers" checkbox.
Texture size labels now are not shown for unknown textures.
Most of texture size labels had incorrect bg color.
ZDoom_linedefs.cfg: action specials 223 and 224 had incorrect Arg0.
2013-06-24 14:21:13 +00:00
MaxED
962ea2b80e Texture browser form: texture size was not updated after loading a texture.
+ some fixes to previous commit.
2013-06-17 14:09:29 +00:00
MaxED
806db41ced Texture size is now shown in Linedef and Sector info panels and in Linedef and Sector edit forms. 2013-06-17 13:17:53 +00:00
MaxED
8cf9e651cc Removed a metric ton of unused "using" directives from Core. 2013-04-11 11:04:16 +00:00
MaxED
8b91176fb0 Restored "Texture offset" input in Linedef edit and Linedef info panels for UDMF format.
Added several UDMF properties to ZDoom configuration.
2012-11-05 21:53:45 +00:00
MaxED
6b62b4f3d2 Added multiple engine support for any game configuration.
Floor and ceiling textures are now moved more predictably by arrow keys in GZDoom Visual mode.
Walls texture coordinates are always rounded when moved by arrow keys in Visual modes.
Linedef info panel: relative UDMF light values are now shown like this: 16 (128), which means "UDMF light value" ("total surface brightness (UDMF light value + sector brightness)")
Player is now spawned at camera height when testing from current location in Visual modes.
Focus is now properly restored after testing from current location in Visual modes.
Updated Heretic_sectors.cfg and Heretic_things.cfg as described here: http://www.doombuilder.com/forums/viewtopic.php?f=11&t=357
Changed sprites of artifacts in Hexen_things.cfg to proper ones.
Renamed Skulltag configs to Zandronum
2012-11-02 23:11:38 +00:00
MaxED
ca9c464526 UDMF light editing in GZDoom Visual mode: sector brightness is changed instead of "lightceiling" property if targeted ceiling is part of 3D-floor.
UDMF Controls: increased precision of position and scale controls numeric inputs to 2 decimal places.
Sector/Linedef info panels: in some cases incorrect default values were shown for scale.
Sector/Linedef info panels: numbers are formatted more properly.
2012-10-05 13:16:38 +00:00
MaxED
1b6f8c97f9 Builder 1.13:
UDMF: changing brightness of a wall or ceiling in GZDoom Visual mode will change brightness of selected surface, not sector brightness.
Sector and Sidedef info panels show additional info if a map is in UDMF format.
Fixed: GZDoom menu panel wasn't updated when a map was opened via "recent files" item click.
2012-10-03 18:46:13 +00:00
MaxED
5cb573d938 GZDoom Builder 1.11:
Enhanced scripting workflow.
Thing and linedef arguments can now have default value in configuration files.
Fixed laggy visual camera movement on systems with big uptime.
Fixed incorrect alignment of Things with "hangs" flag in GZDoom Visual mode.
Fixed Editor crash when nodebuilder fails to build map. A window with error description will be shown instead.
Doom light levels were used even in maps in non-doom map format.

Tag Explorer plugin:
Elements list wasn't updated when map element was deleted.
Pugin wasn't disposed properly, which may led to Doom Builder 2 crash on map close.
Fixed plugin crash after opening another map.
Fixed unresponsive text entry in Filter text box.
Fixed plugin crash when Doom Builder can't determmine thing category ("UNKNOWN" category will be used instead).
2012-07-10 10:20:45 +00:00
boris_i
cdddeffa80 - Fixed a problem in the linedef info panel where the linedef numbers was displayed instead of the sidedef number
- Fixed a problem where dragging geometry and things onto the window title bar locked up DB2
- Fixed a problem with wrong texture offsets of hi-res textures
2010-01-02 22:06:40 +00:00
codeimp
64d06d0417 Added sidedef sector numbers on the linedef info panel 2009-06-12 09:22:09 +00:00
codeimp
f09bfff419 @ Changed the MapSet to work with arrays instead of linkedlists. Because the index is now know for each element and can be retrieved in O(1) efficiency it has become a property (Index) for all map elements. GetIndexFor* functions have been removed. Get*ByIndex are now also of O(1) efficiency. 2009-06-05 19:03:56 +00:00