Commit graph

131 commits

Author SHA1 Message Date
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
33a35e2148 Import Wavefront .obj as Terrain mode now works in all map formats.
Import Wavefront .obj as Terrain mode: floor height of each created sector is now set to the average height of an .obj polygon it was created from.
Import Wavefront .obj as Terrain Settings window: added "Use slopes" checkbox. When enabled, the mode will create slopes using vertex height offsets (UDMF) or Floor Vertex Height things (1504).
Fixed, Visual Mode: things were rendered at wrong height after using "Lower/Raise Height" actions in sectors with sloped floor (or ceiling for ceiling-aligned things) 
Fixed: info panel was not updated after switching to another Edit Mode.
2014-12-10 21:11:56 +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
77ba424fdd Fixed: it's now impossible to set grid size smaller than 1. 2014-11-02 17:15:04 +00:00
MaxED
badd7dcea8 Fixed: undo list must be cleared during "Switch map in current wad" action.
Fixed incorrect non-UDMF <-> UDMF skills translations in Strife_misc.cfg.
2014-10-23 08:18:14 +00:00
MaxED
697069e27b Texture Browser Form: some minor logic fixes (no texture groups were selected when initial texture was empty and no texture group was stored in the program configuration).
Texture Browser Form: don't save current texture group when the form was canceled.
Keyboard Shortcut Reference export: generated html will now be saved to program configuration folder if working folder is write-protected.
Internal: added SupportedMapFormats property to EditModeAttribute. A mode with this property specified will be available only in specified map formats.
Interface: Ceiling Align Mode and Floor Align Mode are now enabled by default.
Interface: Ceiling Align Mode and Floor Align Mode are now only available in UDMF map format.
Interface: Visplane Explorer Mode is now available only in Doom map format.
2014-09-08 13:09:14 +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
9c7b8e4e3c Model rendering (all modes): UDMF scale, pitch and roll are now displayed.
Thing Edit Form, UDMF: added controls for setting pitch, roll, scale, render style, fill color, alpha, health and score.
Visual mode, UDMF: UDMF scale is now applied when rendering sprites.
Added Thing Statistics form (Edit -> View Thing Types...), which shows all loaded thing types with some additional info.
Visual mode: sprites with negative ScaleX and positive ScaleY were not rendered properly.
Classic modes: display was not updated after loading a sprite.
Current testing engine change was not saved on closing the program when no other game configuration settings were changed.
2014-04-30 10:01:22 +00:00
MaxED
8132584155 Find and Replace mode: added "Sector Floor Height" and "Sector Ceiling Height" search modes. 2014-04-07 08:48:02 +00:00
MaxED
71ad1199d8 The editor no longer locks up while testing the map. 2014-03-23 09:08:51 +00:00
MaxED
7faf6bc13e Linedef Edit Form, Sector Edit Form: when several map elements with different textures are selected, the "texture stack" icon is shown in the texture selectors instead of the "missing texture" icon.
Error Checker mode: added "Check missing flats" check.
Error Checker mode: fixed several descriptions. 
Sprite patches for sprites defined in TEXTURES are now loaded from Sprites namespace.
Some of my older texture alignment code didn't work properly when strict texture/flat handling ("mixtextureflats" game configuration flag set to false) was enabled.
Fixed some incorrect checks for missing texture ("-").
2014-03-05 09:21:28 +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
MaxED
8229cb8b71 Added "Go To Coordinates" action (available in "View" menu and via Ctrl-Shift-G shortcut). It will center the view on given coordinates in classic modes and place camera at given coordinates in visual mode. 2014-02-10 09:26:13 +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
75114595ed Sectors mode: hold Alt while (de)selecting sectors to (de)select things inside of them.
Sectors mode, rectangular selection: you can now hold Alt to select things inside of selected sectors.
Sector highlight is now shown when selecting sectors in Tag Explorer.
2014-01-13 12:49:54 +00:00
MaxED
013865e27d Voxels can now be loaded from WAD resources.
Reverted "Delete Item" action to the way it worked in DB2.
Added "Dissolve Item" action, which works the way "Delete Item" worked in previous revisions of GZDB.
Added "Auto Clear Sidedef Textures" action, "Edit" menu and toolbar button, which toggle automatic removal of sidedef textures when floor or ceiling height is changed or when geometry is drawn, copied or pasted.
Draw Settings panel: upper/lower texture overrides can now be used.
Draw Settings panel: added 2 sets of buttons, which allow to quickly set or clear textures in current selection.
Things are now rendered behind AND on top of the grid/linedefs/vertices when they are dragged.
Redesigned hints system. They are now shown in a side panel.
Edit area auto-focusing is now disabled when script editor is open.
Texture Browser form: no texture group was selected when opening the form in some cases.
Fixed several strange/misleading text messages.
2014-01-08 09:46:57 +00:00
MaxED
46feeb422f I keep forgetting that, unlike protected methods, Actions MUST be implemented in derived classes... 2013-12-26 08:07:40 +00:00
MaxED
87ff11cc0f Things are now rendered behind grid and linedefs/vertices when they are dragged.
Added hints for Drag Geometry modes.
2013-12-23 12:02:58 +00:00
MaxED
6a51cc7c01 Classic modes: bilinear filtering was used in full brightness mode regardless of preferences setting.
Classic modes: "Paint Selection" and "Toggle Full Brightness" actions can now be used from any plugin.
Fixed possible crash in DECORATE actor color override logic.
2013-12-23 09:51:52 +00:00
MaxED
0366f13c9a Flat textures were loaded incorrectly in some cases.
UDMF map parser should work ~35% faster now.
Texture browser form: keyboard focus was not updated when switching between textures using Tab key.
"Graphics" folder is now checked when searching for texture patches.
Various cosmetic changes here and there.
2013-12-20 09:24:43 +00:00
MaxED
ae56aad3b7 Hints panel was improperly resized in some cases.
Info panel was not updated after leaving Visual mode.
Moved hints logic to ClassicMode, so hints can be displayed by any plugin.
Visual mode: dynamic light animation was not working.
Minor performance improvements in Actor, Configuration, UDMF and TEXTURES parsers.
2013-12-18 09:11:04 +00:00
MaxED
9df67e8b22 Thing Info panel: thing action is no longer shown in Doom map format.
Sector and Thing Info panels: fixed possible crash when trying to show unknown thing/sector flag.
Hints were not shown properly when multiselection was started while highlighting a map element.
Copy/Paste actions work much faster now.
Classic modes: rendered grid size in now adjusted to current zoom level.
2013-12-17 08:19:40 +00:00
MaxED
47cebd9b20 Sectors mode: selected sectors geometry cache was not updated after undo/redo.
Updated hint system.
Corrected 2 typos in action names.
2013-12-11 08:47:11 +00:00
MaxED
4e52d9bb9c Sectors mode: optimized rectangular selection logic.
Sectors mode: optimized sector highlight rendering logic.
Sectors mode: optimized sector effect/tag labels update logic.
Geometry tools: optimized several core functions.
Hints for current editing mode can now be displayed when nothing is highlighted (currently the hints are shown only in Draw Geometry mode).  
GZDB is now build with LARGEADDRESSAWARE flag, which increases amount of RAM GZDB can use from 1.4 to 2.8 GB.
2013-12-10 12:19:27 +00:00
MaxED
fc57c3e331 Replaced massive amount of spaces with (massive amount of tabs / 4) 2013-09-11 09:47:53 +00:00
MaxED
5853624dc5 Updated documentation.
Increased maximum zoom level in Classic modes to 3000%.
Added "1 mp" option in grid size menu.
Added "400%" option in zoom menu.
Renamed "Toggle GZDoom rendering effects" action to "Toggle Geometry Effects".
Sync camera position: Visual Camera height is now changed only if camera is above or below current sector.
Classic modes: view was not redrawn after "Test map from current position" action.
"Test map from current position" action: incorrect player start was used when a map had several Player 1 Start things.
2013-08-19 12:12:31 +00:00
MaxED
3e31c39c20 Sector edit form, UDMF: added "Use line angles" floor/ceiling rotation option.
Some cosmetic changes in uifields management.
2013-08-12 10:15:08 +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
8cf9e651cc Removed a metric ton of unused "using" directives from Core. 2013-04-11 11:04:16 +00:00
MaxED
043590100b Rectangular Selection: removed direction-based additive/subtractive selection. You can now hold Ctrl to enable subtractive selection, hold Ctrl-Shift to intersect with existing selection.
Point Thing at Cursor action: action now works when used from menu, changed default shortcut to Shift-L. You can now hold Ctrl to point Things away from cursor.
2013-04-09 10:56:05 +00:00
MaxED
591f92cce6 Moving to new SVN... 2013-03-18 13:52:27 +00:00
MaxED
2006cdc7bb GZDoom Builder 1.12a:
AngleOffset, PitchOffset and RollOffset MODELDEF properties are now supported.
Fixed a crash when editor tries to display a model for an actor without a valid sprite in Visual mode.
Fixed a possible crash when MODELDEF is reloaded from 2d-mode.
Fixed several things in Doom2_things.cfg.
UDMF Controls plugin:
Fixed several bugs in plugin's sliders logic.
2012-07-28 20:36:28 +00:00
MaxED
70ea0658ed GZDoom Builder 1.12:
GZDoom Builder now uses SharpCompress.dll instead of SharpZip.dll.
Added PK7 archive support.
PK3 archives now load aprox. 40% faster.
Textures browser now shows Folder/PK3/PK7 folder structure.
TextureBrowserForm is now used to display both Textures and Flats.
ACS scripts from #include and #import directives are now shown in Script name/number dropdowns.
Fixed several cases when ACS scripts lists used in Edit Thing and Edit Linedef forms wasn't updated when they should've (i.e. after compiling a script).
2012-07-23 21:28:23 +00:00
MaxED
8891395b3a Fixed incorrect dragging of floor/ceiling textures with "rotationfloor" / "rotationceiling" UDMF property set in GZDoom Visual Mode.
Replaced all doubles with floats.
Script Editor: 
Navigator drop-down now updates automatically.
Navigator drop-down now also works for external files.
Added Navigator drop-down support for Decorate and Modeldef.
2012-07-12 22:34:12 +00:00
MaxED
c86d92ce63 3d-floor's floor and ceiling can be dragged properly in GZDoom Visual mode.
Things with "hangs" flag are now aligned to ceiling properly in GZDoom Visual mode.
Things can now be added and deleted in GZDoom Visual mode.
Several fixes in Doom, Doom 2, Heretic and Hexen configs (based on Doom Builder 2 SVN 1553 and 1560)
Added "countsecret" thing UDMF flag to configs.

