Commit graph

1940 commits

Author SHA1 Message Date
biwa
6c003f1cb1 Added support for only enabling editing modes when the current game configuration supports the features. Currently only applies to 3D Floor Mode, Slope Mode, and Draw Slope Mode. Fixes #463 2021-03-21 22:58:06 +01:00
biwa
58c476f4e5 Slope Mode, Draw Slopes Mode: both modes are now deprecated as they are superseded by visual sloping. The modes will be removed in the future. Entering the modes will add a warning to the Errors And Warnings dialog 2021-03-21 21:19:14 +01:00
biwa
2ef76c39d0 Sector Edit Form (UDMF): fixed a problem where resetting slopes did not work correctly 2021-03-21 17:38:43 +01:00
biwa
2abcbfffab Fixed a bug where trying to align the grid to a linedef or setting the grid origin to a vertex would crash when no map was opened. Fixes #536 2021-03-14 16:40:55 +01:00
James R
feef304423
Ignore Keys.None event (#537)
Such an event invokes every unbound action.
2021-03-14 16:26:09 +01:00
biwa
5addd6508c Started to add support for arbitrary UDMF field associations (#401) 2021-03-14 15:58:40 +01:00
biwa
122784f739 Removed limitation of 4 models per frame as this limitation is lifted in GZDoom 2021-03-11 21:06:34 +01:00
biwa
b1583060b6 CVARINFO: added support for "nosave" scope 2021-03-06 23:07:04 +01:00
biwa
0264224e6e CVARINFO: added support for "cheat" and "latch" flags. Fixes #535 2021-03-06 22:51:22 +01:00
biwa
f0c985385a Added portal options to the sector edit form for the Eternity Engine UDMF configuration 2021-03-06 21:28:00 +01:00
biwa
677473fce8 Small cleanups to the build process 2021-02-28 11:30:13 +01:00
biwa
46c577b9e1 Fixed a bug where saving WADs that didn't have their data starting right after the header would corrupt the file. Fixes #531 2021-02-27 17:47:37 +01:00
biwa
7d2e3db982 Fixed a bug where resetting the ceiling slope in the UDMF sector edit form would invert its original height 2021-02-20 16:17:32 +01:00
biwa
93cc15640f Error Checker: added config options to ignore unknown textures on sidedefs for certain actions. Resolves #518 2021-02-20 15:04:47 +01:00
biwa
b168570241 Added safeguard to MapSet.NearestLinedefRange if selectionmap is null. Might fix #529. 2021-02-20 13:11:03 +01:00
biwa
cbedfb24b5 DECALDEF parser: fixed a problem where opening curly braces in the same line as a decal definition caused a parsing error 2021-02-14 23:17:16 +01:00
biwa
18d56c6e04 Decorate/Zscript Actors that replace other actors should now display the correct actor name given through the $Title editor key. Fixes #122 2021-02-13 15:12:49 +01:00
biwa
b70970ebcf Some refactoring related to visual sloping 2021-02-13 09:57:09 +01:00
biwa
0911a3a9a4 Some more performance improvements related to visual sloping 2021-02-07 16:44:12 +01:00
biwa
c4c2f4b3fe Fixed a visual glitch where grid lines appear to be slightly offset when using a transformed grid 2021-02-06 15:09:16 +01:00
biwa
5ed77c5d05 Improved performance in visual mode related to visual slopes 2021-02-06 14:51:00 +01:00
biwa
2b6c7b44c2 Fixed a problem where the last line of UDMF maps were not parsed correctly 2021-01-31 18:11:10 +01:00
biwa
4f9111d075 Textures with whitespace at the beginning or end are now handled correctly. Fixes #522 2021-01-30 23:44:42 +01:00
biwa
4eb223b3f0 Added support for "abstract" ZScript functions. Fixes #523 2021-01-30 23:08:41 +01:00
biwa
5d1492c5c2 Added visual sloping for vertices (has an extra action to toggle visual vertex slope picking) 2021-01-30 22:01:55 +01:00
biwa
7cec462a15 Fixed a problem where values specified with the UserDefaultValue editor key in ZScript were not applied for float/double values 2021-01-04 13:28:45 +01:00
biwa
46962aac89 Using visual sloping to create a horizontal slope will now remove the slope and set the appropriate sector height instead
The Edit Sector dialog will not remove horizontal slopes anymore unless necessary
2021-01-01 22:08:54 +01:00
biwa
9090642d4e Fixed a problem where custom boolean UDMF fields could not set be to false 2020-12-28 20:22:04 +01:00
ZZYZX
eaa5227dc8 Slightly tweaked size of Controls list. Added 'Reset plane slope' action. 2020-12-28 00:13:56 +02:00
biwa
d8d03916ea Added safeguard against crashes related to config disposing. Fixes 251. Fixes 352. Fixes 514. 2020-12-23 16:43:59 +01:00
biwa
7b42ba622f The docker is now expanded by default so that users actually realize that it exists (new installations only) 2020-12-23 11:49:51 +01:00
biwa
9f58a545f6 Fixed a crash that could happen when the blockmap was too small because of off-grid vertices 2020-12-13 14:03:53 +01:00
biwa
931bd1e225 Fixed a problem where the DistanceCheck actor property didn't work correctly, resulting in things unexpectedly not being drawn in Visual Mode 2020-12-12 11:48:46 +01:00
biwa
c5054c5449 Fixed a problem where duplicating 3D floors sometimes changed the slopes of adjacent 3D floors 2020-11-21 22:38:16 +01:00
biwa
0f3e979fa9 Color picker dialog: custom colors are now saved 2020-11-21 13:12:01 +01:00
biwa
82af8bfe56 Fixed a bug with argument boxes where the value wasn't saved correctly when using the mouse wheel to change the value 2020-11-19 22:14:19 +01:00
biwa
c7b383595a MapSet.NearestLinedefRange using a blockmap now takes into account that the maxrange could be bigger than the blockmap block size 2020-11-15 13:59:04 +01:00
Magnus Norddahl
49edfed449 Fix MakeAlphaTestImage performance issue 2020-11-15 03:20:41 +01:00
biwa
9c85635ff0 More renaming GZDB Visual Mode to just Visual Mode
The exception dialog now correctly states that it's UDB and not GZDB
2020-11-01 18:33:19 +01:00
biwa
15772da839 Texture browser: using the tab key to jump between the currently selected used texture and the position of the texture in the list of all textures works again (this time without toggling the "used textures on top" checkbox). Also added option to vertically center the view on the selected texture (enabled by default) 2020-11-01 18:21:22 +01:00
biwa
eab7de4f9e New map dialog: the "open map resources in read-only mode" option is now checked by default. This option is deprecated and will be removed entirely eventually 2020-11-01 11:57:53 +01:00
biwa
5a1ceb2a9c Linedef edit form (UDMF): fixed a problem where the first argument was set to 0 instead left blank when multiple lines with script execution actions were being edited 2020-10-31 23:40:12 +01:00
biwa
d831d22217 Visual Mode: fixed a problem where wide classic skies were not rendered with the correct orientation 2020-10-29 20:21:42 +01:00
biwa
bb5780cf28 Thing/Linedef/Sector editing dialog: fixed a crash when pressing the up key in the action input box when the last action is selected. Fixes #493. 2020-10-25 01:52:49 +02:00
biwa
8330c70a41 Configuration file parser: floating point numbers without the "f" suffix are now parsed as double precision floating point numbers 2020-10-24 23:27:04 +02:00
biwa
0fc2296ce9 ACS parser: fixed a bug that prevented scripts from being recognized when the previous line ended with an empty line comment 2020-10-24 21:23:06 +02:00
biwa
ee6aad4150 Texture browser: filtering for a texture name now automatically selects the best matching texture name. Addresses #483. 2020-10-23 23:30:07 +02:00
biwa
09e40d2bae DECALDEF parser: fixed a crash when there are duplicate decal group entries in the DECALDEF files 2020-10-23 21:04:49 +02:00
biwa
9c10069d58 Visual Mode: improved support for GZDoom UDMF rendering styles. Partially addresses #485 2020-10-19 21:42:34 +02:00
biwa
79a507a8a7 DECALDEF parser: fixed a crash when there are duplicate entries in the DECALDEF files 2020-10-17 23:11:44 +02:00
biwa
722c79d894 Added preliminary DECALDEFS support. Parsing works, indexed decals and decal groups can be selected as the first argument of the Decal thing. Decals are not displayed in Visual Mode, decals without an index are not supported 2020-10-11 22:36:07 +02:00
biwa
3af704b7a6 Fixed a bug where PNG sprites without an offset incorrectly had their offset centered instead of using (0, 0) 2020-10-11 13:18:08 +02:00
biwa
50c00991d3 Fixed typo. 2020-10-11 01:07:36 +02:00
biwa
c0984c8b67 When loading UDMF maps and fields that have NaN (not a number) as a value are encountered those fields will now be dropped permanently. A warning that this happens will be displayed in the Errors and Warnings dialog. 2020-10-11 00:31:55 +02:00
biwa
a2c87358ea Merge branch 'master' of https://github.com/jewalky/UltimateDoomBuilder 2020-10-04 10:21:35 +02:00
biwa
22f7e99803 Fixed a crash when switching into Sectors Mode when there are no vertices in the map, but things 2020-10-04 10:21:13 +02:00
Magnus Norddahl
a66d4e72f2 Oops, forgot one flipped #if while testing 2020-10-03 23:34:07 +02:00
Magnus Norddahl
a608ad71fa For mono, put clipboard data in text/base64 form instead of relying on a memory stream 2020-10-03 23:33:04 +02:00
Magnus Norddahl
275b841e31 Merge branch 'texteditor' 2020-10-02 01:37:33 +02:00
Magnus Norddahl
160882a962 Fix null pointer that builds in Windows apparently didn't care about 2020-10-02 01:35:44 +02:00
Magnus Norddahl
61788e2be2 TabControlEX doesn't work with mono (why am I not surprised? xamarin, I want my money back!!) 2020-10-02 01:09:06 +02:00
Magnus Norddahl
a091225483 Update project file 2020-10-02 00:46:08 +02:00
Magnus Norddahl
3cdfc99f8e Remove NoScintilla.cs as it is no longer needed 2020-10-02 00:41:48 +02:00
Magnus Norddahl
f3dea17d1c Case sensitivity for the loss! 2020-10-02 00:37:06 +02:00
Magnus Norddahl
b330e61512 Create a minimal text editor implementation for mono where scintilla isn't available 2020-10-02 00:20:23 +02:00
Magnus Norddahl
e390bce8f6 Find the exact Scintilla.NET API used by UDB and create a stub implementation so that it builds without 2020-09-30 03:34:11 +02:00
Magnus Norddahl
d919570818 Workaround mono winforms clipboard bug 2020-09-29 23:41:45 +02:00
biwa
8e043aa875
Added support for loading PK3s in read-only mode (#477) 2020-09-27 15:05:27 +02:00
biwa
8064bc63b7 Added option in Preferences -> Appearance -> Rendering to toggle showing of the FPS counter in Visual Mode (disabled by default) 2020-09-26 18:15:01 +02:00
Kevin Caccamo
0b4b781980
Check whether geobuffers is null before indexing it
This is an attempt to fix #474
2020-09-24 20:52:33 -04:00
biwa
cd8d73d4cb Fixed problem when #include'ing files from a directory structure and using different directory path separators than the current OS's ones. Fixes #470. 2020-09-19 20:34:32 +02:00
biwa
3626d5d6ca Reverted changes from be1fab9f65 because it severely broke the additional mode buttons in the main menu. 2020-09-19 08:59:19 +02:00
Magnus Norddahl
be1fab9f65 Fix layout issue with the menu in mono winforms 2020-09-15 00:46:41 +02:00
Magnus Norddahl
353c714efc A few more hacks for the wonderful mono implementation of winforms 2020-09-15 00:41:53 +02:00
Magnus Norddahl
90831bd630 Fix cursor visible on Linux when in 3D mode 2020-09-13 23:43:11 +02:00
Magnus Norddahl
b740cadc13 Fix menubar getting the focus all the time on Linux 2020-09-13 23:01:38 +02:00
Kevin Caccamo
fdfeba1731
Fix some input issues on non-Windows systems (PR#467 by Talon1024)
* Fix some input issues on non-Windows systems

Disable the main menu bar when the 3D view is active.
Disable mouse input processing and "exclusive mouse input" until each editing dialog closes.

* Enable front/backgroup in LinedefEditForm{,UDMF} in the Setup method

The Setup method is called to specify which linedefs are being edited by the LinedefEditForm, and set up the dialog appropriately, so the front/backgroup should be enabled in the Setup method, at the same time the front/backside check boxes are checked or unchecked.
2020-09-13 19:40:09 +03:00
biwa
3218218dcc Fixed a crash when trying to load files that do not exist 2020-09-13 10:45:30 +02:00
Magnus Norddahl
626af9e85e
Merge pull request #448 from Talon1024/fix/UnixCaseSensitivity
Attempt to improve Unix filesystem support
2020-09-12 15:42:29 +02:00
alexey.lysiuk
a5672c19c5 Fix compilation error of Windows targets
General\General.cs(70,58): error CS0234: The type or namespace name 'Form' does not exist in the namespace 'System.Windows' (are you missing an assembly reference?)
2020-09-12 12:14:06 +03:00
Kevin Caccamo
71f86980fd
Handle multiple entries with the same name but different case
This is done so that entries whose keys have a higher ordinal value (lowercase) will replace entries whose keys have a lower ordinal value. This is based on how I've seen GZDoom handle this sort of situation.
2020-09-11 22:24:43 -04:00
Magnus Norddahl
30c2ad22ea Workaround groups Enabled flag not getting applied in mono winforms implementation 2020-09-12 02:15:21 +02:00
Magnus Norddahl
efec88994b Apply workaround to datagridviews 2020-09-12 02:06:14 +02:00
Magnus Norddahl
ccf2191f10 Add workaround for broken View.List implementation in mono's winforms 2020-09-12 01:25:59 +02:00
Magnus Norddahl
87fe50df56 Write replacements for the unimplemented native calls for unix 2020-09-11 23:17:30 +02:00
Magnus Norddahl
0d07050bcb Remove the need for ZeroMemory 2020-09-11 22:39:18 +02:00
Magnus Norddahl
e62c8bdad4 Fallback C# implementation for when rawmouse is not present 2020-09-11 22:22:36 +02:00
Kevin Caccamo
2f48255ddf
Remove GetCorrectCaseForFile call in GetFileAtPath
It's redundant because GetCorrectCaseForFile is called in DirectoryReader.LoadFile, and UDB will change all filenames in a PK3 to lowercase when it loads a PK3 into memory.
2020-07-29 17:30:17 -04:00
biwa
6a926d337e Some cleanup, added some comments. 2020-07-29 22:05:12 +02:00
Kevin Caccamo
42be899204
Attempt to improve Unix filesystem support
Add some new methods to PK3StructuredReader and DirectoryReader, which get the filename with the correct case, and get a file at a particular path.
Replace backslashes in modeldef model paths with forward slashes, instead of doing the opposite, which was preventing some models from loading.

I don't know whether or not this is a good solution or not, since I don't know the UDB codebase very well.
2020-07-29 04:14:37 -04:00
biwa
8aa7462993 Files specific to UDB are now used in the program configuration folder. The files are now called UDBuilder.cfg, UDBuilder.log, and UDBCrash.txt. If there's no UDBuilder.cfg it first tries to copy GZBuilder.cfg before creating a new configuration file. Resolves #442 2020-07-25 18:42:07 +02:00
Kevin Caccamo
96208f7166
Fix directory separators
Path.DirectorySeparatorChar is a forward slash on Linux/Unix, so it ended up preventing DECORATE and ZSCRIPT code from being loaded on Linux.
2020-07-20 04:20:03 -04:00
ZZYZX
4202b3ea58 Add new random quote to exception dialog 2020-07-08 18:25:22 +03:00
ZZYZX
0aaef4980b Fix exception caused by horizontal mouse wheel (resolves #409 reported by ioan-chera, reported by KanaiZo) 2020-07-07 13:56:42 +03:00
biwa
2813a392e7 Force HiRes replacements to always use worldpanning. Fixes #432 2020-07-05 09:20:08 +02:00
biwa
9185a48445 Removed some more forced conversions to float 2020-06-22 16:37:32 +02:00
biwa
5ddbd73916 Sectors Mode: the sectors things are in are only determined if necessary, which should increase performance when switching into Sectors Mode in very big maps 2020-06-21 12:52:36 +02:00
biwa
f2840e9a7b Fixed a bug introduced by addressing #427 that stopped the script editor to show up in vanilla Hexen. Fixes #429. 2020-06-20 15:13:49 +02:00
biwa
233153cdb5 Fixed a problem where translucent 3D floors were drawn solid. The cause was a rounding error because of the transition from float to double. 2020-06-20 01:21:17 +02:00
biwa
22d00763a9 The script editor is now only shown if the current game configuration supports scripts. Resolves #427. 2020-06-19 23:30:01 +02:00
biwa
ea31f495d7 Fixed a problem where textures for OBJ models were flipped vertically 2020-06-19 12:22:57 +02:00
biwa
b3d817f053 Fixed a crash in the DIALOG/SCRIPTS editor when selecting any other than the first two options in the "look in" combo box in the replace tab. Fixes #425. 2020-06-17 23:38:26 +02:00
biwa
08636d1b18 Enabled PDB generation for all plugins in x64 release mode 2020-06-17 22:57:49 +02:00
biwa
4a693a5a5d Vertices Mode: the preview vertex is now correctly shown on intersections between the closest line and the transformed grid 2020-06-15 00:41:22 +02:00
biwa
57b184a9e6 Merged master into duplicate-3d-floors branch
Added some error handling to duplicating 3D floors
2020-06-13 17:00:12 +02:00
biwa
565f1f885b Changed how performing undo interacts with volatile modes (it will now actually perform the undo instead of just canceling the volatile mode) 2020-06-13 15:56:16 +02:00
biwa
14c65dae5b - Only allow Edit Selection Mode to be cancelled once
- Added preliminary code to remove new 3D floor control sectors when pasting was canceled after duplicating 3D floors
2020-06-13 15:35:20 +02:00
biwa
4fbcc11418 Added functionality to duplicate 3D floor control sectors of selected sectors and paste selected sectors with the new control sectors assigned 2020-06-13 00:24:24 +02:00
biwa
6e4bb04516 Merge remote-tracking branch 'origin/master' into arching 2020-06-08 20:58:45 +02:00
biwa
cdf745745a Texture sets now work with textures from a directory or PK3/PK7 (it matches against the short 8 character name) 2020-06-04 16:16:09 +02:00
biwa
17987918de Fixed a bug where modifying a user_ ZScript variable through the custom properties tab would cause a crash. Fixes #420. 2020-06-01 11:12:52 +02:00
biwa
aecb1e67b7 Preliminary code for arching 2020-06-01 09:50:35 +02:00
biwa
10ceef6715 Fixed jittery camera when being far away from the map origin 2020-05-24 11:35:53 +02:00
biwa
342ea4f518 Trying to fix jittery camera when being really far away from the map origin (didn't fix it yet) 2020-05-23 10:37:42 +02:00
biwa
bdc6a23934 Fixed some more cases where UniValues were set to floats. Added throwing exceptions to the UniValue constructor (gasp!) 2020-05-23 10:01:52 +02:00
biwa
abb61f1f09 Possible fixed a crash in LinedefInfoPanel.SetPairedUDMFFieldsLabel 2020-05-23 01:37:14 +02:00
biwa
9338d1221f Removed lots of unnecessary casts to float of the Math methods. Also removed some other minor implicit casts 2020-05-22 22:30:32 +02:00
biwa
ab81b17554 More conversion from float to double. Doesn't seem to crash anymore. 2020-05-22 21:39:18 +02:00
biwa
91cbcde1eb It's compiling! 2020-05-21 14:20:02 +02:00
biwa
fb3c9e7168 Started conversion from float to double 2020-05-18 18:14:54 +02:00
biwa
f0bfc74702 Decoupled plane equation slopes from sector heights. This means that changing sector heights will not change those slopes (use the offset box in the "slope" tab of the Edit Sector Dialog instead) 2020-05-16 10:40:24 +02:00
biwa
7114d17eeb Texture browser: input boxes don't lose focus anymore when the mouse is moved into the texture list area. Fixes #369. 2020-04-28 23:35:36 +02:00
biwa
9cadd378bc Changed the ambient sound drop down menu of ambient sound things to natural sort order. Resolves #406. 2020-04-28 22:48:00 +02:00
biwa
594fe0403d Removed DebugConsole functionality in non-debug builds 2020-04-26 00:58:42 +02:00
biwa
f15c0e0eb1 Fixed a crash that happened when the script window is opened but minimized, the script has syntax errors, and then the map is saved. Fixes #402. 2020-04-25 17:43:14 +02:00
Magnus Norddahl
db44d411c7 Fix black output from visplane explorer 2020-04-19 14:19:18 +02:00
biwa
f4e9556262 Significantly reduced video memory usage when pasting sectors. Should also significantly increase speed when pasting many sectors. Fixes #400. 2020-04-19 11:58:55 +02:00
biwa
308e8fe4cb Fixed a bug where the DECORATE parser got confused by wrong tokens after starting the states definition. Fixes #374. 2020-04-11 18:46:45 +02:00
biwa
138c96bb13 Moved smart grid transform into Linedefs Mode and Vertices Mode, so it also works when simply highlighting a linedef or vertex. When doing smart grid transform on a linedef it'll also use the vertex closest to the mouse cursor as the origin instead of always the start vertex 2020-04-11 10:42:41 +02:00
biwa
12b3906470 Added "Smart Grid Transform" action that sets grid transformation based on the selected elements. Vertex selected: set grid origin to that vertex. Linedef selected: align grid to that linedef. Nothing selected: reset grid transformation to the default coordinate system. No default key bound. 2020-04-10 13:40:30 +02:00
biwa
999d5ade9e More BuilderMono.csproj fixes 2020-04-10 11:20:19 +02:00
biwa
ca4dc1958c Hopefully fixed BuilderMono.csproj to compile for Mac and Linux again. 2020-04-10 10:57:38 +02:00
biwa
58d5bfd59b Merge branch 'visual-slope2' 2020-04-10 10:40:42 +02:00
biwa
895053ec26 Fixed indentation in ImageBrowserItem 2020-04-05 20:21:35 +02:00
volte
9693321590 Further performance improvement to image browser 2020-04-05 11:40:14 -04:00
volte
b1f4cdcd1c Fixed slowdown in ImageBrowser due to repeated queries for system font 2020-04-05 09:15:34 -04:00
biwa
a3ce81dc2b Merge branch 'master' into visual-slope2 2020-04-04 13:12:20 +02:00
biwa
8115d12b6c Custom types for user defined UDMF fields could cause problems when fields with the same name used different types, so they are disabled for the time being (only bool, int, float and string are allowed now) 2020-03-29 21:44:29 +02:00
biwa
1fc503fa24 Update things before adding their geometry in visual mode so things don't go awry when realtime editing them. Fixes #393. 2020-03-29 17:31:20 +02:00
biwa
e07a3170ac Made drop down items for ambient sounds more descriptive 2020-03-29 16:29:53 +02:00
biwa
1d5867333c There can be multiple different ambient sounds with the same sound name, so add the index to the name to differentiate them. Fixes #390. 2020-03-29 11:53:12 +02:00
biwa
a4466ba01b Added support for helper messages in version/deprecated modifier in ZScript 2020-03-19 20:14:57 +01:00
Magnus Norddahl
3346c00fab Keep stream open so that the image loaders can be chained 2020-03-19 19:54:54 +01:00
Magnus Norddahl
44d972c876 Fix crash when tga image loader succeeds in loading a 0x0 image
Copy resource bitmaps before using them on a worker thread
2020-03-19 15:46:04 +01:00
biwa
7b0adadbfb Merge branch 'master' into visual-slope2 2020-03-17 22:10:04 +01:00
Magnus Norddahl
e19b2912f3 Update mono project file 2020-03-17 21:07:51 +01:00
Magnus Norddahl
6492a2b3ff Merge branch 'nodevil' 2020-03-17 21:06:10 +01:00
Magnus Norddahl
29b30a3dcc This joke isn't funny when half the racists in the US is saying this 2020-03-17 20:09:34 +01:00
biwa
e8cc2f9801 Self-inheritance of ZScript classes is now considered an error and not a warning 2020-03-14 15:46:00 +01:00
biwa
d3b90f4f50 Print a warning and skip parsing classes that try to inherit from themselves (instead of going into an infinite loop) 2020-03-14 13:18:45 +01:00