Commit graph

142 commits

Author SHA1 Message Date
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
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
Magnus Norddahl
4d3fea0088 Fix inconsistencies between the "file specification" (as documented on zee internetz) and what devteam.pcx from Descent actually contained (the only pcx I have) 2020-02-16 17:10:57 +01:00
Magnus Norddahl
afb79e80d5 Implement tga image loader 2020-01-14 20:39:46 +01:00
Magnus Norddahl
0372b75eea Fix offsetting bug 2020-01-14 18:57:50 +01:00
Magnus Norddahl
4e86765f2a Implement pcx loader (I can't believe I wrote this in 2020...) 2020-01-14 18:49:45 +01:00
Magnus Norddahl
3bbe76b225 Remove DevIL dependency
Remove IImageLoader code duplication
2020-01-14 17:25:35 +01:00
Magnus Norddahl
5363fe0717 Produce release build
Disable devil
Support mac build (which is useless as mono doesn't support winforms on modern macOS)
2020-01-06 08:52:59 +01:00
Magnus Norddahl
3cae8740ef Prevent Image.FromStream from closing the stream if the image isn't recognized 2019-12-28 05:34:38 +01:00
ZZYZX
197f96a059 Unfix MaxED's TGA fix 2019-12-27 12:43:06 +02:00
Magnus Norddahl
af3d74d186 Fix DevIL crash by protecting it with a mutex lock
Use the .net framework image loaders if they work. They do for the sane formats (PNG and JPEG) and they are faster, too.
Enable usage of multiple threads for resource loading now that it no longer crashes
2019-12-27 07:45:44 +01:00
ZZYZX
96f2b4e94e Fixed TGA texture loading 2019-12-24 21:33:16 +02:00
ZZYZX
714bb84204 Implemented alternate fix for Linux paths (2) 2019-12-14 23:52:12 +02:00
ZZYZX
f0aee1e174 Merge branch 'master' into slimgl_merge 2019-12-14 23:50:40 +02:00
biwa
ba6dc546ba - (Hopefully) addressed a problem where images failed to load when opening another map in the 64 bit version
@ This is a workaround for #295.
2019-10-13 13:47:29 +02:00
Kevin Caccamo
b5ad511671 Enable DevIL on Linux
Remove NO_DEVIL defines, and add devil.dll -> libIL.so.1 DLL mapping to app.config
2019-09-03 22:47:59 -04:00
Magnus Norddahl
9b300126e9 Disable DEVIL and create build solution specifically for mono 2019-08-29 17:56:12 +02:00
ZZYZX
10167038ae Fixed: on a second thought, let's just make FileImageReader fall back to guessed image if possible... 2018-03-31 14:01:36 +03:00
ZZYZX
f7c2a577e4 Fixed: made more correct checking for legal file formats; now it should actually validate the format upon loading 2018-03-31 13:38:30 +03:00
ZZYZX
995e23f290 Enabled parsing of NaN in UDMF so that the existing buggy maps load; made it throw exceptions when a NaN vertex is added to the map 2018-03-25 01:40:31 +02:00
ZZYZX
f97c15ae95 Fixed: Internal: made most 'get' calls in WADReader use synchronized MemoryStream duplicate as opposed to operating on WAD stream directly. Hopefully fixes multithreading issues with sprite loading. (reported by Mysterious Haruko, camaxide) 2017-03-03 20:33:40 +02:00
ZZYZX
f8959507fb Fixed: old map format is now autodetected when saving a map over an existing one. Saving a map in different format shouldn't leave junk lumps anymore. 2017-02-14 15:25:16 +02:00
ZZYZX
b996d8a380 Internal: not copying all lumps manually anymore on 'Save As'. The WAD is copied with File.Copy anyway. 2017-02-14 11:56:38 +02:00
ZZYZX
ebd7fb1a57 Upgrade to VS2015 (14.0) 2017-01-15 00:35:40 +02:00
MaxED
5dd45ffdca Updated, Script Editor: redesigned "Find and Replace" window. It can now search/replace in all opened tabs and all detected text resources.
Fixed, Script Editor: resources list control was incorrectly positioned when using DPI scaling.
2016-12-02 13:45:03 +00:00
MaxED
1523d06ee3 Updated, Visual mode: some cases when the sky hack must be applied were not handled.
Updated, Script editor: script editor was unable to show error location after double-clicking on it in the Warnings and Errors window when said location was inside of a WAD located in a PK3 file.
Updated, text lumps tracking: already parsed DECORATE/GLDEFS lumps are now added to the text lumps list even when DECORATE/GLDEFS parsing fails, allowing you to fix errors without the need to use external tools.
Fixed: in some cases the editor could stuck in an infinite loop when searching for wad lumps.
2016-11-28 20:01:47 +00:00
MaxED
18dc8cebba Fixed: in some cases only the last data (sprite/texture/patch etc.) range was detected in WADs.
Fixed, Script Editor: Cut/Copy/Paste/Undo/Redo keyboard shortcuts were handled incorrectly when quick search textbox was focused.
Fixed, Script Editor: Find next/Find previous quick search button actions were handled incorrectly.
Updated documentation.
2016-11-26 20:03:59 +00:00
MaxED
9553042c84 Added, Script Editor: unreferenced ACS files are now shown in the Resources list.
Added, Script Editor: MENUDEF and SBARINFO files/lumps are now shown in the Resources list.
Fixed, ACS handling: fixed a crash when trying to parse an #include file, when specified path was absolute.
2016-11-24 21:09:24 +00:00
MaxED
8570922d0d Fixed the editor crashing/locking up when trying to read TEXTUREX patch containing invalid data. 2016-10-28 21:07:33 +00:00
MaxED
9908e41197 Added, Game configurations: added "ignoreddirectories" parameter. It lists directory names to be ignored when loading PK3/PK7/Directory resources.
Added, Game configurations: added "ignoredextensions" parameter. It lists file extensions to be ignored when loading PK3/PK7/Directory resources.
Updated: sector triangulation logic now works ~20% faster.
Changed: a case when a pk3/pk7 archive contains several entries with identical filename is now treated as a warning, not as an error.
Fixed, Visual mode: absolute floor/ceiling brightness should not be affected by brightness transfer effects (like 3d floors).
Fixed, Draw Lines mode: in some cases unclosed sectors were created when several points were successively drawn at the same location.
Updated documentation.
2016-10-24 19:19:11 +00:00
MaxED
70d35bf1d6 Added, Edit Sectors window: added UI for floor/ceiling portals.
Updated ZDoom_DECORATE.cfg.
Updated documentation ("Game Configuration - Sectors Settings" page).
2016-10-11 12:58:35 +00:00
MaxED
4f76483439 Fixed, DB2 bug: temporary map file was growing in size after every map save/test, which eventually resulted in integer overflow exception when the file size reached ~2Gb.
Fixed, Draw Geometry modes: fixed a crash when moving the mouse cursor over a linedef while holding Alt-Shift keys when there were no new points drawn in current mode.
2016-06-30 17:57:51 +00:00
MaxED
7b54c0141d Changed: single-sided linedefs with only back sidedef present are now automatically flipped when loading a map.
Changed, "Flip Linedefs" action: the action will no longer flip single-sided linedefs with only front side.
Fixed a crash when trying to determine sprite angles when images with non-sprite names, starting with expected characters, were present in the Sprites namespace.
2016-06-26 22:42:24 +00:00
MaxED
ea81ad80a8 Added, Search and Replace mode: "Find Sector Brightness" search mode now supports "<=", "<", ">=" and ">" prefixes.
Fixed, Sound Environment mode: fixed several cases when single-sided lines with only back side could cause either logic errors or crashes.
Fixed, Automap mode: fixed several cases when single-sided lines with only back side could cause logic errors.
Debug: added some debug code to WAD.Insert() to investigate the issue when lumpoffset could become negative.
2016-06-25 14:09:39 +00:00
MaxED
a852719062 Added, Visual mode: added "Toggle Alpha-based Texture Highlighting" action. When enabled, 3d floor textures and middle textures on double-sided lines will be highlighted only when the crosshair points at a non-transparent pixel.
Changed: multi-part sectors are now better preserved after drawing new lines.
Changed, TEXTURES parser: patch loading errors are now ignored for textures with "NullTexture" option.
Changed, Game configurations: changed default door action arguments to better match vanilla ones.
Fixed, Actions: in some cases keyboard shortcuts involving Ctrl/Alt/Shift modifier keys were displayed incorrectly.
Fixed(?): probably fixed inability to save map wad in Slade 3.
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
Updated ZDoom ACC.
2016-06-13 23:37:55 +00:00
MaxED
701468fcd8 Added: angle selector button used in arguments custom fields controls now shows angle value.
Fixed a crash when trying to store a custom field with "Byte Angle" type.
Fixed: in some cases custom field types stored in the map's .dbs file were not applied when loading a map.
2016-05-16 13:04:31 +00:00
MaxED
6b25086795 Internal: did some refactoring. 2016-04-27 09:13:07 +00:00
MaxED
5ab50fc981 Fixed: added a simple extension-based filtering to Folder/PK3/PK7 resources to prevent loading data from unrelated resources.
Fixed: there can be several entries of the most ZDoom text lumps in WADs. Previously only the first one was processed.
Internal: rewritten DirectoryFilesList to use one collection instead of two.
2016-04-23 23:15:43 +00:00
MaxED
002d6e9c89 Fixed inability to disable bilinear filtering in Visual mode some users experienced.
Fixed occasional TreeView flickering in Edit Things window, Browse Action window and Tag Explorer panel.
Updated Thing category icons in the Edit Things window. They now have "opened" and "closed" states.
Internal: added BufferedTreeView to the core controls.
Updated ZDoom game configurations (sector crush mode).
Updated ZDoom ACC.
2016-03-29 14:38:07 +00:00
MaxED
dd26c3ded2 Internal: removed some duplicate casts, marked some classes is IDisposable, some streams were disposed more than once. 2016-03-18 12:52:12 +00:00
MaxED
23d2a27dec Added, Draw Ellipse mode: angle setting can now be changed using "Rotate Clockwise" and "Rotate Counterclockwise" actions.
Added, Draw Line and Draw Curve modes: added "Auto-finish drawing" setting. When enabled, the modes will automatically finish drawing when currently drawn lines and already existing level geometry form a closed shape.
Changed: sector-wise linedef flipping is now done using the new "Align Linedefs" action. "Flip Linedefs" action works the same as in DB2 again.
Changed: when a map was already loaded, using "Open Map" action will use that map's directory as the starting directory.
Changed: official IWADs can no longer be saved.
Changed: disabled lump ranges/duplicate entries checks for official IWADs.
Changed: wad type is now preserved when saving a map (previously all wads were saved as PWADs).
Changed: moved Updater.exe launch much closer to the editor termination point to avoid any chance of it closing the editor before it properly closes itself.
Updated ZDoom_DECORATE.cfg (A_Blast).
Updated documentation.
2016-03-14 10:25:27 +00:00
MaxED
49525177e3 Cosmetic: changed ' to " in some more Error and Warning messages. 2016-03-08 20:41:06 +00:00
MaxED
87a54b1e4a Added HiRes textures support.
Fixed, Script Editor: fixed a crash when trying to open Script Editor in a Doom map format map.
2016-03-04 08:10:56 +00:00
MaxED
95e28518cb DECORATE and MAPINFO parsers: added editor number range check. 2016-02-28 21:21:50 +00:00
MaxED
0f7aa9f827 Added, Sector Edit window, UDMF: added UI for sector damage-realted properties.
Added, DECORATE parser: damage types are now parsed.
Added: the editor now reports duplicate textures/flats/patches/sprites/colormaps/voxels in the loaded wads.
Added, all text parsers: added #region/#endregion support.
Added TERRAIN parser.
Added, Script Editor: added special handling for DECORATE special comments.
Added, Sector Edit window, UDMF: Soundsequence value was setup incorrectly when showing the window for multiple sectors with mixed Soundsequence value. 
Fixed, Map Options window: "Strictly load patches between P_START and P_END" was not applied when applying the changes.
Fixed, MAPINFO parser: MapInfo should be treated as defined when a map MAPINFO block corresponding to current map is encountered even if it doesn't define any properties recognized by the editor.
Fixed, all text parsers: in some cases error line was calculated incorrectly when reporting an error detected by a text parser.
Cosmetic: changed ' to " in the rest of Error and Warning messages.
Internal: added text resource tracking.
Updated ZDoom_DECORATE.cfg.
Updated documentation ("Game Configuration - Basic Settings" page).
2016-02-22 12:33:19 +00:00
MaxED
324a7461c7 Changed, Copy/Paste: the whole pasting operation is now aborted if the resulting number of sectors, linedefs, vertices or things exceeds map format's maximum. 2016-02-22 08:20:33 +00:00
MaxED
74015b1ba0 Cosmetic: changed ' to " in the most of Error and Warning messages. 2016-02-22 08:04:06 +00:00
MaxED
139c297161 Fixed, Visual mode: some video memory was not released after closing a map if the Visual mode was enabled at least once during the editing session, eventually resulting in E_OUTOFMEMORY crash.
Fixed, General interface, cosmetic: in some cases the warnings label was disabled in a flashing state (e.g. with red background).
Internal: moved some older GZDB actions form GZGeneral to MapManager. They can no longer be toggled when no map is loaded (which is probably for the best).
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
2016-02-01 22:04:00 +00:00
MaxED
fd008a9617 Fixed a crash when pasting sectors, linedefs and sidedefs introduced in R2471. 2016-01-15 22:27:18 +00:00