UDMF Controls plugin:
Scale of 3d-floor's sidedefs textures is now applied properly.
Translation of 3d-floor's sidedefs textures is now applied properly. 
Added "hidden" UDMF flag.

Tag Explorer plugin:
TreeView is now updated when thing is deleted.
Tag Explorer plugin is now compatible with Doom Builder 2.
2012-07-05 00:03:40 +00:00
MaxED
b1df216a29 GZDoom Builder 1.07d:
Added "Test Map from current position" action (default shortcut is Ctrl-F9), which lets you play the game from cursor position, if you are in 2D-Mode, and from camera location if you are in Visual Mode.
Added "Sync camera position between 2D and 3D modes" (found in Preferences -> Interface -> Options), which automatically centers 2D-mode on camera position when you leave Visual Mode, and places camera at cursor position when you toggle from 2D-mode to Visual Mode (unless you have Visual Mode camera thing in your map).
Several improvements in Draw Rectangle and Draw Ellipse modes: added info label with current bevel amount and subdivision level; bevel amount now applied properly when shape size is smaller than it.
2012-06-07 01:06:37 +00:00
codeimp
91ef814d96 Fixed some problems with copy/paste in modes where it can't be used. 2011-12-03 14:49:53 +00:00
codeimp
3448e1ff60 Fixed a bug with pasted things when the Things Filter is used.
Fixed a bug with the Things Filter which caused some things to be incorrectly shown.
2011-12-02 21:03:05 +00:00
codeimp
6c09634660 Added Find & Replace for Thing Angles
Added lots of new filter options for Things Filters
Some interface polishing
2010-09-01 14:36:31 +00:00
codeimp
603cdbf042 Added some functionality for plugins that want to render in other editing modes 2010-08-22 12:09:32 +00:00
codeimp
6a685b7678 Exposed more DECORATE information to plugins and Things now have an Actor property (ActorStructure) when they are loaded from DECORATE
Added two new type handlers that can be used in UDMF ('Thing Type' and 'Thing Class')
Polished the browse icons and browse buttons.
Added more events for plugins to intercept.
2010-08-22 11:36:09 +00:00
codeimp
629f619794 Added basic plugin loading order system (just a cfg file which sets the order in which to load the DLL files, this matters because that is also the order in which events are raised on plugins) 2010-08-18 12:19:37 +00:00
codeimp
7f685b4c77 Added maximum number of map element checks (now you can't corrupt your map when exceeding the format's limits) 2010-08-15 19:43:00 +00:00
boris_i
aa34d0605e Fixed a bug that allowed to place vertices and things outside the map format grid boundaries 2010-08-13 18:32:21 +00:00
codeimp
e8dadd0f42 Fixed problem when saving or testing the map after undoing changes (the undone changes were ignored) 2010-08-11 20:07:51 +00:00
codeimp
b208e0faa9 @ Fixed WithdrawUndo() function behavior, it no longer shows the undo message. 2010-08-10 21:34:48 +00:00
codeimp
df8c336ba1 Added zoom factor option to preferences (thanks Sigma 7 and boris) 2010-08-01 18:04:13 +00:00
codeimp
f95c6baa7b @ commented out debug log info in undo/redo system because I am not sure it will be optimized out and causes a serious performance penalty if it is not optimized out. 2010-07-31 23:36:00 +00:00
codeimp
6f1abda51f - Little bit of undo/redo optimization 2010-01-09 19:49:54 +00:00
codeimp
50b9765377 - Scales are now generally accepted and exposed by the ImageData class instead of just ScaleWidth/ScaledHeight
- Camera offsets in Visual Modes now changeable in Game Configurations (default is Doom's camera position)
@ Some other stuff dealing with the new dockers I forgot what it's for.
2010-01-02 20:22:05 +00:00
codeimp
1d053a5e2b @ Renamed GetMapCoordinates function to DisplayToMap and added MapToDisplay function
@ Exposed the RenderTargetDisplay to plugins
2009-08-21 14:11:18 +00:00
codeimp
5edec9046b @ Fixed an undo/redo bug that caused problems in Visual Mode when multiple levels are undone at once 2009-08-01 08:33:28 +00:00
codeimp
24b275e6d3 @ this may be a useful function 2009-07-23 14:52:39 +00:00
codeimp
29972eae8e Information panel now correctly updates when undo/redo is performed 2009-07-23 09:23:40 +00:00
codeimp
061221d9ac Added Undo/Redo list side panel 2009-07-22 15:16:28 +00:00
codeimp
0ac4c4ad4f @ Fixed a bug in General.Map.UndoRedo.PerformRedo(n) (bug occurred when n > 1) 2009-07-15 15:10:50 +00:00
codeimp
3400046080 @ some undo/redo fixes
@ working on NumericTextbox versions with up/down buttons and dropdown lists
2009-07-10 13:56:22 +00:00
codeimp
89f8b3542e - Added some error handling for invalid wad files
- Fixed bug that allowed pasting geometry in visual mode (and the geometry becomes erroneous)
2009-07-10 08:25:04 +00:00
codeimp
85fcc2bd25 Added default start mode option to configuration dialog (see Modes tab) 2009-07-09 15:15:49 +00:00
codeimp
ee8d88c3dc Added options for pasting and inserting prefabs 2009-07-09 14:03:47 +00:00
codeimp
efb7e4a43a @ Fixed a problem with geometry being marked on undo/redo 2009-07-08 07:49:29 +00:00
codeimp
ac76a3e7e8 @ Fixed a problem with undo/redo in Visual Mode 2009-07-07 15:11:09 +00:00
codeimp
f33d0ed1ff Added classes/functions for plugins to create and/or select new/existing things filters 2009-07-05 10:26:57 +00:00
codeimp
442bf3c278 @ commented out a piece of code that was for testing only
Fixed a bug that crashes the SurfaceManager sometimes
2009-06-19 07:53:39 +00:00
codeimp
c7c21fdc72 Added functions for multiple undo/redo 2009-06-18 07:19:44 +00:00
codeimp
3c6beb1e68 Things filter now also hides things in le Mode de la Visuale 2009-06-17 16:52:28 +00:00
codeimp
4f52e3f5e8 @ fixed another undo/redo system bug that made closing the map slow 2009-06-15 18:44:28 +00:00
codeimp
1edd6284bc @ fixed a bug in the undo/redo system related to removing sectors 2009-06-15 17:38:02 +00:00
codeimp
36c42dbef1 @ fixed a bug in the undo/redo system 2009-06-11 21:50:55 +00:00
codeimp
55e640b6e1 - Progressive undo/redo system (much faster and up to 1000 undo/redo levels) Please note that several plugin functions and properties have changed.
- Some small optimizations in the classic 2D rendering (cached linedef flags, reduced some unneeded redrawing)
2009-06-11 21:21:20 +00:00
codeimp
d284248ca0 @ fixed paste 2009-06-06 00:05:59 +00:00
codeimp
04b883f999 Fixed grid action names and description for clarification 2009-05-17 14:58:45 +00:00
codeimp
622ff71056 - Fixed Make Door crash when no sector is highlighted or selected
- Added HighlightedObject property to the EditMode class, the object returned depends on the editing mode and the current highlight
- Exposed several properties in the ClassicMode class
2009-05-17 14:00:36 +00:00
codeimp
ec40df4765 Improved error reporting a little and changes the list in the Warnings & Errors dialog window 2009-05-10 16:02:08 +00:00
codeimp
e26591bd4a Changed a lot in undo/redo system to work better with grouping and plugins 2009-05-05 09:50:23 +00:00
codeimp
ad05a43ade @ work in progress (do not use this revision for building/testing) 2009-05-01 20:31:17 +00:00
codeimp
7e7f24e965 @ re-added source code with new directory structure 2009-04-19 18:07:22 +00:00