Commit graph

6057 commits

Author SHA1 Message Date
Randy Heit
e451faa1cc Fixed: FString::ReallocBuffer could write to unallocated memory
- Previously, calling ReallocBuffer with a smaller buffer size than the
  current one could overwrite unallocated memory. This required that the
  string it was called on had more than one reference and therefore
  required creating a new copy. The entire original string would be
  copied, whether it fit in the new buffer or not.
2015-04-04 18:20:05 -05:00
Randy Heit
6da887c34f Use Truncate to chop off extension in LumpNameSetup.
- Left() always creates a new string. Truncate() can reuse the old one if
  it only has one reference.
2015-04-04 18:20:05 -05:00
Randy Heit
4315423200 Rename ns_invalid to ns_hidden
- Also use ns_hidden by name in LumpNameSetup().
2015-04-04 18:20:04 -05:00
Randy Heit
2103fe2a14 Make FResourceLump::LumpNameSetup's argument an FString 2015-04-04 18:20:03 -05:00
Randy Heit
bbbbb7ac9d Reorder FMapThing to remove padding 2015-04-04 18:20:03 -05:00
Christoph Oelckers
1fddd1859e - fixed: FResourceFile::FilterLumps must use a proper copy of the filename to pass to LumpNameSetup instead of a pointer to the file name's stringbuffer, because that function will overwrite the variable it is taken from. 2015-04-05 00:38:29 +02:00
Christoph Oelckers
25e19ab471 Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-05 00:31:55 +02:00
Christoph Oelckers
b6a4511dd1 - move conversation ID definition to MAPINFO as well. Uses the newly added filter feature to handle the teaser differences. 2015-04-05 00:31:15 +02:00
rheit
60a0966f0f Merge pull request #306 from alexey-lysiuk/osx_vid_autoswitch
Added control of automatic graphics switching on OS X
2015-04-04 15:41:18 -05:00
Christoph Oelckers
6e45c565a0 - fixed: FResourceLump::LumpNameSetup's iname parameter can point to the FullName variable's stringbuffer so any assignment to that variable must be done indirectly. 2015-04-04 20:52:55 +02:00
Christoph Oelckers
a5c75c1b1a - added some missing autoload sections (Hacx 1.2 vs. Hacx 2, Hexen vs Deathkings and Heretic vs. Shadows of the Serpent Riders.) and filter names for Strifeteaser1 and Strifeteaser2 which are needed for exporting the conversation IDs to MAPINFO 2015-04-04 20:44:27 +02:00
Teemu Piippo
ca012bc9be - adapted AActor to use TFlags 2015-04-04 19:40:43 +03:00
Teemu Piippo
830a7ee003 - added TFlags 2015-04-04 19:19:17 +03:00
Christoph Oelckers
bead3e046b - fixed weapon positioning again, after finding out that the first fix just worked around the actual problem: The entire coordinate calculation must be done in floating point with no integer math at all. Due to roundoff errors the stored int values needed for wall and flat placement significantly lack precision and with the high scaling factor that needs to be used for weapon HUD sprites these can easily become several pixels. After fixing this the border around sprite textures could be reverted to one pixel again.
- fixed: The 'may not be expanded' state should be stored in the texture and reused later. This also needs to revalidate the material if it decides that expansion should be disallowed.
2015-04-04 17:50:22 +02:00
alexey.lysiuk
193b491b63 Added control of automatic graphics switching on OS X
Automatic graphics switching is enabled by default
Set vid_autoswitch CVAR to false to disable it
2015-04-04 17:36:55 +03:00
Christoph Oelckers
85ef1a11e9 Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-04 14:13:37 +02:00
Christoph Oelckers
87229f4787 Merge branch 'fix_filter_crash' of https://github.com/alexey-lysiuk/gzdoom 2015-04-04 14:12:13 +02:00
Christoph Oelckers
bd96adafda - cleanup 2015-04-04 14:12:04 +02:00
Christoph Oelckers
91eafed5d3 - fixed coordinate calculations for trimmed sprites which were quite a bit broken. 2015-04-04 13:37:55 +02:00
Christoph Oelckers
67334bfa2b - calculate weapon positions fully in floating point to avoid roundoff errors.
- In order to get reliable results the empty border around scaled sprites must be the same scale as the sprite (i.e. 2 pixels for 2x scale and 4 pixels for 4x scale.)
2015-04-04 12:35:10 +02:00
alexey.lysiuk
8b92c45f84 Fixed crash in lump filtering caused by uninitialized variables 2015-04-04 12:38:37 +03:00
Christoph Oelckers
b0c0012d60 - add dynamic lights to editor number table and remove them from DECORATE definitions. 2015-04-04 10:42:44 +02:00
Christoph Oelckers
39b5bcc4f0 Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-04 10:38:28 +02:00
Christoph Oelckers
a65c9bec40 - move video options override out of menudef.z.
This is to allow easier merging with future ZDoom changes
It was done this way only to avoid having to deal with SVN's poor merging capabilities but with Git this is no longer an issue.
The OpenGL submenus will remain where they are, though.
2015-04-04 10:37:31 +02:00
Christoph Oelckers
5f2f11a43b Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-04 10:32:23 +02:00
Christoph Oelckers
747e160c96 Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-04 10:30:37 +02:00
Christoph Oelckers
338a220df8 - add empty editor number mapping for GZDoom's dynamic lights so that these will no longer produce errors when loaded with ZDoom. 2015-04-04 10:30:09 +02:00
Christoph Oelckers
51591d10b0 - handle slope things through new definition tables as well. Since these get processed outside P_SpawnMapThing it required some restructuring so that the actual spawn data is present when slope things get processed.
- removed FMapThing::Serialize because it isn't used anywhere - it was rather broken anyway.
2015-04-04 10:25:01 +02:00
Randy Heit
a5e67f7332 Split sndinfo.txt up into multiple files using filter directories.
- This means the original need for $ifdoom, $ifheretic, etc directives is
  no more, but they need to stay for compatibility with third-party wads
  that use them.
