Commit graph

7137 commits

Author SHA1 Message Date
Randy Heit
cbfb24ef33 Disable -file ""
- This isn't a real file or even a name, but the game would try and load
  it, including running through various permutations, potentially resulting
  in loading the current directory as an archive.
2016-02-06 17:51:09 -06:00
Christoph Oelckers
20aa7c75de - added the case '0: switch the portal of to P_ChangePortal. 2016-02-07 00:30:27 +01:00
Christoph Oelckers
e726143c15 Merge branch 'master' of https://github.com/rheit/zdoom 2016-02-06 21:17:19 +01:00
Christoph Oelckers
77b9f41dff - added Line_SetPortalTarget action special so that portals can be assigned new targets. Setting the target to 0 disables the portal.cpp. Static linked portals can not be reassigned.
Please note that these still require the portal to be set up in the map with Line_SetPortal. It will not create a new portal if none exists on any line with the given ID.
2016-02-06 21:16:57 +01:00
MajorCooke
63735e4118 Turns out this token wasn't needed. 2016-02-06 13:52:08 -06:00
MajorCooke
ccf887c978 Fixed wrong type. 2016-02-06 13:49:16 -06:00
coelckers
1480fa7579 Merge pull request #542 from alexey-lysiuk/fix_openal_nonwin
Fixed build with OpenAL on non-Windows systems
2016-02-06 20:11:48 +01:00
Christoph Oelckers
7105a87a1e - fixed retrieval of mapsection for polyportals.
- render wall portals on one sided lines.
2016-02-06 19:19:18 +01:00
Braden Obrzut
1101546e9c - Fixed: Possible CMake wrong number of parameters configuration error. 2016-02-06 13:06:25 -05:00
Christoph Oelckers
3683a8ac58 - implemented line-to-line portal rendering. So far working for two-sided portal lines - one-sided yet to come. 2016-02-06 12:32:47 +01:00
alexey.lysiuk
46267f52d6 Fixed build with OpenAL on non-Windows systems
We still need to link with OpenAL library on OSes other than Windows
2016-02-06 10:58:25 +02:00
Christoph Oelckers
0ab3051f75 - fixed: Heretic's timebombs were spawned at the wrong place. 2016-02-06 08:52:37 +01:00
Christoph Oelckers
34216ddd8e Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	src/CMakeLists.txt
2016-02-06 05:28:53 +01:00
Christoph Oelckers
275ced288b - we no longer link to the OpenAL import library so the respective handling can be removed from CMakeLists.txt. 2016-02-06 05:26:37 +01:00
Randy Heit
47d33c1ef5 Fixed: A_Set(Float)Speed take FIXED speed, not INT 2016-02-05 22:24:12 -06:00
Christoph Oelckers
760db90d71 Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	CMakeLists.txt
2016-02-06 05:21:48 +01:00
Randy Heit
c978aa32b1 Fix FxRandomPick code generation for floats 2016-02-05 22:18:54 -06:00
Randy Heit
48dcbabd60 Emit a message when trying to use something non-integral as a boolean
- It's not exactly optimal, since it silently removes the offending
  expression, but it's better than crashing.
2016-02-05 22:18:54 -06:00
Randy Heit
09a17c2198 Quiet some narrowing conversion warnings from VS2015 2016-02-05 22:18:53 -06:00
Randy Heit
0892650465 Don't add /delayload for OpenAL stuff if OpenAL is disabled
- Also, I believe openal32.dll no longer needs a /delayload flag since
  it's dynamically loaded now.