2015-04-03 22:58:58 -05:00
Randy Heit
7b4d6e2f87 Add lump filtering for archive resources
- Multi-directory archives (e.g. zips) now support filtering lumps
  depending on the loaded IWAD. The search rules are the same as for the
  Autoload entries in the user's ini. For instance, if you are playing
  Doom 2, the following filters will be applied:
  * "filter/doom2/*"
  * "filter/doom/*"
  They will be renamed to strip out the "filter/doom2/" and "filter/doom/"
  parts and will be ordered so they take precedence over any files not
  inside a filter/ directory. Any files inside another filter/ directory
  (e.g. "filter/hexen/*") will be ignored.
2015-04-03 22:42:22 -05:00
Randy Heit
fc6f983c13 Fix memory leak when passing directories to -file 2015-04-03 21:50:08 -05:00
Randy Heit
efa82cf38b Consolidate archive sorting into FResourceFile base class 2015-04-03 20:22:18 -05:00
Randy Heit
966d0b7034 Use FString for FResourceLump::FullName 2015-04-03 20:00:58 -05:00
Randy Heit
a08e439551 Update VS2005 project 2015-04-03 19:21:23 -05:00
Christoph Oelckers
2ec8e2c2ac - moved spawn ID definitions to MAPINFO as well and removed all 'Game' directives from DECORATE because editor and spawn numbers are the only thing that required them. 2015-04-04 00:39:09 +02:00
Christoph Oelckers
4f7ec3ad89 - print proper information about non-actor mapthings. 2015-04-03 22:23:42 +02:00
Christoph Oelckers
9e5bf38123 - handle all special mapthing items (player starts, polyobj spots) via the new MAPINFO method instead of hard coding them in the spawn function.
(Note: The buildmap loading code should be adjusted to the new functionality as well eventually.)
2015-04-03 21:17:10 +02:00
MajorCooke
087d564343 - Added MORPH_UNDOALWAYS for morph powerups. 2015-04-03 12:16:27 -05:00
Christoph Oelckers
15dbbc9137 - set editor numbers through MAPINFO. The DECORATE way still works ans will override any definition made in MAPINFO.
- use a standard TMap for finding editor numbers
2015-04-03 16:51:45 +02:00
Christoph Oelckers
463d495b80 - strife was broken, too... 2015-04-03 16:44:41 +02:00
Christoph Oelckers
8b06b24035 - took editor numbers out of DECORATE definitions. 2015-04-03 16:34:07 +02:00
Christoph Oelckers
9617b4afa8 - fix more search&replace mess. 2015-04-03 16:31:28 +02:00
Christoph Oelckers
937d793353 - fixed Hexen editor numbers. 2015-04-03 15:34:41 +02:00
Christoph Oelckers
bd77f83bab - added editor number definitions to MAPINFO. 2015-04-03 13:54:38 +02:00
Christoph Oelckers
ccd9fb9c23 - moved FDoomEdMap to its own file to make the upcoming changes a bit nicer to handle. 2015-04-03 10:54:55 +02:00
Christoph Oelckers
f0886ce1f1 Merge branch 'master' of https://github.com/rheit/zdoom
Conflicts:
	src/version.h
2015-04-03 09:45:04 +02:00
Christoph Oelckers
6c603b3c78 Merge branch 'misc_code_improvements' of https://github.com/edward-san/zdoom 2015-04-03 09:33:33 +02:00
Christoph Oelckers
4c06e71536 Merge branch 'dmgforcedfix' of https://github.com/MajorCooke/zdoom 2015-04-03 09:32:46 +02:00
MajorCooke
27c1434585 - Fixed: Buddha never took forced damage into account. 2015-04-02 20:52:51 -05:00
Randy Heit
ef562c0341 Add dot sprites for Hexen beta flies 2015-04-02 17:53:15 -05:00