2016-02-05 22:18:53 -06:00
Christoph Oelckers
297cf52ac9 - copied line portal code from portal branch and made some adjustments to make it compile. Portal rendering is not yet working. 2016-02-06 05:17:47 +01:00
Christoph Oelckers
d50e874d9b Merge branch 'master' of https://github.com/rheit/zdoom 2016-02-06 05:16:53 +01:00
Christoph Oelckers
d76bcee393 - added some line portal restrictions:
* linked portals may never have a z-offset so the parameter for that needs to be ignored.
* for interactive portals, handling z-displacements when some distance calculation reaches through a portal is way too extensive and problematic to ever have a chance of really working. If such a portal gets defined it will be changed to a teleport-only portal and a message printed.
2016-02-06 05:16:35 +01:00
Braden Obrzut
dce3f0f757 - Bump CMake version requirement to 2.8.7. This means that generator expressions must be supported as well as empty else and endif expressions (like most sane languages). ZDoom probably didn't work with 2.4 anymore anyway. 2016-02-05 21:19:29 -05:00
Randy Heit
4fb65d74fd Fix address NO_SANITIZE macro for Clang
- Oops. In fixing it for GCC (since it doesn't like
  __has_feature(address_sanitizer), I broke it for Clang.
2016-02-05 18:06:45 -06:00
Christoph Oelckers
501af18168 - added missing include. 2016-02-06 01:04:15 +01:00
Christoph Oelckers
25f1dc86d5 - removed duplicate function definition. 2016-02-06 00:50:43 +01:00
Christoph Oelckers
f8e5a0ebf0 Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	src/g_doomedmap.cpp
#	src/info.h
#	src/p_saveg.cpp
#	src/p_setup.cpp
#	src/p_spec.cpp
#	src/r_defs.h
#	wadsrc/static/mapinfo/eternity.txt
#	wadsrc/static/xlat/eternity.txt
2016-02-06 00:41:00 +01:00
Christoph Oelckers
ed7b7fc0ba - fixed: The backlink portal for EE-style definition needs to be done along with the first portal because the code won't find the anchor line itself. 2016-02-06 00:21:44 +01:00
Christoph Oelckers
ee3c41bf7b - fixed: The minimum parameter count for an action function is 3, so the DEHSUPP parser needs to take this into account when validating the code pointers. 2016-02-06 00:19:38 +01:00
Christoph Oelckers
95f3a9909c Merge branch 'master' of https://github.com/rheit/zdoom 2016-02-05 23:51:50 +01:00
Christoph Oelckers
e88901f4b7 - added the EE-Extradata parser I wrote for GZDoom so I can use the Vaporware demo map for testing portal stuff. 2016-02-05 23:51:28 +01:00
Randy Heit
cb6504669d Add return statements for DECORATE. 2016-02-05 16:34:51 -06:00
Christoph Oelckers
1201ad0366 Merge branch 'master' of https://github.com/rheit/zdoom 2016-02-05 23:16:06 +01:00
Christoph Oelckers
94b7ef72ca - more cleanup on portal implementation:
- store portal data in a separate structure.
- store portal data in savegames because some of this will be changeable later.
- run a cleanup pass after all portals have been created to weed out broken ones.
- add a definition type that's compatible with Eternity Engine's line portal types.
- swapped arg[2] and arg[3] of Line_SetPortal, because the type is more significant than the alignment.
2016-02-05 23:15:56 +01:00
Randy Heit
3ad2e4191d Remove fudging from the end of (O)WallMost
- This might have been added in an effort to fix problems caused by mixing inclusive
  and exclusive right edges. It might not be needed anymore. Let's find out...
2016-02-05 16:08:20 -06:00
Randy Heit
26eb335622 Quiet a couple GCC warnings 2016-02-05 16:07:18 -06:00
Randy Heit
4228721351 Enable running when built with Clang's -fsanitize=address 2016-02-05 16:04:50 -06:00
Christoph Oelckers
9eaefc3685 - initialize portals with all other static line specials instead of doing it separately in P_FinishLoadingLineDefs when the map isn't fully set up yet.
- replace all float use in portal.cpp with doubles.
2016-02-05 16:58:57 +01:00
Christoph Oelckers
a85a8c1465 - changed mirror handling so that it works without attaching a portal to the mirror line and removed line_t::portal_mirror member.
- did some cleanup on the portal interface on linedefs: All checks should go through isLinePortal (gameplay related) and isVisualPortal (renderer related) which then can decide on the actual data what to return.
- removed portal_passive because it won't survive the upcoming refactoring.
- removed all direct access to portal members of line_t.
- always use the precise (and fast) version of P_PointOnLineSide inside the renderer.
2016-02-05 16:14:45 +01:00
Christoph Oelckers
00895c245e - mpved all software renderer specific code for the portals into the render sources. 2016-02-05 15:39:06 +01:00
Christoph Oelckers
01b075660d - removed the option to toggle portals with SetLineSpecial.
This is to keep some people from jumping the gun on this and preventing the implementation of a proper toggling mechanism.
The feature itself will come back, but differently.

- removed portal setup from Build maps

they don't define it anyway so it makes no sense to have it there. Once this code gets refactored this will be in a different place that's identical for all map types.
2016-02-05 14:34:01 +01:00
Christoph Oelckers
6639984772 - removed Line_SetVisualPortal special. This will be folded into Line_SetPortal later 2016-02-05 14:24:20 +01:00
Christoph Oelckers
e6337537ed - this was missing the double slashes... 2016-02-05 14:04:28 +01:00
Christoph Oelckers
c4b1b96484 - handle one particular edge case when checking if a line is completely behind a mirror.
This is not really sufficient to detect all cases where something gets incorrectly flagged as ok, but it's the easiest one to detect.
2016-02-05 13:47:07 +01:00
Randy Heit
2516b8f8af Adjusted the assert conditions in DoJump()
- With multiple A_Jump calls possible in a single action now, it is now
  possible for DoJump() to be called with a callingstate that does not
  match self->state because the state had been changed by a prior A_Jump
  in the same action function.
2016-02-05 06:41:27 -06:00
Christoph Oelckers
dda73b531c Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	src/CMakeLists.txt
#	src/p_setup.cpp
#	src/r_defs.h
#	src/version.h

This only updates to a compileable state. The new portals are not yet functional in the hardware renderer because they require some refactoring in the data management first.
2016-02-05 12:31:41 +01:00
Christoph Oelckers
a7d1d72d6b - increase version number. 2016-02-05 12:11:02 +01:00
Christoph Oelckers
7136c50ba1 Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-02-05 12:09:08 +01:00
Christoph Oelckers
9d77244b3f - we are past 2.8 now so the version numbers should reflect that. 2016-02-05 12:03:59 +01:00