Magnus Norddahl
4241026f1c
Swapped order in IsFilteredByDebugLevel
2016-08-18 02:21:53 +02:00
Magnus Norddahl
f75b6d8c5d
Improve debug level filtering
2016-08-18 02:10:54 +02:00
Magnus Norddahl
b21b65eb43
Rearrange binding of texture and sampler to get rid of texture state usage warning
2016-08-18 01:32:41 +02:00
Magnus Norddahl
01f9a2d27a
Fix clear warning
2016-08-18 00:21:33 +02:00
Magnus Norddahl
18ff65fb0e
Filter logging to only display each message once
2016-08-17 23:52:20 +02:00
Magnus Norddahl
d380d765c9
OpenGL object labels and debug groups
2016-08-17 23:18:47 +02:00
Magnus Norddahl
2825bd4967
Fix invalid value error
2016-08-17 21:25:31 +02:00
Magnus Norddahl
a37225b81e
Don't debug break on notifications
2016-08-17 21:25:03 +02:00
Magnus Norddahl
0c2db5447c
Save gl_debug in ini file and add support in Linux
2016-08-17 20:57:00 +02:00
Magnus Norddahl
2cb5f1740e
Add OpenGL debug messages to the console
2016-08-17 20:33:10 +02:00
Magnus Norddahl
fc01a6b832
Only query for GL_MAX_SAMPLES once
2016-08-17 17:59:47 +02:00
Magnus Norddahl
3c08f5ae48
Fix multisample count bug
2016-08-17 17:37:49 +02:00
Magnus Norddahl
5eeac830eb
Clear and InvalidateFramebuffer optimization
2016-08-17 17:37:13 +02:00
Magnus Norddahl
fa2bcebd51
Add KHR_debug and ARB_invalidate_subdata
2016-08-17 16:48:11 +02:00
Christoph Oelckers
314e89b84f
- fixed what looks like a copy/paste error in A_Explode.
2016-08-16 10:53:30 +02:00
Leonard2
e93b64f249
Fixed: a register from a return statement's value would not be freed
2016-08-16 08:59:27 +02:00
Major Cooke
aa2ca77412
Added damagetype parameter and XF_NOACTORTYPE to A_Explode.
...
- By default, A_Explode will refer to the actor's damagetype if using none. The flag forces the function's type if used regardless of type.
2016-08-16 08:59:27 +02:00
Christoph Oelckers
c02960e2cf
- added error message highlighting for one overlooked DECORATE error.
2016-08-16 08:58:29 +02:00
Magnus Norddahl
a8d1197ea7
Make sure we never pass a negative value to pow, and optimize gamma uniform
2016-08-16 00:01:18 +02:00
Magnus Norddahl
a03b2ff48b
Change render buffers from RGBA16F to RGBA16
2016-08-15 23:51:49 +02:00
Christoph Oelckers
ac80ffcc00
- fixed scissor calculations in 2D drawer.
2016-08-15 08:53:49 +02:00
Christoph Oelckers
df0f06a5ce
- fixed: FraggleScript's SetCamera function must call SetOrigin to set the camera's z. This needs updating of floorz and ceilingz, in case the camera is moved past a 3D floor.
2016-08-14 23:33:31 +02:00
Christoph Oelckers
0a555038e3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-14 22:11:17 +02:00
Christoph Oelckers
6deb185b46
- fixed another typo in scroller code.
...
Now Scroll_Texture_Model is working properly again. (Note: Whoever designed this function must have been on drugs - its use of the source data in Boom is completely insane.)
2016-08-14 22:10:44 +02:00
Christoph Oelckers
c59fd26d8a
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-08-14 21:57:04 +02:00
Christoph Oelckers
47d2fd403c
- fixed typos in scroll code.
2016-08-14 21:55:20 +02:00
Christoph Oelckers
4275aed3d9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-14 20:52:35 +02:00
Christoph Oelckers
a0d66be6e9
- fixed: Terrain splashes could be generated for 3D floors that were below the sector's actual floor.
2016-08-14 20:52:13 +02:00
Christoph Oelckers
e03696a6c9
- fixed: The model matrix must be disabled right after rendering the sky dome, so that it won't get used for the skyfog layer.
2016-08-14 20:11:46 +02:00
Christoph Oelckers
4e8a96aa0e
- removed FRenderState::set2DMode because it had no effect. This looks like development garbage from old times.
2016-08-14 09:14:26 +02:00
Magnus Norddahl
f8cc56ea3a
Move SetOutputViewport to OpenGLFrameBuffer::Update as it cannot be safely called from Begin2D
2016-08-14 09:05:54 +02:00
Magnus Norddahl
fd4422eb62
Restore bound texture when FGLRenderBuffers::Setup finishes
2016-08-14 09:05:53 +02:00
Magnus Norddahl
94b72d25e9
First render may not have known scene dimensions
2016-08-14 09:05:52 +02:00
Magnus Norddahl
af62352860
Fix uninitialized data in render buffers at creation
2016-08-14 09:05:52 +02:00
Magnus Norddahl
847d2e8862
Fix viewport not being updated when resizing window when no scene is active
2016-08-14 09:05:51 +02:00
Magnus Norddahl
4e38f31a86
Change GetClientWidth/GetClientHeight on macOS to grab size from view.
...
Fix that GetClientWidth/Height returns 0 when queried before initial show.
Allow window to be resizable on macOS.
2016-08-14 09:05:51 +02:00
Magnus Norddahl
647ef5d029
Fix blur shader to use RenderScreenQuad
2016-08-14 09:05:50 +02:00
Magnus Norddahl
210fce1193
Fix bloom shader missing its target
2016-08-14 09:05:50 +02:00
Magnus Norddahl
4ecb77385d
GetScreenshotBuffer bug fix
2016-08-14 09:05:49 +02:00
Magnus Norddahl
d5b122b092
Fix GetScreenshotBuffer grabbing from wrong location
2016-08-14 09:05:48 +02:00
Magnus Norddahl
c817979eae
Remove GetTrueHeight from GL renderer and concentrate all viewport calculations in SetOutputViewport
2016-08-14 09:05:48 +02:00
Magnus Norddahl
f56250b910
Remove premultiplied alpha
2016-08-14 05:10:34 +02:00
Christoph Oelckers
353a464f5b
- fixed: The 2D texture drawer did not reset the render state's color so any previously set desaturation would persist.
2016-08-13 22:15:00 +02:00
Christoph Oelckers
34c62c4d33
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-12 09:23:24 +02:00
Major Cooke
9dd458030e
This isn't needed. It's already checked at this point.
2016-08-12 09:17:21 +02:00
Major Cooke
7ffccd0009
Fixed: RGF_KILLED was not part of the mask.
...
- Greatly optimized DoRadiusGive by putting actor flag checking first ahead of pointer, classname and species checking.
2016-08-12 09:17:20 +02:00
Major Cooke
ec14dd94a7
A_Explode now returns the number of actors damaged and can be used in expressions.
...
- Enemies that do not take damage in any way are not counted.
2016-08-12 09:17:20 +02:00
yqco
ee7d933ed6
Add assert for previous I_Error condition
2016-08-11 04:47:17 -06:00
yqco
054f5c963e
Use verbose error message with DECORATE array indices
2016-08-11 04:22:37 -06:00
Christoph Oelckers
0fdd80eae7
- removed debug Printf.
2016-08-10 16:32:31 +02:00
Christoph Oelckers
0e5a3ebe50
- fixed bad function call in vertex buffer init code.
2016-08-10 00:35:42 +02:00
Christoph Oelckers
36a4352867
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 20:15:35 +02:00
Christoph Oelckers
b4e712ab01
- made disabling the push window check a real compatibility option.
...
No idea why this was a hidden one, this one definitely needs to be in the menu.
- set some required compatibility options for Super Sonic Doom.
2016-08-09 20:15:13 +02:00
Christoph Oelckers
7104b01193
- added Hexen compatible handling to specials that stop perpetual sector movement.
...
This uses the same logic as Eternity.
2016-08-09 17:09:12 +02:00
Christoph Oelckers
054dd8e5d9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 15:11:41 +02:00
Christoph Oelckers
6b27d0c3ba
- fixed: FPolyObj::RecalcActorFloorCeil altered the floorz of all actors in the same blockmap block as the polyobject, even when they were nowhere near its bounding box.
...
This fix is still incomplete, it should really discard everything outside the polyobject, not outside its bounding box, but at least it eliminates the most severe occurences of dislocated items.
2016-08-09 15:11:11 +02:00
yqco
b2a6512981
Fix partial initialization in ACS PickActor function
2016-08-09 02:11:13 -06:00
Christoph Oelckers
30b49572e1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 10:07:41 +02:00
Christoph Oelckers
19b65195ea
- added an internal compatibility option to disable setting the line ID for the Plane_Align special.
...
There have been reports for some Skulltag maps a few years back and I just ran across an old beta version of a map that got completely broken by this.
2016-08-09 10:07:06 +02:00
Magnus Norddahl
abef073ea4
Implemented sloped planes for true color mode
2016-08-09 01:17:45 +02:00
Magnus Norddahl
3c8719f945
Fix buffer overflow in FTexture::GenerateBgraMipmaps
2016-08-08 22:35:26 +02:00
Christoph Oelckers
56a60ebe85
- restored a line that got accidentally deleted.
2016-08-08 20:47:54 +02:00
Christoph Oelckers
e5f88a9883
- fixed: The textured automap was not using correct light levels.
...
In order for the externally passed vertex attribute to work the buffer's color attrib array needs to be disabled for these.
2016-08-08 16:18:07 +02:00
Christoph Oelckers
675822004d
- use static buffer data and a uniform to handle the texture positioning of the present shader.
...
That's again one less write access to the buffer. The uniform method was chosen because this way a buffer update can be completely avoided, and setting a single uniform is a lot cheaper and simpler to handle.
2016-08-08 16:06:02 +02:00
Christoph Oelckers
8daaf61160
- predefine the vertex data for the blend overlay which will never change throughout the lifetime of the GLRenderer object.
2016-08-08 14:24:48 +02:00
Christoph Oelckers
d7c0dda722
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-08 13:08:41 +02:00
Christoph Oelckers
d62d345a7b
- fixed: The cosine of 0° is 1, not 0, as the portal code assumed for linked portals.
2016-08-08 13:06:29 +02:00
Christoph Oelckers
9c9edbffdb
- on older ATI drivers where the clip planes are broken, only disable the clip planes themselves, but not OpenGL 3.x so that dynamic lights still work as intended.
...
- only disable clip planes on Windows, but not on Linux or macOS.
- If a driver reports full OpenGL 4.5 support, assume that all features are working properly.
2016-08-08 12:55:09 +02:00
Magnus Norddahl
2ac91f0c5a
Fix Nvidia driver ignoring wglSwapIntervalEXT
2016-08-08 12:22:40 +02:00
alexey.lysiuk
9ab9548723
Additional fix for splitting of complex wall in compatibility renderer
...
warp 2720 -200 -32 on Extreme Terror
https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/exterror
2016-08-08 12:19:37 +02:00
Christoph Oelckers
def3ad7533
- refactored all 2D drawing to use its own vertex buffer which does not need to be mapped permanently.
2016-08-08 12:13:09 +02:00
Christoph Oelckers
9a5cbbe6d8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-07 22:13:55 +02:00
Leonard2
b97024b710
The return statement now accepts any expression as its return value
...
So something like 'return ++user_x;' is now possible
Admittedly this needed quite a bit of refactoring mainly due to the fact that return types now have to be checked after resolving the function rather than before
2016-08-07 22:10:02 +02:00
Leonard2
e79c0225ed
Added all compound assignment operators to DECORATE
2016-08-07 22:10:02 +02:00
Leonard2
90cc79a902
Added the direct assignment operator to DECORATE
2016-08-07 22:10:01 +02:00
Leonard2
8437313e7c
Added post/pre increment/decrement operators to DECORATE
2016-08-07 22:10:01 +02:00
Leonard2
2ef51d0d50
Re-allow casts in sequences
2016-08-07 22:10:00 +02:00
Leonard2
db9f4c1385
Re-allow indexes as state parameter in sequences
2016-08-07 22:10:00 +02:00
Leonard2
a4142ad9fb
Re-allow action function calls with no argument list in sequences
2016-08-07 22:09:59 +02:00
Leonard2
078881a941
Parse statements as expressions in sequences
...
This will be needed for assignment operators to work
2016-08-07 22:09:59 +02:00
Christoph Oelckers
ab837b608d
- compatibility optioned triggering sector actions by indirectly initiated teleports
...
There's several old maps depending on this not happening.
- Set the option for Hell's Twisted Influence Part 1.
2016-08-07 22:04:16 +02:00
Edoardo Prezioso
5a66fdf9be
- Hide Clang -Winconsistent-missing-override warnings in non-Apple targets, too.
2016-08-07 20:55:16 +02:00
alexey.lysiuk
5b079dd40b
Fixed wrong height of player coordinates text
2016-08-07 11:32:55 +02:00
Magnus Norddahl
d4615861ae
Fix missing FGLRenderBuffers::IsEnabled checks
2016-08-07 00:41:17 +02:00
Christoph Oelckers
04c59b434b
- renamed WipeVertexBuffer to FSimpleVertexBuffer because this will be useful elsewhere, too.
2016-08-07 00:40:31 +02:00
Magnus Norddahl
2f512e54cd
Remove unused code
2016-08-06 23:12:34 +02:00
Magnus Norddahl
7000d0ccf9
Change GetPixelsBgra to use CopyTrueColorPixels
2016-08-06 22:59:16 +02:00
Magnus Norddahl
21390e91b8
Remove linear sky again
2016-08-06 21:04:45 +02:00
Christoph Oelckers
52537b0af2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-06 20:57:46 +02:00
Magnus Norddahl
9953d70eaa
Merge remote-tracking branch 'upstream/master' into truecolor
2016-08-06 20:45:35 +02:00
Christoph Oelckers
fd7b833ad5
- added some helper code mainly designed to help GZDoom maintain the vertex buffer for the textured automap.
2016-08-06 19:20:41 +02:00
Christoph Oelckers
8f0629932d
- ImmRenderBuffer is not needed anymore.
2016-08-06 14:29:21 +02:00
Christoph Oelckers
6a66d0255d
- use a dedicated vertex buffer for rendering the wipes.
...
- fixed: The postprocessing shaders clobbered the render state's vertex buffer info by bypassing and not notifying it of the change.
2016-08-06 14:12:40 +02:00
Christoph Oelckers
7576e85cef
- force use of shaders on all hardware, unless -noshader is specified.
...
Right it's only for easy testing, so only the code that does the feature checking has been disabled.
2016-08-06 13:06:55 +02:00
Christoph Oelckers
2e555e6dab
- use client arrays on compatibility profiles instead of calling glBegin/glEnd.
...
This eliminates most behavioral differences for FFlatVertexBuffer between both operating modes, now the only difference is where the buffer is located.
2016-08-06 12:03:16 +02:00
Magnus Norddahl
346badf25f
Moved state to FGLPostProcessState and merged vertex shaders
2016-08-06 11:51:08 +02:00
Christoph Oelckers
13a2bf57e5
- fixed vertex coordinate ordering for the sky cubemap.
...
This was done differently for FFlatVertex and FSkyVertex which caused a switch of the y and z coordinates for the skybox image.
2016-08-06 11:47:03 +02:00
Christoph Oelckers
5b201287fa
- fixed bad #pragma pack combination in hqnx_asm_Image.h
2016-08-05 15:27:35 +02:00
Christoph Oelckers
09e40840b5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-05 15:15:11 +02:00
Magnus Norddahl
a893013dbb
Adds HUD quadruple scale and a scale slider for the crosshair
2016-08-05 12:20:34 +02:00
Leonard2
01fb2eaecc
Fixed a typo in FxBoolCast::Emit
2016-08-05 12:16:13 +02:00
Leonard2
73d0ed78fe
Fixed: the game could crash while resolving expressions in some places
2016-08-05 12:16:13 +02:00
Leonard2
4a859393fe
Fixed: the game could crash while parsing expressions in some places
2016-08-05 12:16:12 +02:00
Christoph Oelckers
9229146eeb
- fixed: DFloor set the 'gap' for one wrong movement type.
2016-08-05 12:13:47 +02:00
Christoph Oelckers
13527fdd0a
Merge branch 'lensshader' of https://github.com/dpjudas/zdoom
2016-08-05 00:58:14 +02:00
Magnus Norddahl
976a78429e
Simplify post process buffer handling
2016-08-04 17:16:49 +02:00
Christoph Oelckers
1d434add50
- fixed: monsters which were made friendly by the MBF map flag lost their friendliness when being revived with Thing_Raise.
2016-08-04 17:14:31 +02:00
Magnus Norddahl
6fc7596d52
Fix aspect ratio and texture clipping in lens shader
2016-08-04 15:47:15 +02:00
Christoph Oelckers
21536781a9
- forgot to save this.
2016-08-04 13:01:42 +02:00
Christoph Oelckers
63ad7d99d1
- fixed: The dynamic light buffer's behavior needs to obey the gl.lightmethod variable, and not depend on presence of persistently mapped buffers.
...
Since there is a command line switch to revert to the lower behavior it can well be that they do not match.
2016-08-04 12:55:21 +02:00
Christoph Oelckers
7ba6269450
- changed rendering of sky cubemaps to use precalculated vertex data from the SkyVertexBuffer.
2016-08-04 12:16:53 +02:00
Christoph Oelckers
c1a4dd74c4
- added handling for Eternity's 'gap' parameter to:
...
Ceiling_LowerToFloor
Ceiling_LowerToHighestFloor
Ceiling_ToFloorInstant
Floor_RaiseToCeiling
Floor_RaiseToLowestCeiling
Floor_ToCeilingInstant
2016-08-03 12:59:40 +02:00
Christoph Oelckers
d8ab0b40dc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-03 12:17:55 +02:00
Christoph Oelckers
95c3464973
- properly handle 3D floors with inverted planes in the list sorter.
2016-08-03 12:17:22 +02:00
Magnus Norddahl
6b9529d70f
Added lens distortion shader
2016-08-02 17:32:21 +02:00
Magnus Norddahl
43e577ce79
Merge remote-tracking branch 'gzdoom_upstream/master' into postprocess_vbo_bind_fix
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
2016-08-02 10:00:53 +02:00
Magnus Norddahl
5a67ae6021
Fix missing VBO bind calls
2016-08-02 00:27:01 +02:00
Magnus Norddahl
f980a1f42b
Fix wrong UV calculations when resizing or maximizing window
2016-08-01 15:12:13 +02:00
Christoph Oelckers
8aebfdb3ab
- fixed: gl_bloom_amount may never be 0.
2016-08-01 11:29:28 +02:00
Magnus Norddahl
e8c98a5901
No gamma and player sprites on screenshots
2016-07-31 16:56:41 +02:00
Magnus Norddahl
7709db4bb0
Fix broken viewport/backbuffer location for WriteSavePic
2016-07-31 16:23:21 +02:00
Magnus Norddahl
a6354c74cf
Fix incorrect viewport location when not using fullscreen HUD
2016-07-31 13:23:49 +02:00
alexey.lysiuk
d3457f4508
Implemented hardware gamma support for macOS
...
Hardware gamma is limited to main display only, use shader-based correction for other displays
2016-07-31 12:19:08 +03:00
Christoph Oelckers
a69182f9ef
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-31 09:19:36 +02:00
Christoph Oelckers
20f4975e2b
Merge branch 'blurshader_120_fix' of https://github.com/dpjudas/zdoom
2016-07-31 09:17:28 +02:00
Magnus Norddahl
849e80074e
Added GLSL 120 fallback support
2016-07-31 03:54:16 +02:00
Magnus Norddahl
b789aaa0eb
Fix binding error that Nvidia didn't complain about but Intel on Mac does
2016-07-31 03:16:48 +02:00
Leonard2
c0d3eb997a
Fixed: the instant weapon switch flag didn't work anymore
2016-07-30 23:50:14 +02:00
Christoph Oelckers
c93204cace
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 22:09:56 +02:00
Christoph Oelckers
bc51e98612
Merge branch 'blackscreenfix' of https://github.com/dpjudas/zdoom
2016-07-30 20:28:41 +02:00
Magnus Norddahl
1682b02c67
Fix glBindSampler state messing up post processing shaders
2016-07-30 19:54:20 +02:00
Christoph Oelckers
124c109e18
Merge branch 'multisamplingbuffers' of https://github.com/dpjudas/zdoom
2016-07-30 16:35:19 +02:00
Magnus Norddahl
cfc20d1198
Added multisample support to FGLRenderBuffers and added gl_multisample to the menus
2016-07-30 15:33:30 +02:00
alexey.lysiuk
bd3fd22ac9
Do not use unicode characters in macOS console window
...
The same characters as in stdout are now used to draw bars in console window on macOS
All messages are treated as in ISO Latin 1 encoding and bars looked like garbage output
2016-07-30 16:21:48 +03:00
alexey.lysiuk
7de242930a
Removed obsolete gamma correct shader used on macOS only
2016-07-30 15:30:35 +03:00
alexey.lysiuk
cbe0a34f0b
Fixed usages of abs() function with double arguments
...
Clang no longer issues "warning: using integer absolute value function 'abs' when argument is of floating point type"
2016-07-30 14:03:57 +02:00
Christoph Oelckers
39059b3b5c
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 13:26:37 +02:00
Christoph Oelckers
0c8a4689b8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-30 13:26:25 +02:00
Christoph Oelckers
5ddee98e70
- fixed: Voxels with scaled to 0 caused a division by zero crash.
2016-07-30 13:19:02 +02:00
alexey.lysiuk
0648ef693f
Fixed compilation with Clang and GCC
...
No more "error: cannot pass object of non-trivial type 'FString' through variadic method; call will abort at runtime"
2016-07-30 13:04:16 +02:00
alexey.lysiuk
c0b86278e3
Removed old cruft from macOS OpenGL backend
...
The only thing left unimplemented is gl_smooth_rendered CVAR
2016-07-30 12:57:30 +03:00
Christoph Oelckers
b52d457146
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 11:45:19 +02:00
alexey.lysiuk
e2a2d38a25
Removed redundant comparison in compatibility renderer
...
Clang no longer reports "warning: comparison of array 'this->tcs' not equal to a null pointer is always true"
2016-07-30 10:25:42 +03:00
Xaser Acheron
a1a0da1f13
added SWF_SELECTPRIORITY flag to A_SelectWeapon
2016-07-29 18:48:54 -05:00
Major Cooke
36705b0f04
Added GZDoom version of SpriteAngle and SpriteRotation.
2016-07-30 00:33:33 +02:00
Christoph Oelckers
50765f8b79
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-30 00:32:29 +02:00
Christoph Oelckers
f4cbde856b
Merge branch 'bloom' of https://github.com/dpjudas/zdoom
2016-07-30 00:30:27 +02:00
Major Cooke
13fa06fe7a
Renamed GetProximity to CountProximity.
...
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-30 00:27:12 +02:00
Major Cooke
167cb28563
Added GetProximity(classname, distance, flags, ptr).
...
- Behaves similarly to A_CheckProximity but returns the count of classname instead of true/false.
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-30 00:26:55 +02:00
Leonard2
d0b953cbb7
Added for loops to DECORATE
2016-07-30 00:26:42 +02:00
Leonard2
e2fa8c2257
Added do-while loops to DECORATE
2016-07-30 00:26:41 +02:00
Leonard2
d1749233ec
Added while loops to DECORATE
2016-07-30 00:26:41 +02:00
Leonard2
c4eafc1c38
DECORATE can now handle jump statements
...
break and continue were added but are not yet useable anywhere
This was made general enough so that loops and switch statements that accept breaks/continues can be done without much difficulty as well as goto statements with explicit labels if those are ever wanted
2016-07-30 00:26:41 +02:00
Major Cooke
dfed6ac1fb
Added SpriteAngle and SpriteRotation properties.
...
- Includes four functions, A_SetSprite(Angle/Rotation) and GetSprite(Angle/Rotation).
- SpriteRotation offsets the angle of the sprite, allowing for actors to move backwards or sideways for example.
- SpriteAngle requires +SPRITEANGLE and sets the actor's sprite to the absolute rotation found at that angle. Overrides SpriteRotation once the flag is on.
2016-07-30 00:26:40 +02:00
Magnus Norddahl
9bfce5b6ea
Moved post processing effects to its own file
2016-07-30 00:02:26 +02:00
Magnus Norddahl
5849c83028
Added bloom and tonemap to menus
...
Added gl_renderbuffers CVAR that disables render buffers
Added patch shader support to FShaderProgram
Added OpenGL 2 fallback support to render buffers
2016-07-29 21:31:20 +02:00
Magnus Norddahl
0efee85bd8
Added tonemapping and sector based exposure control
2016-07-29 00:36:43 +02:00
Major Cooke
6ada8aa644
Fixed A_CopySpriteFrame not working under certain circumstances.
2016-07-28 15:55:49 -05:00
Leonard2
5907ff662d
Added a new state that the weapon jumps to when it is lowered all the way and the player is currently dead
...
The state is undefined by default to preserve the original behavior of having the weapon layer deleted which modders can now avoid by defining it properly
2016-07-28 17:42:22 +02:00
Magnus Norddahl
50f59bd3c7
Merge remote-tracking branch 'upstream/master' into truecolor
2016-07-28 10:54:44 +02:00
Christoph Oelckers
b8abec4e1f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-28 09:20:48 +02:00
Christoph Oelckers
759753eadc
- replaced more copystrings with FString.
2016-07-28 09:06:49 +02:00
Christoph Oelckers
66006a5c14
- use an FString to handle the new message.
2016-07-28 08:54:51 +02:00
yqco
58a6d7df1f
Added optional prompt argument to MENUDEF's SafeCommand
2016-07-28 08:41:55 +02:00
MajorCooke
3d9591229e
Added A_CopySpriteFrame(from, to, flags)..
...
- Copies a sprite/frame from one actor pointer to another. Sprite and/or frame copying can be disabled with flags CPSF_NO<SPRITE/FRAME>.
2016-07-28 08:39:32 +02:00
Jordon Moss
c0eb8f3b96
Added KILL Script type and associated flags and GameInfo keyword.
...
This is different from the original "Death Scripts" idea. This tackles
some issues I've found with the original idea (now you can have as many
scripts as you want, not just global and actor-defined). Also takes care
of other complaints about the original idea and push request. Flags and
their use are in code comments.
2016-07-28 08:34:23 +02:00
MajorCooke
1322ef2449
Renamed NODEATHJUMP to NODEATHDESELECT.
2016-07-28 08:29:47 +02:00
Leonard2
797f3aec0a
Added a weapon flag to ignore a player's input when dead
...
The reason this is not set by default is because before that anyone could call A_WeaponReady within their Deselect state which would have allowed players to fire even when dead
2016-07-28 08:29:46 +02:00
Leonard2
bcb18cf7d8
Added a flag to prevent the weapon from jumping to its Deselect state when the player dies
2016-07-28 08:29:46 +02:00
alexey.lysiuk
f38f7adf17
Automatic layout for ammo images in alternative HUD
...
When ammo icon is displayed before text its position depends on number of digits in current and maximum amounts
2016-07-28 08:19:31 +02:00
Magnus Norddahl
69f52cc898
Added bloom shaders
2016-07-27 21:50:30 +02:00
Christoph Oelckers
da1762ac2c
- fixed: DoSetMapSection could cause a stack overflow on large maps. Made it iterative instead of recursive to avoid that.
2016-07-27 16:27:40 +02:00
Christoph Oelckers
c9f93d9c88
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-27 11:28:55 +02:00
Magnus Norddahl
e82c38e4f9
Update copyright and typo fix
2016-07-27 11:15:20 +02:00
Magnus Norddahl
aeb7df09de
Added hardware gamma option and improved window handling on Windows
2016-07-27 11:15:19 +02:00
Christoph Oelckers
f67243a40f
- fixed: The NO_CHANGE constant shouldn't have been floatified because this is an input value for action specials which will remain integers.
2016-07-27 08:23:00 +02:00
Christoph Oelckers
071485b22e
- fixed: If the resulting render style, after all adjustments, is None for the weapon sprite, do not attempt to draw it at all.
2016-07-25 11:55:47 +02:00
alexey.lysiuk
4345623e28
Fixed incorrect scaling of particles
...
http://forum.zdoom.org/viewtopic.php?t=52906
2016-07-24 14:25:31 +03:00
MajorCooke
41414830a5
- Fixed: A_Warp never properly positioned actors on floors, if they wound up in or on one
2016-07-24 01:02:21 +02:00
Blue-Shadow
121db8fd37
Fixed: The player failed to unmorph upon resurrection
...
This happened if the morphing was triggered by a PowerMorph power-up.
2016-07-24 00:59:35 +02:00
Blue-Shadow
69a00ddabb
Added TRANSFERTRANSLATION morph flag
2016-07-24 00:56:57 +02:00
Magnus Norddahl
41e959e102
Adds the last texture filter mode (trilinear min filter with nearest magnification)
2016-07-23 18:57:37 +02:00
Christoph Oelckers
2cdc77de34
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-23 10:56:12 +02:00
Christoph Oelckers
54a120d612
- do not process subsectors if rendering a stacked sector portal and the clipper is set to 'blocked', i.e. no visible parts are present.
...
This solves the most severe occurences of sprites being drawn in front of a portal's contents. It is not a full fix, though, there's still some extreme cases where portals may glitch if some stuff gets between the camera and the actual portal area.
Normally this has to perform a full check of the subsector against the portal's camera-facing linedefs but that's too costly for those rare cases where it may be an issue.
2016-07-23 10:23:34 +02:00
alexey.lysiuk
a1a0bdefff
Added support for older versions of DeHackEd patches
...
Patches from DeHackEd 2.3 and 2.4 are now loaded without warnings/errors
2016-07-23 11:09:52 +03:00
Christoph Oelckers
d405cf5b7c
- fixed: Before rendering a sector stack portal the clipper needs to be completely filled, if the view point's subsector is not inside the portal. If this is not done, some setups where a recursive look into the originating area is possible may exhibit some issues.
2016-07-23 09:47:14 +02:00
yqco
4d6532d303
Added RGF_NORANDOMPUFFZ flag for A_CustomRailgun and A_RailAttack
2016-07-22 02:46:41 -06:00
MajorCooke
35666f1e09
Fixed a nullptr crash with flatsprite actors.
2016-07-21 13:12:59 -05:00
Christoph Oelckers
dd962798a5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-21 12:01:53 +02:00
Christoph Oelckers
fa22acca5d
- fixed: Dehacked's 'Speed' value should be treated as signed when being assigned to a double variable.
2016-07-21 12:01:06 +02:00
Christoph Oelckers
881731d76b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-21 08:28:56 +02:00
Blue-Shadow
c428e376cd
Added INFLICTORDMGTYPE flag to A_Damage* action functions
...
It forces the use of the inflictor's damagetype instead of whatever is
passed to the functions.
2016-07-19 08:34:55 +02:00
Blue-Shadow
d09ec5a930
Added DamageType ACS actor property
2016-07-19 03:16:12 +03:00
Magnus Norddahl
421cd2f403
Merge remote-tracking branch 'upstream/master' into truecolor
2016-07-17 23:36:35 +02:00
Christoph Oelckers
d4352dd1a7
- fixed slope calculation error.
2016-07-17 23:13:10 +02:00
alexey.lysiuk
8369833dc5
Fixed setting of custom color for static text in menu
2016-07-17 17:28:46 +02:00
Leonard2
446bc1018c
Fixed: weapons didn't clear their flash layer when the player died
2016-07-17 17:28:45 +02:00
Leonard2
e482a54389
Fixed a crash with A_ClearOverlays
2016-07-17 14:27:56 +02:00
alexey.lysiuk
39042dc4bf
macOS application controller is now using proper delegate protocol
...
Fixes compilation error with Xcode 8:
cannot initialize a parameter of type 'id<NSApplicationDelegate> _Nullable' with an lvalue of type 'ApplicationController *'
2016-07-17 08:02:55 +02:00
Christoph Oelckers
bce9929c22
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-16 19:57:09 +02:00
Christoph Oelckers
c150116f79
- fixed: When changing weapons due to starting or ending a Tome of Power effect, the PSprite's caller needs to be changed.
...
In this case the PSprite animation won't be changed, only the ReadyWeapon. But in order to work, the PSprite's caller needs to change as well so that the next weapon check does not fail.
2016-07-16 19:55:00 +02:00
MajorCooke
7544adfc91
Combined the target/master/tracer checking into AimBulletMissile.
2016-07-16 17:43:00 +02:00
MajorCooke
376c9b0306
- Optimized handling of puffs in the event they're null.
...
- Only spawn the puff as needed again if the projectile actually spawns.
2016-07-16 17:41:28 +02:00
MajorCooke
02064437c5
Fixed wrong angle/slopes being used and one too many &s for NOINTERACT.
2016-07-16 17:34:17 +02:00
MajorCooke
10fabc3ab7
Cleaned up code. Puffs no longer need ALWAYSPUFF.
...
- A_CustomBulletAttack and A_FireBullets will perform a second P_LineAttack to get a puff which only returns to the previous function after a tracer.
2016-07-16 17:34:17 +02:00
MajorCooke
4750dfd8b6
Added ability to set the puffs directly as the spawned projectile's target, master, and/or tracer.
2016-07-16 17:34:16 +02:00
MajorCooke
cc8e7f8de6
Cleaning finished.
2016-07-16 17:34:16 +02:00
MajorCooke
791852a6bd
Cleaned up.
2016-07-16 17:34:15 +02:00
MajorCooke
3c7e1e0528
- Added the tracer actor spawning for A_FireBullets and A_CustomBulletAttack.
...
The projectiles spawning conditions rely upon the puff successfully spawning.
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-16 17:34:15 +02:00
alexey.lysiuk
ee72760f3a
libc++ is now used by the linker too (when applicable)
2016-07-16 17:04:38 +02:00
alexey.lysiuk
58fb993402
Added ability to select ammo image and text display order in alternative HUD
...
Controlled via hud_ammo_order CVAR:
* 0 (default): image and text
* any other value: text and image
2016-07-16 16:15:59 +02:00
alexey.lysiuk
74fc45d7b7
Fixed instant boss brain spawning
...
There was a possibility of division by zero which led to nonsensical spawn time
http://forum.zdoom.org/viewtopic.php?t=52760
2016-07-16 15:39:57 +03:00
Christoph Oelckers
c5db5dff99
- fixed a crash when initializing the GL portal data for an incomplete or inactive portal. Also did a bit of cleanup on this code, the 'delta' member was never used.
2016-07-16 12:45:49 +02:00
Christoph Oelckers
a2f56b6ef5
- This should have been part of an earlier commit, no idea why it wasn't saved...
2016-07-16 09:35:20 +02:00
Jordon Moss
1ef8057fa7
Updated SurfaceSkin to take the path property.
2016-07-16 09:30:26 +02:00
Jordon Moss
6014bde3d0
Renamed PushSpriteFrame to PushSpriteMDLFrame for consistency.
2016-07-16 09:30:26 +02:00
Jordon Moss
8bbc04a46f
Fixed a minor typo in SurfaceSkin validity check.
2016-07-16 09:30:25 +02:00
Jordon Moss
b3b2eb42c6
Added SurfaceSkin MODELDEF property, allows overriding MD3 per-surface skins.
2016-07-16 09:30:25 +02:00
Christoph Oelckers
bc7b439dd0
- addressed: MDL_INHERITACTORPITCH got the direction of the rotation wrong. Fixed by deprecating this flag (and also MDL_INHERITACTORROLL) and introducing proper flags, named MDL_USE*. This not only resolves the issue but also elimintates the nonsensical INHERIT part of the names.
2016-07-16 09:10:18 +02:00
Christoph Oelckers
f4b80a451e
- fixed: The render style specific blend settings were overridden when adding code to ensure proper setup of all properties.
...
It turned out that the only thing that wasn't set is the alpha function, not the blend settings themselves.
2016-07-16 08:57:48 +02:00
Christoph Oelckers
943a799aee
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-16 08:30:33 +02:00
MajorCooke
b121284fc0
Added GAF_SWITCH to GetAngle, inverting the function to get the caller's angle on the pointer instead.
2016-07-14 17:14:17 +02:00
MajorCooke
09175a6a7a
This wasn't supposed to be committed...
2016-07-14 09:55:13 -05:00
MajorCooke
59593e57c6
- Fixed: RGF_ITEMS wasn't considered a part of the RGF_MASK flag.
2016-07-14 09:27:29 -05:00
Leonard2
5c182c7fd7
Fixed a crash with heretic's ChickenPlayer class
2016-07-13 13:01:32 +02:00
Leonard2
05d1df3571
Fixed crashes with the A_CrispyPlayer and A_HandLower action functions
...
Simply using FindPSprite in those functions wouldn't be enough because if a mod is using the firehands layer when they are called this would go very wrong
2016-07-13 13:01:32 +02:00
Leonard2
3ea70980f9
Fixed: the strife firehands were interpolated if a mod used the layer before them
...
The flags were also already reset, no need to do it twice
2016-07-13 13:01:32 +02:00
Leonard2
b8e1bead0a
Removed unneeded checks
...
GetPSprite cannot return a null pointer and calling setstate with a null pointer destroys it
2016-07-13 13:01:32 +02:00
Leonard2
da6e12d5bc
Fixed: the weapon layer offsets were interpolated even after the player switched his weapon
2016-07-13 13:01:32 +02:00
Leonard2
75cb8c00a6
Fixed: the flags weren't properly reset if a mod used the old layers before the code used them
2016-07-13 13:01:32 +02:00
MajorCooke
e56196eb1a
Disable facing camera rotations if the actor is a flat/wall sprite.
...
- It not only looks bad, it also throws off users when trying to make perfectly aligned images since the plane is distorted wildly.
2016-07-13 09:31:22 +02:00
MajorCooke
cc8d84cd5d
Fixed sprites defaulting to rotate around the center instead of the offsets. Seeing how it's still useful however, ROLLCENTER can still be used to center upon actors that are offsetted like monsters.
2016-07-13 09:31:22 +02:00
Christoph Oelckers
2a42c20c8c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-13 09:30:16 +02:00
MajorCooke
7ded355d5d
Added rollcenter compatibility.
2016-07-13 09:29:36 +02:00
Christoph Oelckers
79264cb8cd
- fixed missing QuakeEx parameter conversion.
2016-07-12 19:57:32 +02:00
Leonard2
bdeb233849
Fixed: conditionals didn't properly compile to vm code
2016-07-12 19:50:37 +02:00
Leonard2
bbdc64a955
Fixed bad serialization of float types
...
The value was written twice if it couldn't be reduced to a single precision value
2016-07-12 19:37:00 +02:00
Leonard2
af53f5a825
Properly use the boolean type in function declarations
...
This will get rid of useless casts like 'if (isPointerEqual(x))'
It will also allow for proper casting in parameters like using a state as a boolean which is allowed in if statements for example
2016-07-12 19:36:59 +02:00
Leonard2
371896b2cc
Properly use the boolean type in expressions
...
This fixes things like 'if (GetCVar(x))' not working
2016-07-12 19:36:59 +02:00
subenji
7d1dc46665
Implemented fix discussed in http://forum.zdoom.org/viewtopic.php?f=2&t=52428 rearding UserVar corruption in savegames
2016-07-12 19:36:59 +02:00
Blue-Shadow
1f2c8181bb
Added IfWaterLevel SBARINFO command
2016-07-12 19:36:58 +02:00
Braden Obrzut
e401588f40
- Set -stdlib=libc++ and disable inconsistent-missing-override warning with OS X Clang (the latter may be useful for recent versions of Clang in general, but I can't tell at the moment.)
2016-07-11 01:22:37 -04:00
Magnus Norddahl
19030b555f
Fix sky stretching on widescreen displays
2016-07-06 20:19:01 +02:00
Christoph Oelckers
b2a88c1abd
- fixed: mapthinghexen_t::flags needs to be unsigned.
...
This is necessary so that an incorrectly set 0x8000 bit won't enable all high flags.
2016-07-05 01:17:12 +02:00
Christoph Oelckers
6f57c9c8b1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-04 22:37:12 +02:00
Christoph Oelckers
b81876698f
- changed P_ChangeSector so that for bridges it only keeps the floorz and ceilingz of the spawn position.
...
This is necessary to prevent moving sectors from altering the bridge's z-position. The bridge should remain at its current z, even if the sector change would cause floorz or ceilingz to be changed in a way that would make P_ZMovement adjust the bridge.
2016-07-04 22:36:27 +02:00
Magnus Norddahl
b0e9adfc10
Fix single layer skies by using a cube box rather than a cylinder
2016-07-04 16:33:19 +02:00
Christoph Oelckers
6b0b7ea049
- fixed sprite z coordinate calculation for flatsprites.
2016-07-04 01:00:01 +02:00
Christoph Oelckers
cc784fff14
Merge branch 'rollGZ2' of https://github.com/MajorCooke/zdoom
2016-07-04 00:45:37 +02:00
Christoph Oelckers
279b939521
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-07-04 00:44:52 +02:00
Christoph Oelckers
0b93e9b897
Merge branch 'roll' of https://github.com/MajorCooke/zdoom
2016-07-04 00:43:16 +02:00
Christoph Oelckers
d87665bfe0
- fixed: A_CheckTerrain must add to the actor's current velocity, not set it.
2016-07-04 00:39:35 +02:00
Christoph Oelckers
560c1d5c1c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-03 13:43:44 +02:00
Christoph Oelckers
d6d9057f1f
- removed the old way to stop the AnimatedDoor interpolation, now that the parent class can be told that we do not want one. This old code was no longer functionsl.
2016-07-03 13:42:54 +02:00
Christoph Oelckers
e42442732a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-03 13:39:58 +02:00
Christoph Oelckers
1b6a850bf6
- fixed: DAnimatedDoor's main constructor did not disable ceiling interpolation.
2016-07-03 13:39:33 +02:00
Magnus Norddahl
13ef9a834c
Compile fix for gcc/clang
2016-06-30 13:56:53 +02:00
Magnus Norddahl
d1617fcdf0
GCC compile fixes
2016-06-30 13:45:06 +02:00
Christoph Oelckers
3e3a0cdc3d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-30 12:02:51 +02:00
Christoph Oelckers
7bdb98cc0b
- removed debug stuff.
2016-06-30 11:31:00 +02:00
Christoph Oelckers
fc3682006a
- fixed PointOnSide functions to consider 'on the line' as 'in front of'.
...
The bad code was taken from the 2005 floating point rewrite that, by comparing the value with '> -EQUAL_EPSILON', returned 1 for any value close to 0 (as 'on the line') so it was mistakenly reported as 'behind the line'.
2016-06-30 11:30:32 +02:00
Christoph Oelckers
c6fb35ed52
- added per-item colors for static text items in the menu.
...
For option menus this replaces the 'highlighted' parameter with an actual color, for list menus it adds a new parameter.
2016-06-30 10:27:14 +02:00
Christoph Oelckers
57667c2e0b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.eng
2016-06-29 14:58:32 +02:00
Edoardo Prezioso
4defb6e967
- Fix myoffsetof using misaligned pointer access.
...
That could be a problem for particularly pedantic platforms.
2016-06-29 13:04:31 +02:00
MajorCooke
41d20fa6cf
Fixed freeze with A_ClearOverlays.
2016-06-29 12:46:50 +02:00
Christoph Oelckers
6cf96372ba
- fixed: incorrect flag masking for polyobjects disabled all line portals.
2016-06-29 12:46:20 +02:00
Christoph Oelckers
f8ae166281
- fixed return value inversion of FS's ceilingheight and floorheight functions.
2016-06-29 12:46:20 +02:00
Christoph Oelckers
a3450ab824
- removed unused cruft in FS code.
2016-06-29 12:46:19 +02:00
Christoph Oelckers
c6d8125b45
- fixed FraggleScript's resurrect function to call AActor::Revive to ensure that everything gets reset.
2016-06-29 12:46:19 +02:00
alexey.lysiuk
924b8105c5
Fixed splitting of complex walls in compatibility renderer
...
Example: +warp 2720 -200 -32 on Extreme Terror
https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/exterror
2016-06-29 12:34:35 +02:00
alexey.lysiuk
e6a7db99e4
Fixed missing polyobjects in compatibility renderer
2016-06-29 12:23:16 +02:00
alexey.lysiuk
fc8eaab57b
Fixed crash in dynamic lights compatibility renderer
...
Reproduces using -iwad plutonia -file brutalv20b.pk3 +map map07
2016-06-29 12:21:39 +02:00
Christoph Oelckers
17c212d5bc
- disable transparent door render hacks if any of the involved sectors contains floor slopes.
...
These lead to false positives but rarely represent actual hacks.
2016-06-29 12:19:00 +02:00
Magnus Norddahl
335ca12909
Merge remote-tracking branch 'upstream/master' into truecolor
2016-06-27 12:29:23 +02:00
Christoph Oelckers
a99ff71d18
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-06-27 12:01:48 +02:00
Christoph Oelckers
8e3263a433
- fixed return value inversion of FS's ceilingheight and floorheight functions.
2016-06-27 12:01:11 +02:00
Magnus Norddahl
7a65a0f595
Made mipmapping a little less aggressive
2016-06-27 11:57:27 +02:00
Magnus Norddahl
200d357b0d
Linear filtering bug fix
2016-06-27 11:43:24 +02:00
Magnus Norddahl
8f38d3af99
Replaced the bicubic interpolation filter with a simple sharpening filter
2016-06-27 10:49:15 +02:00
Magnus Norddahl
6c037fa249
Throwing templates at the code redundancy problem in drawers
2016-06-26 21:23:32 +02:00
Magnus Norddahl
928e8e0d43
Improved linear filtering performance by adding a lookup table
2016-06-26 12:53:10 +02:00
Magnus Norddahl
4fd127651d
Fixed fuzz drawer crash
2016-06-26 06:54:32 +02:00
Magnus Norddahl
3b6d177787
Added bicubic interpolation when generating mipmaps
2016-06-25 12:14:15 +02:00
Magnus Norddahl
7705463966
Improved linear filtering of walls
...
Fixed some crash bugs
Added mipmap and filtering options to the display menu
2016-06-25 10:33:35 +02:00
Magnus Norddahl
8ec420a597
Added support for more texture filtering control
2016-06-24 19:05:04 +02:00
Magnus Norddahl
b7f32d1bfc
Added LoopIterator to the drawt family of drawers
2016-06-24 18:05:32 +02:00
Magnus Norddahl
698b5f3db1
Simplify drawer code by creating loop iterators
...
Fixed blending bug
2016-06-24 11:37:51 +02:00
Christoph Oelckers
96272fc8b8
- removed unused cruft in FS code.
2016-06-22 13:37:35 +02:00
Christoph Oelckers
4e1c53af91
- fixed FraggleScript's resurrect function to call AActor::Revive to ensure that everything gets reset.
2016-06-22 13:35:03 +02:00
Magnus Norddahl
7a0c801a18
Added mipmapping to wallscan
2016-06-22 08:23:16 +02:00
Magnus Norddahl
ca9d8e580e
Increase command queue memory pool to 16 MB and make it flush if its exhausted
2016-06-22 00:51:16 +02:00
Magnus Norddahl
db4cba239a
Renamed member variable to make it compile with gcc
2016-06-22 00:27:12 +02:00
Magnus Norddahl
e294906d69
Voxel support in true color mode
2016-06-22 00:22:06 +02:00
Magnus Norddahl
f81042b3e2
Fix warning generated by gcc
2016-06-21 22:10:04 +02:00
Magnus Norddahl
4142b6ed1b
GCC compile fix
2016-06-21 22:03:34 +02:00
Magnus Norddahl
c235de5c22
Native mipmap support to FTexture
2016-06-21 21:55:08 +02:00
Christoph Oelckers
af20f31b94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-21 10:46:12 +02:00
Christoph Oelckers
4899c405c3
- fixed: all non-ZDoom compatibility profiles need compat_maskedmidtex set.
...
This was neither fixed in Boom nor MBF.
2016-06-21 10:45:17 +02:00
MajorCooke
613fa4c9e4
Fixed: GetDistance was missing the original Z check disabling introduced in commit bd16ccb
.
2016-06-21 10:14:25 +02:00
Magnus Norddahl
d15af1524c
Added mipmap support for floor and ceiling
2016-06-21 09:38:47 +02:00
Magnus Norddahl
c1b5ba5b90
Added SSE versions of bilinear filtering
2016-06-21 06:22:43 +02:00
MajorCooke
9df65f73fc
Localized the input checker into P_Thing_CheckInputNum now called by both ACS and DECORATE..
2016-06-20 09:41:46 -05:00
MajorCooke
26408a5043
Switched the pointer to AAPTR_DEFAULT.
2016-06-20 09:11:38 -05:00
MajorCooke
85a34bbb88
Added GetPlayerInput(int numinput, int ptr = AAPTR_PLAYER1).
...
- Works exactly like the ACS version, but with pointers instead. The pointer can be anything, so long as it can be identified as a player.
2016-06-20 08:49:57 -05:00
Edoardo Prezioso
6384e81d0f
- Add support for Skulltag ACS IsNetworkGame.
...
Once known as PlayerOnTeam, then it became IsMultiplayer, but Skulltag code ignored emulated multiplayer, hence the new and clearer name.
2016-06-20 09:34:41 +02:00
Magnus Norddahl
c70aa1fe99
Added bilinear filtering
2016-06-20 08:24:02 +02:00
Magnus Norddahl
6daeb5a158
Blend mode fixes
2016-06-20 02:36:54 +02:00
MajorCooke
e02ed3a6f7
Take in the targeter layers if someone disables the safety and uses 0 for start and stop.
2016-06-20 01:15:51 +02:00
MajorCooke
ecfa7415b3
This small change was left out by mistake.
2016-06-20 01:15:51 +02:00
MajorCooke
30880aab79
And a bit more optimization...
2016-06-20 01:15:50 +02:00
MajorCooke
2b91db7b3a
Refactored A_ClearOverlays.
2016-06-20 01:15:50 +02:00
MajorCooke
dd410876cf
Added A_ClearOverlays(int start, int stop, bool safety).
...
- Clears a set of overlays in ranges [start,stop]. If unspecified, wipes all non-hardcoded layers. Safety determines whether to affect core layers or not (i.e. weapon). Returns the number of layers cleared.
Added no override boolean to A_Overlay and a boolean return type.
- If true, and a layer already has an active layer, the function returns false. Otherwise, sets the layer and returns true.
2016-06-20 01:15:49 +02:00
Magnus Norddahl
d3bc68a160
Disabled the AVX intrinsics
2016-06-19 23:37:22 +02:00
Magnus Norddahl
b322043724
Merge remote-tracking branch 'upstream/master' into truecolor
2016-06-19 23:13:16 +02:00
Magnus Norddahl
e72a032a11
Fixed alpha channel issue with textures
2016-06-19 23:12:10 +02:00
Magnus Norddahl
38aba81dcc
Added more SSE drawers
2016-06-19 23:11:41 +02:00
Edoardo Prezioso
2f6c98ead3
- Added support for old Skulltag ACS PlayerTeam.
2016-06-19 22:57:42 +02:00
Edoardo Prezioso
de55d693f9
- Fixed ACS Singleplayer for non-net multiplayer.
2016-06-19 12:59:46 +02:00
Christoph Oelckers
8cf150e68a
- set up portal rotations in the finalizing step, not during initialization.
...
Anything earlier may miss some information required to do this correctly.
2016-06-19 12:40:38 +02:00
Christoph Oelckers
da05dfa72e
fixed: Polyobject-based line portals may not cache their angle as it may change at any time.
2016-06-19 12:32:45 +02:00
Edoardo Prezioso
4e148f00e6
- Fixed wrong Skulltag ConsoleCommand pcode name.
...
Also report this pcode as not supported by the program.
2016-06-19 12:01:29 +02:00
Christoph Oelckers
b364926e93
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-19 11:53:17 +02:00
Christoph Oelckers
cebd877191
- fixed the center point calculation for triangular sectors.
...
The old method does not work as expected with the higher precision of doubles, so instead just average the 3 vertex positions to get the triangle's center.
2016-06-19 11:48:20 +02:00
alexey.lysiuk
2813a22740
Fixed inconsistent state of lights in compatibility renderer
2016-06-19 11:19:31 +03:00
Magnus Norddahl
3f905197d0
Moved vectorized drawers to their own files
2016-06-19 07:40:01 +02:00
Christoph Oelckers
7b99c883e1
- use the exact same semantics and methods to handle player visibility as in the software renderer.
...
This fixes invisible player sprites in recursive line portals.
2016-06-18 12:14:20 +02:00
Magnus Norddahl
3e7eb79729
Added some experimental AVX2 drawers
2016-06-18 11:17:59 +02:00
Christoph Oelckers
849ee50689
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-18 10:01:44 +02:00
Christoph Oelckers
87d27b8db3
- fixed some crash issues with recent changes.
2016-06-18 10:01:24 +02:00
Magnus Norddahl
e7cdcd9c0a
Change to one pass rendering to remove fuzz artifact
2016-06-18 05:20:34 +02:00
Edoardo Prezioso
56508a2d82
- Avoid issues with misused Strife actions.
2016-06-17 23:09:34 +02:00
Leonard2
24c73071f4
Fixed a crash with A_JumpIfNoAmmo
...
Non-weapon layers can pass the caller check even when there is no ReadyWeapon
2016-06-17 18:36:57 +02:00
Leonard2
68c483c041
Renamed the weapon action function caller check to ACTION_CALL_FROM_PSPRITE to avoid confusion
...
This was always checking for every psprites rather than just weapon layers
2016-06-17 18:36:57 +02:00
Leonard2
abc7113e09
Removed the INSTATECALL flag because it is now unused and was replaced by stateinfo
2016-06-17 18:36:57 +02:00
Christoph Oelckers
92e2ce2aef
- adjustments for weapon rendering in GL.
...
This adds support for the new weapon state code and fixed some lighting calculations.
Note that this currently will not allow combination of HUD models with other sprite frames yet.
2016-06-17 17:21:42 +02:00
Christoph Oelckers
b7d13c0711
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-17 16:18:24 +02:00
Christoph Oelckers
8ca07443f1
- fixed: Sprite splitting at 3D floors must set the fog parameters for the new light level.
2016-06-17 16:16:31 +02:00
Christoph Oelckers
05fabbe294
- fixed: G_InitNew may only clear the hub statistics when it is not called during loading of a savegame.
2016-06-17 16:14:58 +02:00
Christoph Oelckers
2c928a2cda
- fixed: Strife's firehands' coordinates need WEAPONTOP being added because it cannot be taken from the main weapon layer which no longer exists when the hands appear.
2016-06-17 15:26:00 +02:00
Magnus Norddahl
4ef2fb3cdb
Fixed multithreaded rendering issue with the fuzz effect
2016-06-17 14:45:52 +02:00
Christoph Oelckers
018615ca0d
- fixed weapon-based Psprite adjustment to always use the weapon this was called from and make non-weapon specific checks only exclude the targeter.
2016-06-17 14:14:35 +02:00
Magnus Norddahl
822bbd5b9a
Fuzz (invisibility) adjustments
2016-06-17 13:40:23 +02:00
Magnus Norddahl
f53e468f3f
Fixed fill column rgba drawers
2016-06-17 12:38:00 +02:00
Magnus Norddahl
35c078dc1e
Screenshot fix
2016-06-17 11:24:21 +02:00
Magnus Norddahl
12a50c140c
Fix animated textures not updating in swtruecolor mode
2016-06-17 10:47:30 +02:00
Edoardo Prezioso
574f2936d4
- Fixed GCC/Clang compiler errors and warnings.
2016-06-17 10:19:03 +02:00
Magnus Norddahl
5963f29afd
Added missing SetUpdated
2016-06-17 10:16:34 +02:00
Magnus Norddahl
000008e04d
Fixed empty canvas in kdizd intermission screen
2016-06-17 10:14:33 +02:00
Magnus Norddahl
3089043b07
Fixed typo
2016-06-17 08:28:30 +02:00
Magnus Norddahl
3369a2747c
Merge remote-tracking branch 'upstream/master' into truecolor
...
# Conflicts:
# src/r_things.cpp
2016-06-17 08:23:42 +02:00
Magnus Norddahl
fee8650357
Add r_multithreaded and fix color issue
2016-06-17 08:02:41 +02:00
Christoph Oelckers
cfaa3e3fa9
- changed action function interface so that callers can be identified directly, instead of guessing it from looking at the parameters.
...
With arbitrary PSP layers the old method was no longer safe because the layer ID was not available in the action function.
2016-06-16 16:16:27 +02:00
Christoph Oelckers
7ccdbf9b62
Merge branch 'PSprites'
2016-06-16 16:16:16 +02:00
MajorCooke
c9f4620702
Reimplemented P_SetPsprite.
2016-06-16 07:24:00 -05:00
Xaser Acheron
de0301a704
split bfg self-damage code into its own function, A_RadiusDamageSelf
2016-06-16 00:43:07 +02:00
Xaser Acheron
481ef7a5b5
added SMMU-BFG11k-style 'damrad' property to A_BFGSpray
2016-06-16 00:43:07 +02:00
Xaser Acheron
8e8248284a
added BFGF_HURTSOURCE and BFGF_MISSILEORIGIN to A_BFGSpray
2016-06-16 00:43:06 +02:00
MajorCooke
2d4eb8dde4
- Added limit parameter to A_RailAttack and A_CustomRailgun.
2016-06-14 18:20:43 -05:00
Magnus Norddahl
77c4786b9d
Minor code cleanup
2016-06-14 23:05:20 +02:00
Magnus Norddahl
9c8c1e0ea5
Fixed window transparency bug
2016-06-14 00:27:08 +02:00
Magnus Norddahl
586d5cdf1e
Normalize naming convention a little
2016-06-13 23:33:52 +02:00
Magnus Norddahl
69b2fa72e8
Moved RGBA draw stuff to its own header file
2016-06-13 23:10:54 +02:00
Magnus Norddahl
8ba6a4f175
Precache, Unload and FillSimplePoly bug fix
2016-06-13 21:39:55 +02:00
Christoph Oelckers
f1597a5d26
- fixed: Trace should set CrossedWater only if a water surface actually is crossed, i.e. the start of the trace and the end of the trace are on different sides of the surface.
...
This was incorrectly spawning splashes when shooting inside a deep water sector, but in most cases the splash just was not visible. It could become visible if its position got clipped by a nearby one-sided wall.
2016-06-13 21:30:58 +02:00
Magnus Norddahl
3ce2d8365d
Fix HUD colors when hw2d is off
2016-06-13 20:01:31 +02:00
Magnus Norddahl
e31331bed2
Sloped plane adjustments
2016-06-13 19:09:48 +02:00
MajorCooke
82bc5e7bd1
Fixed wrong token for Light keyword.
2016-06-13 09:50:12 -05:00
Christoph Oelckers
d74584e5b2
- fixed: DAnimatedDoor must not start an interpolation on the door sector's ceiling.
2016-06-13 13:58:39 +02:00
Magnus Norddahl
cc10c2a970
Fix cameras and kdizd intro for true color mode
2016-06-13 03:16:48 +02:00
Magnus Norddahl
0f0859b0b2
Special colormap support for when no hw accel is available
2016-06-12 22:54:23 +02:00
Magnus Norddahl
350857a9f6
Fixed fuzz effect when using multiple cores
2016-06-12 19:19:44 +02:00
Braden Obrzut
624c935385
- Fixed: Floating point conversion error in SBarInfo DrawBar which broke interpolation.
2016-06-12 06:28:50 -04:00
Christoph Oelckers
b8e392eaa5
- do not try to load empty BEHAVIOR lumps.
...
These would otherwise print an error message but there's a lot of maps out there which only have an empty entry to mark the map as Hexen format.
2016-06-12 11:45:25 +02:00
Magnus Norddahl
42efc7334e
Fix missing particles in true color mode
2016-06-12 00:50:43 +02:00
Magnus Norddahl
351874be30
Merge remote-tracking branch 'upstream/master'
2016-06-12 00:08:05 +02:00
Christoph Oelckers
373c59f924
- fixed inverse sign for rocket trail particle movement.
2016-06-12 00:05:23 +02:00
Christoph Oelckers
db2cef96d6
- removed unnecessary FLOAT2FIXED call in particle code.
2016-06-11 23:43:07 +02:00
MajorCooke
4c8028d64b
- Fixed a discrepancy with A_FaceMovementDirection involving pitch adjustments going the wrong way both in motion, and standing still.
2016-06-11 14:07:27 -05:00
Magnus Norddahl
40b76dc9b0
Apply gamma when using true color output on Linux and Mac
2016-06-11 18:41:56 +02:00
Christoph Oelckers
9eb18a9e45
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-11 17:15:55 +02:00
Magnus Norddahl
5ae8e9e8c2
Fix missing colormap lookup
2016-06-11 16:17:30 +02:00
MajorCooke
fb286d1737
- Changed endsize to sizestep. Endsize affected more things than I thought it would.
2016-06-11 08:05:29 -05:00
Leonard2
ebe3f23677
Added GetCVar(string name)
...
Works like ACS's GetCVar
2016-06-11 10:15:49 +02:00
MajorCooke
d8bf958a06
Fixed: Frozen particles would still be deleted when frozen instead of doing nothing with.
2016-06-11 10:00:50 +02:00
MajorCooke
f787056198
- Added endsize parameter and SPF_NOTIMEFREEZE for A_SpawnParticle.
...
SPF_NOTIMEFREEZE processes particles with this flag regardless of time freeze. The endsize parameter changes the scale of the particle to that size throughout its lifetime linearly.
2016-06-11 10:00:50 +02:00
Magnus Norddahl
a6d696bbfd
Undo removal of wallscan_np2 and wallscan_np2_ds
2016-06-11 00:50:36 +02:00
Magnus Norddahl
d5331e6095
Wallscan fix
2016-06-10 22:22:40 +02:00
Magnus Norddahl
07571da98c
Improved how threaded rendering is handled
2016-06-10 18:43:49 +02:00
Magnus Norddahl
ffcfe0b54f
Fix warning
2016-06-10 17:08:45 +02:00
Magnus Norddahl
9420826094
Merge remote-tracking branch 'upstream/master'
2016-06-10 16:59:20 +02:00
Magnus Norddahl
27156eb60a
Linux compile fixes and missing variable declarations
2016-06-10 16:32:47 +02:00
Magnus Norddahl
103a6baac5
Support for drawing in multiple passes
2016-06-10 15:57:31 +02:00
Magnus Norddahl
6c70eaea2f
Add jpeg bgra support
2016-06-10 15:56:50 +02:00
Magnus Norddahl
24f846f702
Bug fixes
2016-06-10 14:25:56 +02:00
Magnus Norddahl
05b6fe6174
Added true color texture support for walls and floors
2016-06-10 13:50:34 +02:00
Christoph Oelckers
c4d8950a7f
- fixed: APROP_Friction was missing a 'break'.
2016-06-10 13:23:23 +02:00
Magnus Norddahl
c59db95cc8
Rewrote wallscan to fix buffer overruns and code duplication.
2016-06-09 23:12:38 +02:00
Christoph Oelckers
ef86b3975a
- added 'strictdecorate' CVAR. If this is set to 'true', any DECORATE error that had to be demoted to a warning for backwards compatibility will be treated as an actual error.
2016-06-08 10:56:11 +02:00
Christoph Oelckers
cf21bb1524
- reinstated abort-on-error for any problem that gets reported during DECORATE code generation.
...
- fixed: DECORATE allowed a silent conversion from names to integers.
In old versions the name was converted to 0, since the scripting branch to the name index. Reverted to the old behavior but added a warning message.
2016-06-08 10:46:35 +02:00
Magnus Norddahl
c452d02573
Added multicore rendering to true color drawers
2016-06-07 15:25:11 +02:00
Magnus Norddahl
c5fcfb664f
Changed rgba renderer to use a command queue system for its drawers
2016-06-07 00:55:52 +02:00
Christoph Oelckers
1703842a94
- fixed some issues with teleport fog:
...
* many calls didn't use TELEFOGHEIGHT, mostly those coming from external code submissions that never were tested on anything but Doom. Addressed by adding this value inside P_SpawnTeleportFog and making the distinction between projectiles and non-projectiles from P_Teleport also part of this function.
* there were still a few places which spawned the teleport fog directly, skipping all the added features of P_SpawnTeleportFog.
2016-06-06 10:48:40 +02:00
MajorCooke
b2d2389343
Fixed: Slanted flat + roll sprites didn't take DONTFLIP into account.
2016-06-05 15:51:23 -05:00
MajorCooke
53837de17d
Added DONTFLIP flag.
...
- By default, when viewing a flat sprite from behind, the image is flipped around on the X axis. This may not always be desired, so this flag disables it.
2016-06-05 15:21:19 -05:00
MajorCooke
e58c6de7d6
DONTFLIP flag prevents the backside from flipping over.
2016-06-05 15:14:40 -05:00
alexey.lysiuk
c176d38b7e
Fixed compilation with Clang
2016-06-05 19:41:08 +03:00
Magnus Norddahl
c058ab9cc9
Fixed non-standard __m128i usage in SSE_SHADE
2016-06-05 17:34:51 +02:00
Magnus Norddahl
0c8c9e0aea
Added FDynamicColormap support to true color mode
2016-06-05 14:08:03 +02:00
alexey.lysiuk
56ce6abbc2
Fixed splitting of walls in compatibility renderer
...
Any wall adjacent to 3D floor sector were not rendered at all
2016-06-05 12:38:23 +03:00
Christoph Oelckers
8a08fb2f6a
- fixed nullptr/bool mixup.
2016-06-04 20:52:56 +02:00
Magnus Norddahl
af02bafdeb
Fixed missing some columns in transparency rendering
2016-06-03 22:57:36 +02:00
Leonard2
0b88bae458
The strife firehands now make proper use of the psprite layers
2016-06-03 19:46:31 +02:00
Leonard2
afa708c138
Allow psprite layers to be manipulated directly from the player's own body
2016-06-03 19:18:58 +02:00
Magnus Norddahl
373b59b94f
Fix dovline4 being a define on X64_ASM
2016-06-03 14:06:44 +02:00
Magnus Norddahl
6160675e08
Added a few more SSE drawers
2016-06-03 12:42:08 +02:00
Leonard2
eeff17c550
Account for this on the renderer's side instead
...
This fixes the weapon's layer behaving differently when called from
A_Overlay (the flag would be set in this case breaking the offsets)
2016-06-03 00:50:12 +02:00
Leonard2
543414d31f
Added 2 new layer flags: PSPF_CVARFAST and PSPF_POWDOUBLE
...
These flags allowed to easily restore a lost part of the targeter layers
behavior
2016-06-03 00:50:11 +02:00
Leonard2
bc334ccc9f
Avoid creating the targeter layers if the inventory item isn't attached to
...
its owner yet
2016-06-03 00:50:11 +02:00
Leonard2
e1f139ddcd
The targeter layers now use a proper Caller
...
This will avoid having to check for certain stuff and also allow them to not be destroyed when the ReadyWeapon is null like before
2016-06-03 00:50:10 +02:00
Leonard2
8244d2c844
Make sure never to call GetPSprite when the ReadyWeapon is null
2016-06-03 00:37:55 +02:00
Leonard2
9ee5e57340
Call GetPSprite here to update the ReadyWeapon but avoid doing so if it
...
is null
TickPSprites will take care of destroying the weapon/flash layers if the
ReadyWeapon is null
2016-06-03 00:37:54 +02:00
Leonard2
f14a840777
The ReadyWeapon is now assumed to not be null
2016-06-03 00:37:54 +02:00
Magnus Norddahl
7142faf41d
Minor compile error fixes when X86_ASM is defined
2016-06-02 21:39:44 +02:00
Magnus Norddahl
02a39ef457
Added bgra support to SDL target
2016-06-02 20:05:08 +02:00
Leonard2
8668719bbc
Revert "- re-added P_SetPSrite."
...
This reverts commit e6d89b9f71
.
2016-06-02 20:02:03 +02:00
Leonard2
d933f77bf5
Fixed: the game could crash if some inventory items were destroyed in a
...
certain way
2016-06-02 20:00:22 +02:00
Magnus Norddahl
672b80898b
Moved ColormapNum to visstyle_t and changed colormap to BaseColormap
2016-06-02 19:26:27 +02:00
Magnus Norddahl
41537a50ab
Fix true color light calculation bug for decals
2016-06-02 16:52:41 +02:00
Magnus Norddahl
47f32d03cd
Fixed some light and blending functions for the true color mode
2016-06-02 14:49:03 +02:00
Christoph Oelckers
2afadb0108
- fixed: ADehackedPickup was missing NULL pointer checks in nearly all methods that used RealPickup.
...
Some DECORATE hacks make it possible that this does not contain a valid pointer when these methods are called.
2016-06-01 23:41:34 +02:00
Christoph Oelckers
18ebe92cfc
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/g_level.cpp
2016-06-01 11:45:57 +02:00
Christoph Oelckers
26a15d0ccc
- delete thinkers before starting to restore the savegame data to avoid interference of the old thinkers' Destroy() method with the newly loaded data.
...
Note that even with this change it is still not possible to unarchive any thinker pointers before the thinker list has been loaded as it would create broken lists.
2016-06-01 11:43:56 +02:00
Christoph Oelckers
978e522fb4
- fixed: portal-related sound calculations offset the sound in the wrong direction.
2016-06-01 11:14:25 +02:00
Christoph Oelckers
14e4a64c82
- fixed: Destroying a SkyViewpoint disabled all sector portals.
2016-06-01 10:10:18 +02:00
Magnus Norddahl
4f635983fc
Add bgra support to OS X target
2016-06-01 08:54:39 +02:00
Magnus Norddahl
b9d7a98aec
Change swtruecolor cvar to take effect immediately
2016-06-01 06:02:37 +02:00
Magnus Norddahl
e929eec80f
Make x86 asm aware of swtruecolor
2016-06-01 05:28:14 +02:00
Magnus Norddahl
05220a7133
Added IsBgra() to DCanvas
...
Changed SWRender output format to be decided by IsBgra()
2016-05-31 09:36:18 +02:00
Magnus Norddahl
045bad1b52
Removed the need for the pixel_canvas_t typedef
2016-05-31 05:31:32 +02:00
Magnus Norddahl
20b7743ec3
Added R_SetColorMapLight and R_SetDSColorMapLight
2016-05-31 01:49:39 +02:00
Magnus Norddahl
7080180d47
Added menu option for toggling true color output on and off
2016-05-30 13:32:24 +02:00
Magnus Norddahl
8aabc26cd9
Created standalone rgba drawing functions
2016-05-30 05:52:15 +02:00
alexey.lysiuk
5348a15b75
Added option to control dynamic loading of OpenAL
...
Dynamic loading is enabled by default, set DYN_OPENAL to OFF to link with static or dynamic library
# Conflicts:
# src/sound/oalsound.cpp
# src/sound/oalsound.h
2016-05-29 14:25:04 +02:00
Edoardo Prezioso
243030046a
- Fixed issues with invalid GetMaxInventory calls.
2016-05-29 12:50:37 +02:00
Christoph Oelckers
44f09edf4c
- fixed: monsters cannot crouch, so their crouch factor has to be 1, as 0 would yield incorrect results if the value is used in subsequent calculations (e.g. adjusting a trajectory to a target which can be or may not be a player.)
2016-05-29 12:48:27 +02:00
MajorCooke
bb91723174
- Added GetCrouchFactor(ptr).
...
Gets the crouch factor of a player. Can be set to target/master/tracer, as long as it's a player. Defaults to the first player.
2016-05-29 12:43:46 +02:00
MajorCooke
2719905ade
- Added source and inflictor parameters to all A_Damage/Kill functions.
...
- Source is the actor to blame for the cause of damage (monster infighting for example). For missiles, modders should consider setting to AAPTR_TARGET.
- Inflictor is the actor doing the damage itself. Note that by changing this, it will take into account the flags on the pointed actor.
2016-05-29 12:40:17 +02:00
MajorCooke
33ddbe8ab3
Added SKYEXPLODE support for P_LineAttack on horizons.
2016-05-29 12:38:37 +02:00
Benjamin Moir
6633e41cca
added CheckProximity to ACS
2016-05-29 12:38:37 +02:00
alexey.lysiuk
89016020a8
Used ISO Latin 1 encoding for title text in startup window on OS X
...
Windows version uses ANSI_CHARSET to handle the corresponding text
This solves the problem like in https://github.com/alexey-lysiuk/gzdoom/issues/63 :
*** Assertion failure in -[NSTextFieldCell _objectValue:forString:errorDescription:], /Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1404.47/AppKit.subproj/NSCell.m:1684
Invalid parameter not satisfying: aString != nil
2016-05-29 10:58:12 +03:00
Magnus Norddahl
6e53c1bd12
Change render target output from PAL8 to BGRA8
2016-05-28 20:40:33 +02:00
Christoph Oelckers
4940f0249d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-28 20:33:29 +02:00
Christoph Oelckers
fc25a74a03
- fixed: In case of a crash the buffered console output was not dumped to the rich edit control so it never got into the crash log.
2016-05-28 20:11:19 +02:00
Leonard2
360ad7a844
Replaced every remaining instances of the old layer names
2016-05-28 01:19:42 +02:00
Leonard2
2f5ae3b51e
Changed the default layer indices and renamed them
...
Note that this doesn't compile yet
2016-05-28 01:19:41 +02:00
Leonard2
c82620129c
Added A_OverlayFlags
...
Allows psprites to follow the weapon and/or the player's bobbing
2016-05-28 01:19:40 +02:00
Christoph Oelckers
c0fe86028d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-27 23:47:19 +02:00
Leonard2
8f360f3bea
Small refactor
2016-05-27 23:37:35 +02:00
Leonard2
b220db4ebe
Fixed: a layer's movements weren't interpolated in some cases
...
The old position members would be incorrectly updated if a layer sets another layer's offsets and this layer ticks before the other
2016-05-27 23:37:34 +02:00
Leonard2
bca9829950
Fixed: a few members weren't properly initialized
...
This could go wrong if a layer had only one state of -1 tics
2016-05-27 22:58:27 +02:00
Leonard2
599fa7cfd1
Fixed: it was no longer possible to set the flash state in the very first
...
weapon's state
This was due to an oversight in my first commit
2016-05-27 22:31:18 +02:00
Christoph Oelckers
d43ea33031
- fixed: A_CustomBulletAttack may not rely on the parameter default setter to get a valid puff. This must be checked explicitly in the functions body to ensure it is never NULL.
2016-05-27 11:39:44 +02:00
Christoph Oelckers
b926cf35d5
- fixed: The portal init code should only delete REJECT if there's actually some portals to consider.
2016-05-27 09:45:17 +02:00
Christoph Oelckers
19003a7973
- fixed: The node builder's FindMapBounds function included all vertices generated by the node builder.
...
This could cause problems on maps with bogus nodes so it's better to only check vertices that are referenced by a linedef.
2016-05-27 09:38:33 +02:00
Christoph Oelckers
34c67b9eae
- fixed: The NoiseList array was not cleared before use.
2016-05-27 00:00:27 +02:00
Christoph Oelckers
ded479b1a5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-25 12:02:37 +02:00
Christoph Oelckers
cc685e982b
- fixed: interactive line portals were always deactivated, regardless of alignment type.
2016-05-25 11:36:23 +02:00
Christoph Oelckers
f241d9773a
- made P_NoiseAlert non-recursive to avoid stack overflow problems in large open-area maps with a high sector count.
2016-05-25 11:30:11 +02:00
Christoph Oelckers
72a3257400
- fixed: DIntermissionScreen::Init did not handle non-existent strings in the string table and crashed on a NULL pointer.
2016-05-25 01:45:55 +02:00
Christoph Oelckers
a0dc4ae738
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-24 13:53:52 +02:00
Christoph Oelckers
49234b1fc3
- fixed: UpdateRenderSectorList did some bad calculations for checking portal plane order.
2016-05-24 13:53:29 +02:00
Christoph Oelckers
e6d89b9f71
- re-added P_SetPSprite.
...
For debugging purposes it's better to have this as a function.
2016-05-24 13:05:43 +02:00
Christoph Oelckers
d058820c65
- fixed scroll speed calculation for Heretic.
2016-05-24 10:01:57 +02:00
Christoph Oelckers
d70601471a
- fixed the spawn position of Strife's sentinel's attack's trail.
2016-05-24 09:37:01 +02:00
Christoph Oelckers
3bde8824a3
- fixed A_Burst's velocity calculation.
2016-05-24 09:32:30 +02:00
MajorCooke
1b1195df6a
- Added limit parameter to A_RadiusGive.
...
- The function ends operation if the number of successfully given actors reaches this count.
2016-05-23 21:11:26 -05:00
alexey.lysiuk
aa6753383d
Fixed fullscreen mode on non-default monitor in OS X backend
...
Fullscreen window was incorrectly placed on the main screen instead of the current one
Honestly I have no idea what was the reason behind that [NSWindow setFrameOrigin:] call
Apparently it's redundant and moreover it's incorrect for multi-monitor configuration
2016-05-22 13:22:07 +03:00
Christoph Oelckers
ae31e0ba72
- changed the default key name string because '#' is used as a comment in the config files.
2016-05-22 12:20:46 +02:00
Christoph Oelckers
db944df467
- fixed 3D floor rendering with nearby slopes.
2016-05-22 12:15:14 +02:00
Christoph Oelckers
eed32ee285
- fixed: The friction calculations for terrain based friction had some fixed/float mixups.
2016-05-22 12:11:39 +02:00
Christoph Oelckers
e43c9826dd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-22 09:31:48 +02:00
Christoph Oelckers
36dfa97802
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
# Conflicts:
# src/version.h
2016-05-22 01:27:05 +02:00
Christoph Oelckers
f184438032
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
2016-05-22 01:26:13 +02:00
Christoph Oelckers
d767d10322
- made PSprites submission GC aware.
2016-05-21 13:11:43 +02:00
Christoph Oelckers
4781b73d5b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-21 01:09:21 +02:00
Leonard2
8c205ebac3
Added A_OverlayOffset
...
Like A_WeaponOffset except it can access any psprites
2016-05-20 17:04:45 +02:00
Leonard2
1ecfb5897b
Added A_Overlay
2016-05-20 17:04:45 +02:00
Leonard2
1966b61b8f
Generalized the psprites implementation
2016-05-20 17:04:44 +02:00
Christoph Oelckers
bd396ccb7c
- made P_Move's multiple-step movement portal and teleporter-aware.
2016-05-20 13:30:10 +02:00
Christoph Oelckers
428bd52295
- fixed: It was not possible to step through a ceiling portal into the upper sector.
2016-05-20 13:10:42 +02:00
Gaerzi
68c5191798
Add GOG path for SVE
...
Since GOG.com is finally offering this game.
2016-05-20 02:18:48 +02:00
Christoph Oelckers
5017a192eb
- fixed: The texture matrix was not reset after drawing the texture pass for multipass textured dynamic lights.
2016-05-19 12:22:39 +02:00
Christoph Oelckers
13da14e915
- disable dynamic lights on additively blended surfaces because it doesn't look good at all.
2016-05-18 22:20:18 +02:00
Christoph Oelckers
ea62d4c2d1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-18 21:47:42 +02:00
Christoph Oelckers
78055733c8
- fixed: automap markers were scaled too small
2016-05-18 21:25:58 +02:00
Christoph Oelckers
f22adcc398
- be more thorough with Eternal Doom MAP03. The compatibility option does not seem to fully solve the problem, so let's just clear the tags in the bogus stair sectors.
2016-05-18 21:06:07 +02:00
Christoph Oelckers
9e0301c1a1
- prevent message spam with no MIDI devices.
2016-05-18 13:11:01 +02:00
Christoph Oelckers
7642c2cdaa
- fixed: Opening a non-existent menu left the engine in an invalid state.
2016-05-18 12:02:54 +02:00
Christoph Oelckers
3dcb05e5d2
- fixed: Lock #255 was inaccessible for LOCKDEFS.
2016-05-18 11:56:39 +02:00
Christoph Oelckers
a7fd04a235
Merge branch 'master' of https://github.com/kcat/zdoom
2016-05-18 11:48:27 +02:00
MajorCooke
115dbd0b58
- Added A_WeaponOffset(x = 0, y = 32, flags).
...
- Places the weapon offset by the defined x and y. Both are floats. This stacks with weapon bobbing.
- WOF_KEEPX: Don't change the X offset.
- WOF_KEEPY: Don't change the Y offset.
- WOF_ADD: Add onto instead of replacing the coordinates.
2016-05-18 11:19:24 +02:00
Christoph Oelckers
661c2e5919
- added missing NULL pointer check to ACS's CheckInventory.
2016-05-18 09:39:19 +02:00
Christoph Oelckers
362e21a6b3
- fixed: The pitch negation required for INHERITACTORPITCH was also applied to the one from PITCHFROMMOMENTUM.
2016-05-17 09:12:26 +02:00
Chris Robinson
fe966916d7
Set head-relative for sources near the listener
...
This matches the behavior of the FMOD backend
2016-05-16 17:02:39 -07:00
Christoph Oelckers
5e4be101f1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-15 23:25:02 +02:00
Christoph Oelckers
9e847c252b
- fixed: When linking an actor into the blockmap multiple portal groups, AActor::LinkToWorld would delete the links to the previous nodes for each new group. This was causing random crashes when the affected actor was deleted by the garbage collector.
2016-05-15 23:24:30 +02:00
Christoph Oelckers
aff8b00575
- added NULL pointer checks to SpecialDropAction methods that call CheckLocalView.
2016-05-15 09:16:37 +02:00
Christoph Oelckers
6949afc334
- fixed: For allowing an unblocking move, PIT_CheckThing used the wrong actor's position. This was causing monster pile-ups with moving ceilings.
...
- don't let P_PushUp move any actors with the same z as the pushing actor. This should solve most monster pile-ups, but the entire logic here needs some serious rethinking. The only reason this doesn't cause more problems is some fudging in several other places.
2016-05-14 15:05:06 +02:00
Christoph Oelckers
52e19c59b3
Revert "- let gl_draw_sync default to false."
...
This reverts commit 616f84209b
.
Now I remember why this is not active: This is causing some problems with interpolated plane heights. Since there is no synchronization with the vertex buffer, the next frame will reset all plane coordinates before the GPU can use them. This will require some rethinking about when to update the buffer - it cannot be done in the render data setup loop.
2016-05-13 20:44:04 +02:00
Christoph Oelckers
03b31796cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-13 10:09:24 +02:00
Christoph Oelckers
ebca170e73
- fixed a few warnings in OpenAL code.
2016-05-13 10:07:18 +02:00
Christoph Oelckers
cd8213f067
- fixed: The skybox pointer in FSectorPortal must at least be initialized to nullptr when the struct is deserialized, to avoid an access violation if the partially initialized data is used. This can happen when P_SerializeThinkers destroys the original thinkers that were created on map load.
...
- removed the sector loop for deleting skybox references in ASkyViewpoint::Destroy. Since this only refers to the sectorPortals array it is completely redundant as the following code will clear them just as well.
2016-05-13 10:07:01 +02:00
Christoph Oelckers
99bfc64af6
- another failed attempt to use GL_CLIP_PLANE. Leave it in because it's closer to what is needed than the old code.
2016-05-12 23:41:06 +02:00
MajorCooke
4998d4a84d
Use the direct pointer of P_PointInSector instead.
2016-05-12 22:15:06 +02:00
MajorCooke
2ba26693d1
- Added 3D Floor + Portal awareness, along with flags to turn off detection of both features.
2016-05-12 22:15:06 +02:00
MajorCooke
b91ed5dc5d
Added GetZAt DECORATE function.
...
- float GetZAt(x, y, angle, flags, pick_pointer);
- Gets the floor z at x distance ahead and y distance to the side in relative form from the calling actor pointer. Flags are as follows (GZF_ prefix):
- CEILING: Returns the ceiling z instead of floor.
- ABSOLUTEPOS: x and y are absolute positions.
- ABSOLUTEANG: angle parameter does not add the pointer's angle to the angle parameter.
2016-05-12 22:15:05 +02:00
Christoph Oelckers
616f84209b
- let gl_draw_sync default to false.
...
No need to waste valuable processing time if we can let the GPU run in parallel with the code that generates the next frame.
2016-05-12 20:23:18 +02:00
MajorCooke
39f64383cb
Changed RTF_THRUSTZ to match RADF_THRUSTZ's bitmap.
2016-05-11 19:41:33 +02:00
MajorCooke
952219a018
Added RTF_THRUSTZ for A_RadiusThrust.
...
- Allows thrusting with Z velocity.
2016-05-11 19:41:33 +02:00
Christoph Oelckers
852ed6cd04
- un-revert P_CheckMove fix.
2016-05-11 19:39:08 +02:00
Edoardo Prezioso
769521b2e1
- Fixed second player lock after error in netgame.
2016-05-11 14:05:29 +02:00
Christoph Oelckers
078e27e61f
- fixed: The mugshot's angle was inverted.
2016-05-11 14:04:21 +02:00
Christoph Oelckers
d4b258f15b
- don't place the chasecam right at the hit position of the trace. This will be the intersection with a wall or sector plane and may cause clipping issues. Instead place it very slightly in front of the actual hit position.
2016-05-11 13:57:49 +02:00
MajorCooke
9ab620814d
- Fixed: Armor absorption did not take ALLOW/CAUSEPAIN flags into account.
2016-05-11 13:33:39 +02:00
Christoph Oelckers
0726a88ab9
- only return DWORD aligned addresses in openings because the 3D floor code stores floating point values in there which cannot be accessed on platforms with strict alignment rules.
2016-05-11 12:04:41 +02:00
Christoph Oelckers
220255e6a4
- fixed P_CheckMove's dropoff check and removed some unneeded code.
2016-05-11 11:56:03 +02:00
Christoph Oelckers
12b84d9f71
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-11 11:47:00 +02:00
Christoph Oelckers
43d93a19a0
- fixed: P_AlignFlat had the 'dist' value negated. Also simplified the code a bit.
2016-05-11 11:36:53 +02:00
Christoph Oelckers
f8c12f4533
- fixed warning in s_sound.cpp
2016-05-11 10:32:57 +02:00
Christoph Oelckers
cc88130362
- fixed: P_CheckMove's dropoff check had the heights swapped. This also shouldn't in any way depend on COMPATF_DROPOFF and must be skipped entirely for actors with either MF_FLOAT or MF_DROPOFF set.
2016-05-11 10:09:13 +02:00
Christoph Oelckers
77e30bb7d7
- fixed: The line portal links were not deleted when an actor was destroyed.
2016-05-11 09:58:03 +02:00
Christoph Oelckers
15933f9c72
- fixed: Texture precaching for sprites had some inverted logic and deleted everything that was still required.
2016-05-10 20:51:23 +02:00
Christoph Oelckers
0cc57c6141
- fixed: BoundTextureDraw2D must reset the texture mode.
2016-05-10 20:50:01 +02:00
Christoph Oelckers
2709391ce9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-09 23:50:06 +02:00
Christoph Oelckers
966e6797e4
- fixed: The view path for checking whether the player sprite should be drawn during a portal transition was never set properly in the portal transitioning case.
2016-05-09 23:16:06 +02:00
Christoph Oelckers
2e4b8dd416
- fixed incorrect sign in P_TranslatePortalVXVY
2016-05-09 21:59:13 +02:00
Christoph Oelckers
15c711f2a1
- added a missing break in the wall draw dispatcher.
2016-05-09 00:58:55 +02:00
Christoph Oelckers
d5eb1008a4
- implemented texture overlay pass for textured dynamic lights.
2016-05-08 22:07:18 +02:00
Christoph Oelckers
b90173ed21
- fixed: ADynamicLight::visibletoplayer was not initialized for placed lights when restoring a savegame.
2016-05-08 09:34:22 +02:00
Christoph Oelckers
ad713b1c25
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-08 09:28:01 +02:00
Christoph Oelckers
841a5795ae
- savegame version bump for a GZDoom exclusive change (to avoid synchronization problems in the future.)
2016-05-08 09:27:42 +02:00
Christoph Oelckers
6753cddce1
- fixed: The HUD weapon drawer partially took the render state from the previous things that got rendered. Especially the blend mode could be randomly set to different values.
2016-05-08 09:22:38 +02:00
Chris Robinson
8334189d66
Merge remote-tracking branch 'zdoom/master'
2016-05-05 12:55:16 -07:00
Christoph Oelckers
f4e4221da7
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-05 21:51:54 +02:00
Chris Robinson
ba1574e65a
Don't define OpenAL redirect macros with the IDE's parser
...
At least with KDevelop4, macros like this interefere with contextual info by
causing it to show information about the macro itself (where it's defined and
what it defines to), rather than the function (parameters, comments, etc). It
also gets in the way of auto-completion.
2016-05-05 21:00:30 +02:00
Chris Robinson
fa46965a71
Check for OpenAL device errors after pausing/resuming the device
2016-05-05 21:00:30 +02:00
Chris Robinson
0b7b78c5d2
Better handle channel configs when monoizing in LoadSound
2016-05-05 21:00:29 +02:00
Chris Robinson
e298f8389b
Avoid divide-by-0 when the area sound radius is less than the max distance
2016-05-05 21:00:29 +02:00
Chris Robinson
66c61a7c8b
Set the appropriate start offset for non-3D sounds too
2016-05-05 21:00:28 +02:00
Chris Robinson
26a8a8a1ba
Pause OpenAL processing using ALC_SOFT_pause_device when inactive
2016-05-05 21:00:28 +02:00
Chris Robinson
e1c8890c5e
Set the appropriate start offset for restarted sounds
2016-05-05 21:00:27 +02:00
Chris Robinson
c3cef91a4f
Properly sum the channels being downmixed to mono
2016-05-05 21:00:27 +02:00
Chris Robinson
12c9281a7e
Avoid redundantly setting DistanceScale
2016-05-05 21:00:26 +02:00
Chris Robinson
bf5ac9b476
Use AL_EXT_SOURCE_RADIUS for area sounds
2016-05-05 21:00:26 +02:00
Chris Robinson
55294c5806
Use the correct OpenAL lib name on Linux
2016-05-05 21:00:25 +02:00
Edoardo Prezioso
52995f8fc2
- Fixed missing sector light clamp in DFlicker.
...
For some reason, this code didn't care about the sector light limits. Found by code inspection.
2016-05-05 21:00:08 +02:00
Christoph Oelckers
c193bb7799
- removed the special case 0 in A_SpawnItem, meaning 'in front of the player'.
...
As it turned out this has been broken for many, many years, so one can assume that most content using this function depends on this special case not working. I could track it down to at least 2008.
2016-05-05 20:12:26 +02:00
Christoph Oelckers
d61ec05c0f
- draw texture based dynamic lights on walls.
2016-05-05 12:18:09 +02:00
Christoph Oelckers
2b92048a5b
- renamed the texture coord variables in GLWall.
...
It makes no sense having them organized differently in this struct than what the rendering code needs. This saves one redundant copy operation and a function-local static variable.
2016-05-05 11:48:39 +02:00
Christoph Oelckers
51baa7d137
- added code to calculate light texture coordinates on walls.
2016-05-05 11:32:21 +02:00
Christoph Oelckers
0b2821d696
- added dynamic light rendering with textures on flats
2016-05-05 10:28:21 +02:00
Christoph Oelckers
c9d4c68039
- added dynamic light drawer for flats.
2016-05-05 00:24:47 +02:00
Christoph Oelckers
4412f99b38
- added the flat dispatcher for textured lighting.
2016-05-04 23:07:16 +02:00
Christoph Oelckers
ec7b4b1ba4
- initial work on textured dynamic light processing.
2016-05-04 22:14:39 +02:00
Christoph Oelckers
8817f89192
- do not clip the first frame of very slow projectiles.
2016-05-04 20:31:21 +02:00
Christoph Oelckers
7b65e6d424
- use glMapBuffer instead of glMapBufferRange on older hardware.
2016-05-04 19:16:07 +02:00
Christoph Oelckers
317730584f
- GZDoom still needs this.
2016-05-04 14:39:31 +02:00
Christoph Oelckers
bb378f2d94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-04 14:38:57 +02:00
Christoph Oelckers
0b833be06e
- removed accidentally added GZDoom specials.
2016-05-04 14:37:52 +02:00
Christoph Oelckers
bdb7594e60
- fixed: Incomplete model definitions flagged the actor as having a model, which could cause a crash.
2016-05-04 14:25:58 +02:00
Christoph Oelckers
5f095082c0
- fixed: The 2D drawing code incorrectly set the shader override to disable all special effects.
2016-05-04 14:10:06 +02:00
Christoph Oelckers
2c88816577
- fixed parameters for warp type 2.
2016-05-04 13:25:26 +02:00
Christoph Oelckers
54571beaca
- reset the path to "" before a model definition is parsed.
2016-05-04 12:28:35 +02:00
Christoph Oelckers
fd8a59bd24
- fixed: INHERITACTORPITCH was inverted.
...
- changed PITCHFORMOMENTUM to do nothing for very small velocities.
2016-05-04 12:23:40 +02:00
Christoph Oelckers
ab8a647433
- fixed the disabled visibility rules check for dynamic lights by doing the actual check in the light's Tick() method and letting the renderer only use the result.
2016-05-04 11:33:18 +02:00
Christoph Oelckers
0a94371974
- reinstated old code for rendering fog boundaries and mirrot surfaces without shaders.
...
- added code for filling the render list for textured dynamic lights. This is not yet active because no code is present to handle this data.
2016-05-03 23:28:42 +02:00
Christoph Oelckers
4ea3339e40
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-03 19:46:09 +02:00
Christoph Oelckers
be3b126f7b
- fixed: Order of skybox and portal initialization was not well defined. It was always the last item to get initialized that got set. Changed it so that skyboxes cannot override portals at all.
2016-05-03 19:42:53 +02:00
Christoph Oelckers
0f8f08edfd
- fixed: camera facing sprites need to orient themselves toward the actual camera position, not the view actor (which may be invalid or in a completely different part of the map if a portal is being rendered.)
2016-05-03 19:24:28 +02:00
Christoph Oelckers
b6af4677f3
- implemented model precaching.
2016-05-03 18:14:16 +02:00
Christoph Oelckers
534500f36d
- fixed software-based model interpolation.
2016-05-03 16:49:10 +02:00
Christoph Oelckers
f7fda94ec9
- changed model data to store models and textures by index instead of by pointer.
...
The indices are needed for efficient precaching and actual changes to the logic are minor so that this was the best option overall.
2016-05-03 15:45:21 +02:00
Christoph Oelckers
0e14f00b51
- fixed caching of texture sampler state for old hardware.
...
- fixed handling of CLAMP_XY_NOMIP sampler mode. This cannot be lumped together with CLAMP_XY because it has different mipmap requirements.
2016-05-03 13:39:41 +02:00
Christoph Oelckers
4d7be0e20e
- added software interpolation as a fallback for models.
...
This is not tested yet so no guarantees!
2016-05-03 13:10:00 +02:00
Christoph Oelckers
ce714ac519
Merge remote-tracking branch 'remotes/zdoom/master'
2016-05-03 11:29:49 +02:00
Christoph Oelckers
942138b307
- undid some leftover texture state checks from the first attempt to handle this without sampler objects.
...
This code was written under the assumption that the glGenerateMipmap function does not exist. But all supported hardware has this function through the GL_EXT_framebuffer_object extension.
2016-05-03 11:27:52 +02:00
Christoph Oelckers
a576243ff2
- fixed: ThrustThing should add to the velocity, not set it.
2016-05-03 10:26:29 +02:00
Christoph Oelckers
6f2b0a6293
- rewrote texture caching so that not the base texture but the actually used translations for sprites get precached.
2016-05-03 01:00:52 +02:00
Christoph Oelckers
ec037bfd1a
- fixed: The check for one-way portals in the renderer was incomplete.
2016-05-02 19:47:27 +02:00
MajorCooke
16bea6cf1f
- Fixed: Roll must orient the rotation based on pitch, not the other way around.
2016-05-02 10:46:44 -05:00
MajorCooke
9ec3093a34
Fixed some missed cases.
2016-05-02 08:52:44 -05:00
MajorCooke
def785e462
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses its behavior.
2016-05-02 06:32:33 -05:00
MajorCooke
673dab7f23
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses the behavior.
2016-05-02 06:29:19 -05:00
alexey.lysiuk
4c4b97316e
Fixed inconsistent texture wrapping
...
Sampler state needs to be reseted when hardware texture resources are released
2016-05-02 13:02:55 +03:00
alexey.lysiuk
333560086d
Calculate color values for gamma correction directly in shader
...
Gamma table texture is no longer needed
2016-05-02 11:24:42 +03:00
alexey.lysiuk
44b019413c
Implemented gamma correction in OS X native backend using shader effect
2016-05-02 10:04:09 +03:00
MajorCooke
a163220e8c
Removed FlatAngle.
2016-05-01 17:30:30 -05:00
MajorCooke
0bf7c3e362
- Removed FlatAngle. This will come back hopefully in another commit sometime in the future.
2016-05-01 17:19:39 -05:00
Christoph Oelckers
f2f3fa6d09
- parched the texture precaching so that it compiles and works again. The real work will come later.
2016-05-02 00:13:00 +02:00
Randy Heit
4fbe77fb82
Very minor optimization for ACS str(i)cmp
...
- If the two strings compared both point to the same location in memory,
then we know they are the same string without having to bother actually
comparing their contents. Note that the opposite is not neccessarily
true: If they point to two different locations, they could still match a
case-sensitive comparison because there are still two ACS string tables:
the one that belongs to the map's script and the one that belongs to
everything else.
2016-05-01 16:55:28 -05:00
Christoph Oelckers
b2e67c2c7e
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/textures/texturemanager.cpp
2016-05-01 23:46:05 +02:00
MajorCooke
f41dcc75d1
FlatAngle can now be defined directly via properties.
2016-05-01 16:33:00 -05:00
Christoph Oelckers
65e1589543
- allow specifying actor classes whose graphics to precache through MAPINFO.
...
- some reorganization of texture precaching so that the renderer can decide what to do with actors.
Just marking the sprite textures loses too much info if more is needed than just loading the images into memory.
2016-05-01 22:47:36 +02:00
Chris Robinson
0d402618a3
Load mono copies of multichannel sounds that are used in 3D
2016-05-01 21:44:03 +02:00
MajorCooke
3ed9551054
Fixed typo.
2016-05-01 14:33:22 -05:00
MajorCooke
980a310755
GZDoom Roll Submission
2016-05-01 14:08:09 -05:00
Christoph Oelckers
b443ac8f71
- let Trace() be a bit smarter about checking 3D slopes. If one matches right up with the floor or ceiling at the line where the trace enters a sector, check a second point to see whether we deal with something inside valid sector bounds or not.
2016-05-01 19:30:51 +02:00
MajorCooke
9ba547e6e3
Revert MINSAVEVER and added FlatAngle DECORATE property expression.
2016-05-01 11:38:20 -05:00
Christoph Oelckers
26acf8e994
- fixed conditions for menu patching.
2016-05-01 17:43:30 +02:00
Edoardo Prezioso
3aee8a3eee
- Fixed a mistake in GiveInventory refactoring.
...
'give item' stopped working because commit 7b35f32f3d
and 6aca7604eb
didn't take account that give cheat with zero amount should not touch the item amount.
2016-05-01 17:07:39 +02:00
MajorCooke
a8248433e9
- Updated <pitch>/flat/roll/wall sprites submission to 2.9+. (ZDoom compatibility submission. )
...
- FLATSPRITE: An actor becomes flat as if they were a decal on the floor.
- PITCHFLATSPRITE: A flat sprite tilts up and down based on pitch.
- WALLSPRITE: Similar to a Y billboarded sprite. The degree of the flattening is determined by the FlatAngle property.
- ROLLSPRITE: The sprite of the actor is affected by the Roll property.
2016-05-01 08:45:50 -05:00
Christoph Oelckers
50ba1ecde8
- add menu patching for GL 2.x mode.
...
- use stdint types in model code, because we have to start somewhere with the transition.
2016-05-01 13:09:13 +02:00
Christoph Oelckers
4fb17561bc
- optimize VSMatrix::Translate.
...
- use FVector3 for sprite rotations.
2016-05-01 12:39:08 +02:00
Christoph Oelckers
47064e24c9
- only bind the uniform buffer if it is actually going to be used. No need to check if we are use a shader storage buffer.
2016-05-01 12:01:44 +02:00
Christoph Oelckers
5ead3503b2
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-05-01 11:57:13 +02:00
Christoph Oelckers
24526f7da5
- made adjustments to floating point bounding boxes for nodes and changes to the WarpBuffer function.
2016-05-01 11:56:45 +02:00
Edoardo Prezioso
a17ec55d0d
- Fixed drop style gameinfo inconsistency.
...
The gameinfo option was ignored when deciding the initial spawn height position.
2016-05-01 11:30:09 +02:00
Christoph Oelckers
737646b45d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-01 10:50:56 +02:00
alexey.lysiuk
1deb9742de
Do not call UBO functions when no extension available
2016-05-01 11:46:49 +03:00
alexey.lysiuk
138c6ea25e
Fixed black screen issue in OS X native backend
...
There was inconsistency with global render state
2016-05-01 11:45:57 +03:00
Randy Heit
7d03ed4dc7
Use floating point node bounding boxes
2016-04-30 22:37:02 -05:00
Randy Heit
265783e1f6
Use doubles for intermediates in the nodebuilder's FindMapBounds()
2016-04-30 21:28:41 -05:00
Christopher Bruns
6d95c9d544
Fix floating point update for camera facing billboard mode.
2016-04-30 18:15:29 -04:00
Christopher Bruns
5a33005303
Reorder two billboard rotations, so they work together correctly.
...
Fixes #126
# Conflicts:
# src/gl/scene/gl_sprite.cpp
2016-04-30 18:15:27 -04:00
Christopher Bruns
b320787102
Implement new CVAR gl_billboard_faces_camera, which orients sprites toward camera, rather than along view direction.
...
# Conflicts:
# gz3doom/GZ3DoomRiftMonitor1.bat
# src/gl/scene/gl_sprite.cpp
# src/gl/scene/gl_stereo3d.cpp
2016-04-30 18:15:27 -04:00
Christoph Oelckers
51991ef22d
* - render partial sprites on the front side of a portal for actors behind it.
2016-04-30 23:18:37 +02:00
Christoph Oelckers
ca95371a27
- fixed: gl_load.c did not handle the GL 2.x fallback for the lack of glGetStringi correctly, if that function was missing it just crashed.
2016-04-30 17:16:16 +02:00
Christoph Oelckers
8011958ebe
Merge branch 'gz2x' of https://github.com/alexey-lysiuk/gzdoom
...
# Conflicts:
# src/gl/system/gl_interface.cpp
2016-04-30 17:09:57 +02:00
Christoph Oelckers
d84e079282
- render partial sprites oon the back side of a portal for actors in front of it. This is needed because the stencil will clip away those parts.
2016-04-30 16:57:53 +02:00
Christoph Oelckers
c29e96d369
- print buffer info only if the buffer type is used.
...
- removed some GL specs that are not informative in GZDoom's context.
2016-04-30 16:31:09 +02:00
Christoph Oelckers
50ab301bd8
- fixed: If we want to support pre-GL3 hardware, we may not require the presence of glGetStringi.
2016-04-30 16:23:32 +02:00
alexey.lysiuk
4400d0cfcc
Fixed restoration of previously bound FBO
2016-04-30 16:29:22 +03:00
alexey.lysiuk
32412c7f75
Disabled printing of junk values for unsupported extensions in OpenGL startup log on OS X
2016-04-30 16:28:50 +03:00
alexey.lysiuk
6757447f1b
Enabled printing of OpenGL startup log on all platforms
2016-04-30 16:28:35 +03:00
alexey.lysiuk
461c97d25b
Fixed remaining issue with shader patching for old OpenGL
2016-04-30 16:28:19 +03:00
Christoph Oelckers
f387199442
- extended the voxeldef parser to allow negative numbers where appropriate.
2016-04-30 14:33:15 +02:00
Christoph Oelckers
86b647ed41
- added map name display to IDMYPOS.
2016-04-30 13:03:08 +02:00
Christoph Oelckers
2161ad2c4b
- fixed: P_GetMapColorForKey did not check for keys that worked as an alias defined through their species.
2016-04-30 12:48:51 +02:00
Christoph Oelckers
c3759646e7
- merged FWarpTexture and FWarp2Texture, making the choice of effect a parameter of the WarpBuffer function.
...
Ideally the warping shouldn't be a property of the texture class itself but an effect processor that can get added to a texture. Unfortunately the current setup will not allow this, requiring some significant refactoring of texture access first.
2016-04-30 12:36:55 +02:00
alexey.lysiuk
8fa5fb6a95
Disabled gamma shader in OS X native backend
2016-04-30 13:35:03 +03:00
alexey.lysiuk
893d0c8915
Added old method to collect extensions
...
This required manual changes in generated file gl_load.c
2016-04-30 13:33:54 +03:00
alexey.lysiuk
3816b46938
Fixed compilation of OS X with native backend
...
TODO: check Linux build
2016-04-30 11:53:31 +03:00
alexey.lysiuk
de6f13f0b4
Updated gl_load.* files generated with glLoadGen 2.0.5
...
Added OpenGL extensions list file for glLoadGen
Added extensions for OS X version
2016-04-30 11:43:08 +03:00
Randy Heit
a95c6b9644
Draw upper/lower textures on two-sided portal lines
2016-04-29 21:54:29 -05:00
Randy Heit
09730bff73
Fix incorrect texture mapping vectors for slopes
2016-04-29 20:35:55 -05:00
Christoph Oelckers
2b710ec73d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-29 23:14:27 +02:00
Christoph Oelckers
8309d8f634
- fixed coordinate typo.
2016-04-29 23:14:04 +02:00
Christoph Oelckers
a2d20b5a27
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-29 19:57:50 +02:00
MajorCooke
b9687b4a57
Compiler fix
2016-04-29 06:33:38 -05:00
Christoph Oelckers
70bf649364
- added clip planes for line portals and mirrors. This should eliminate the remaining problems with some visible geometry in front of the portal, it is also necessary to handle sprite splitting across line portals properly.
2016-04-29 12:26:57 +02:00
Christoph Oelckers
dc772a9f34
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-29 11:48:46 +02:00
Christoph Oelckers
4a72c7d2f1
- fixed: Decals may not be serialized before thinkers.
...
Since decals may have thinkers attached this will crash when such a savegame gets loaded, because the thinker lists get reset in P_SerializeThinkers, deleting any thinker that already was processed.
I also added an error message that immediately aborts the save process if such an out-of-sequence thinker is attempted to be written out.
This obviously breaks savegame compatibility again...
2016-04-29 11:44:17 +02:00
Randy Heit
f3d273c94f
Fixed: Tiled midtextures could go up past the ceiling when a 3D floor is in view
2016-04-28 22:06:57 -05:00
Randy Heit
8f3921190f
Keep values in floats longer for visplane drawing
2016-04-28 21:21:49 -05:00
Randy Heit
96228ca15f
Trying to fix some rounding, not sure it's actually correct yet
2016-04-28 21:14:48 -05:00
Christoph Oelckers
21283b18f4
- preparations for using clip planes on line portals.
2016-04-29 01:48:06 +02:00
Christoph Oelckers
e3fad118d2
- use the templated warp functions instead of the limited GZDoom 1.x version. gl_WarpBuffer has been removed.
2016-04-28 19:04:01 +02:00
Christoph Oelckers
27a3b6aafd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-28 18:46:30 +02:00
Christoph Oelckers
3bbb5c7237
- moved the texture warping into templated subfunctions, so that the same code can be used for true color buffers as well.
2016-04-28 18:17:18 +02:00
Christoph Oelckers
434e39e62f
- made adjustments to ZDoom's last changes.
2016-04-28 17:55:58 +02:00
Christoph Oelckers
60a78a0d9b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-28 17:35:52 +02:00
Christoph Oelckers
af2a1769d8
- use the FP2005 method to calculate xtoviewangle, because it is far more straightforward than the old version.
2016-04-28 16:27:28 +02:00
Christoph Oelckers
ef98757c7c
- replaced finesine for texture warping with a smaller custom table, based on the old 2005 FP code, but fixes the generation of the sine table.
...
- removed all remnants of finesine and deleted tables.c and tables.h.
2016-04-28 15:59:37 +02:00
Christoph Oelckers
9f0c5d5909
-let's better be cautious about precision and use the CRT sin and cos functions for rotated plane textures.
2016-04-28 14:49:59 +02:00
Christoph Oelckers
027b8d29b8
- make FieldOfView a real angle and remove all uses of finetangent.
2016-04-28 13:59:06 +02:00
Christoph Oelckers
f301cf7c57
- don't use finetangent for generating xviewtoangle.
2016-04-28 13:03:48 +02:00
Christoph Oelckers
26f54b0ba4
- eliminated tantoangle and cleaned up r_tables.h
2016-04-28 12:18:33 +02:00
Christoph Oelckers
8171637a57
- removed the last remaining uses of the finesine table from the rendering code.
2016-04-28 11:37:02 +02:00
Randy Heit
ae7d048057
Store FTransform in visplane_t, not just a pointer
...
- The transform values passed to R_CheckPlane might live on the stack, so
it's not safe to only store a pointer to them.
2016-04-27 23:07:25 -05:00
Randy Heit
44adff459a
Remove halfviewwidth
...
- Why I thought I needed this variable in addition to centerx has
long ago left my memory.
2016-04-27 22:49:36 -05:00
Randy Heit
31d842a894
Store FTransform in visplanes instead of converting to fixed_t
2016-04-27 22:17:33 -05:00
Randy Heit
ac69ed3361
Minimal wallmost changes
...
- Add comments
- Fixed: When WallMost() finds a line entirely above the screen, it should
set the most array to 0, not -1.
2016-04-27 22:17:33 -05:00
Christoph Oelckers
d4806f82ca
- reinstated some texturing-based dynamic light code. Not active yet and not tested yet.
2016-04-28 00:58:44 +02:00
Christoph Oelckers
ee7a4daa8c
- preparations for textured dynamic lights.
2016-04-27 23:19:54 +02:00
MajorCooke
6f11a65893
- Converted rollIntensity from int to double.
...
- It was already a double in the save version serialization so nothing had to be changed there.
2016-04-27 12:58:18 -05:00
MajorCooke
64d01a3bb1
Forgot to undo this.
2016-04-27 10:26:06 -05:00
MajorCooke
0fc7055f51
- Fixed: Quakes with rolling were not unique; they borrowed from any other quakes that didn't have rolling, thus preventing the rolling from falling off properly.
2016-04-27 10:13:30 -05:00
Christoph Oelckers
38d92b23b9
- fixed: ACS's GetSectorCeilingZ and GetSectorFloorZ expected integer coordinates.
2016-04-27 15:41:22 +02:00
Christoph Oelckers
3fd0d27efa
- removed some leftover fixed point handling from PType.
2016-04-27 15:35:01 +02:00
Randy Heit
a14c0c8063
Fix a couple missing structs in vissprite_t
2016-04-27 08:13:22 -05:00
MajorCooke
3be33b5725
The GL part of Quake Rolls.
2016-04-27 13:49:51 +02:00
Christoph Oelckers
15480feb96
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-27 13:47:56 +02:00
Christoph Oelckers
3a17d6aa78
- fixed savegame compatibility.
2016-04-27 13:47:30 +02:00
MajorCooke
762d186657
Finished interpolation.
2016-04-27 13:42:16 +02:00
MajorCooke
be9b25e760
Use ViewRoll instead of CamRoll, and removed CamRoll entirely. Begin work on interpolation.
2016-04-27 13:42:15 +02:00
MajorCooke
c972caa9f3
- Added rollIntensity and rollWave to A_QuakeEx.
...
- Instead of moving the camera around, it rolls the camera.
- This only has an effect in GZDoom.
2016-04-27 13:42:15 +02:00
MajorCooke
660aff562d
- Added support for THRU flags on bullets and rails.
...
- ALLOWTHRUFLAGS must be used on the puffs, added for the sake of compatibility with older mods. This applies to the following:
-- Bullets: THRUACTORS, THRUSPECIES
-- Rails: Same as bullets, but includes THRUGHOST.
2016-04-27 13:38:27 +02:00
Christoph Oelckers
262f3575ae
- added a "custom" flag to drawmugshot so that the user-specified image can be forced to be used.
2016-04-27 13:16:35 +02:00
Christoph Oelckers
ebca8cc5b0
- added a portable config file option, for now only on Windows: If the engine finds a file named [GAMENAME]_portable.ini, it will use that instead of creating a user specific version, so that portable installs can carry their INI along.
2016-04-27 13:04:37 +02:00
Christoph Oelckers
934b1923d0
- fixed: CheckForPushSpecial did not check blocking 3D midtextures.
2016-04-27 12:37:38 +02:00
Christoph Oelckers
044bf4ada6
- fixed: P_CheckPosition must initialized tm.floorterrain.
2016-04-27 12:08:22 +02:00
Christoph Oelckers
f5afa30ee6
- added GetAngle(bool relative, int target) DECORATE function.
2016-04-27 11:52:52 +02:00
Randy Heit
d970be48f9
Use floating point xscale in R_RenderFakeWall()
2016-04-26 23:30:16 -05:00
Randy Heit
a029c7b664
Fix unneeded fixed_t height in R_3D_AddHeight()
2016-04-26 23:11:27 -05:00
Randy Heit
ee43c4ff95
Fixed: Accidentally left in /65536.0 in WallMost()
2016-04-26 23:00:41 -05:00
Christoph Oelckers
8bda356412
- fixed crash in slope drawing: Several overlooked occurences of fixed point math in R_CalcTiltedLighting. Slopes are still completely broken, though.
2016-04-27 04:08:06 +02:00
Christoph Oelckers
73823e6a09
- fixed the texture size checks for determining if a camera texture requires offscreen rendering were wrong and checked the scaled size, not the physical size.
2016-04-27 02:56:55 +02:00
Christoph Oelckers
a26d81e060
- fixed incomplete float conversion in R_RenderFakeWallRange.
2016-04-27 02:28:45 +02:00
Christoph Oelckers
fab38d092b
- fixed: P_LineOpening could miss a 3D floor if an actor was centered right against its side.
...
- restored the original 3D floor code to retrieve the current floor in P_CheckPosition. The portal aware version was a bit too strict and could place the actor on the wrong side when moving at high speeds.
2016-04-27 02:13:35 +02:00
Christoph Oelckers
09f54b0940
- cleaned up the clip plane management for portals.
...
Unfortunately the math behind the old clip planes is utterly impenetrable and so poorly documented that I have no idea how to set that up, so it is deactivated for now. It wasn't working anyway.
2016-04-27 00:41:00 +02:00
Christoph Oelckers
066d5c63e2
- better be safe and not call GL_CLIP_DISTANCE functions on old hardware.
2016-04-26 21:55:17 +02:00
Christoph Oelckers
3faf5afa3a
- re-added software translucency splitting for old hardware.
2016-04-26 21:49:30 +02:00
Christoph Oelckers
b06c86db38
- added old wall splitting code as a fallback for old hardware.
2016-04-26 21:42:15 +02:00
Christoph Oelckers
6e1b21d513
- added back sprite splitting for low end, plus some dynamic light code.
2016-04-26 21:31:24 +02:00
Christoph Oelckers
89f36fb963
- enabled texture and model matrices for shader-less rendering and fixed the sky cap color application.
2016-04-26 20:45:56 +02:00
Christoph Oelckers
9d71c91f01
- reenabled software warping for shader-less rendering.
2016-04-26 20:20:00 +02:00
Christoph Oelckers
924b72b633
- added workarounds for the invulnerability colormap for non-shader rendering. Unlike the shader based versions these do not decolorize the screen. The advantage to the old texture duplication is that this is far less stressful on performance.
2016-04-26 20:02:57 +02:00
Christoph Oelckers
913e3df7e3
- fixed display of alpha textures without shaders.
...
As it turned out, the translation's alpha channel was clobbered by the whole setup.
2016-04-26 19:11:32 +02:00
Christoph Oelckers
7e6e2bc0a8
- stated adding GL 2.0 compatibility handling
2016-04-26 18:24:02 +02:00
Christoph Oelckers
eb27057853
- enable shader-less rendering. Still very incomplete, but at least the basics are working.
2016-04-26 16:44:03 +02:00
Christoph Oelckers
3b1500438d
- got rid of VAO's. they have no impact on performance and are a general nuisance if some render paths cannot use them.
...
- cleaned up gl_interface and removed gl.compatibility.
2016-04-26 16:26:34 +02:00
Christoph Oelckers
f066457a48
- add shader patching to allow running the engine with GLSL 1.2.
...
- made some initial preparations for the shader-less fallback path.
2016-04-26 15:26:52 +02:00
Christoph Oelckers
ee9a40f5e9
- replace FLOATTYPE with float in stereo3d code.
2016-04-26 15:20:27 +02:00
Christoph Oelckers
090d13b915
- updated gl_interface to deal with older GL versions.
...
- added the framework for allowing multipass textured dynamic lights again.
2016-04-26 15:20:26 +02:00
Christoph Oelckers
8b5c741358
- check the proper command line option for rejecting a core profile.
2016-04-26 15:19:38 +02:00
Chris Robinson
6e25d3f618
Use a background thread for processing OpenAL streams
2016-04-26 06:12:56 -07:00
Chris Robinson
204d0c8572
Don't try to define __try/__except on non-MSVC systems
...
They didn't do anything anyway, and can clash with other compilers since they
may be used internally (macros and keywords starting with __ are for compiler
use).
2016-04-26 05:55:18 -07:00
Christoph Oelckers
97bed58d7d
- use a compatibility mode version of gl_load, so that the fallback GL 2 code can get its definitions.
2016-04-26 11:32:40 +02:00
Christoph Oelckers
172290224b
- make modes 2 and 3 of Teleport_NoFog compatible with Eternity by defaulting to mode 1 when no line is available.
2016-04-25 01:01:28 +02:00
Christoph Oelckers
22b7a38539
- fixed incorrect sky texture check with Transfer_Heights. The actual sector was checked, not the one created by gl_FakeFlat.
2016-04-24 14:17:06 +02:00
Christoph Oelckers
f77c4642cb
- made the adjustments.
2016-04-24 13:35:43 +02:00
Christoph Oelckers
2914cdc939
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/r_defs.h
2016-04-24 12:19:07 +02:00
Christoph Oelckers
0f99d7d73f
- floatified the few remaining linedef and sector properties that still were fixed_t. The only fixed point things left in r_defs.h are the nodes and a fixed point setter function for vertex_t, which is still needed by the node builder.
2016-04-24 12:15:09 +02:00
Christoph Oelckers
31845cd16b
- fixed two fixed/float mixups.
2016-04-24 10:24:43 +02:00
Randy Heit
e96ed6bf8d
Add FBaseCVar::GetHumanString()
...
- For most cvars, this is equivalent to calling GetGenericRep() to get a
string.
- For float cvars, it uses %g instead of %H, because %H is generally more
information than is needed.
2016-04-23 22:30:08 -05:00
Randy Heit
fc54dd1ff0
Use %H when converting float cvars to strings to avoid information loss
2016-04-23 22:08:49 -05:00
Randy Heit
3a0d046f7e
Fix rendering with SW 2D: modf usage was backwards
2016-04-23 21:29:40 -05:00
Randy Heit
96a0bee651
Quiet two more warnings from GCC
2016-04-23 21:00:35 -05:00
Randy Heit
3cabd5f0ed
Fix compilation with GCC
...
- GCC is pickier than Visual C++. GCC requires that structs with constructors, etc that are
used in a union must be defined outside the union. VC++ lets you do it inline.
2016-04-23 20:58:15 -05:00
Randy Heit
991f49e321
Avoid copying vissprite_t in R_DrawPSprites()
2016-04-23 20:42:14 -05:00
Randy Heit
b8e3e1f095
Remove BAM_FACTOR from FAngle, because it takes up physical space in the struct
2016-04-23 17:27:36 -05:00
Christoph Oelckers
565bab8bd3
- removed some unnecessary temporary variables.
2016-04-23 22:55:44 +02:00
Christoph Oelckers
f420ccd287
- made Teleport_NoFog compatible with Hexen and Eternity.
...
ZDoom defaulted to Boom's (buggy) angle adjustment.
Changed it so that
* Mode 0 is like Hexen, performing no adjustment at all. This still should match all known maps using this special.
* Mode 1 remains unchanged.
* Mode 2 replicates Boom's broken angle adjustment and is used in the xlat file.
* Mode 3 implements the correct angle adjustment that Boom originally intended.
(Note: Should some map require something different it should be handled with compatibility.txt instead of reverting this back to the broken way it was before.)
2016-04-23 21:32:40 +02:00
Christoph Oelckers
eaabb5e986
- fixed vissprite_t &operator= declaration.
2016-04-23 15:51:46 +02:00
Christoph Oelckers
0d17459c36
- do not disable sampler objects with -gl3.
2016-04-23 15:47:51 +02:00
MajorCooke
6bba84458c
- Rail spawned actor trails now set their targets to the shooter and transfer pitch.
2016-04-23 08:19:59 -05:00
Christoph Oelckers
78da8b5a60
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-23 14:22:56 +02:00
Christoph Oelckers
5fcdb7b80d
- bump savegame version for today's changes.
2016-04-23 14:20:40 +02:00
Christoph Oelckers
c246d1c1ad
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-23 13:56:05 +02:00
Christoph Oelckers
3c13d8085b
- removed unused R_PointToDist2 and R_PointToAngle2 functions.
2016-04-23 13:55:50 +02:00
Christoph Oelckers
9d9219795a
- adjusted function names.
2016-04-23 13:48:25 +02:00
Christoph Oelckers
bf36900299
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-23 13:40:19 +02:00
Christoph Oelckers
2447f7bc38
- renamed FTransform access functions.
2016-04-23 13:40:02 +02:00
Christoph Oelckers
38f1213387
- made some adjustments.
2016-04-23 13:35:51 +02:00
Christoph Oelckers
e56d643924
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-23 12:42:21 +02:00
Christoph Oelckers
04e614daec
- removed some fixed point functions that are no longer needed.
...
- fixed: Visplane checks should only compare the plane flags that are relevant for rendering and mask out the rest.
- floatified FTransform and made the visplane checks a bit less verbose by moving the comparison as an operator into FTransform.
Note that this operator needs forceinline on Visual Studio so that it won't get called as a function.
2016-04-23 12:42:07 +02:00
Christoph Oelckers
a17e0b70d2
- adjustment for function name changes.
2016-04-23 11:38:33 +02:00
Christoph Oelckers
47834907da
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-23 11:29:27 +02:00
Christoph Oelckers
35a6994d0a
- remove the 'F' prefix from the floating point access function to the sidedef texture info, now that the fixed point versions are gone.
2016-04-23 10:55:55 +02:00
Christoph Oelckers
be8d1b46a7
- remove the deleted functions, now that they are no longer needed.
2016-04-23 10:51:58 +02:00
Christoph Oelckers
6450752399
- made it compile again.
...
The software renderer float conversion removed viewx and viewy which are still needed for efficient position checks against nodes without constant float->fixed conversions.
2016-04-23 10:50:19 +02:00
Christoph Oelckers
ba37854e44
Merge branch 'master' of c:\programming\doom-dev\zdoom
...
# Conflicts:
# src/r_defs.h
2016-04-23 09:43:21 +02:00
Christoph Oelckers
4d4f31fd83
- floatified sidedef texture info and fixed two bugs involving this data.
2016-04-23 09:41:59 +02:00
Randy Heit
f1b3f59bcc
Renderer floatification: Use floating point for wall scale and yrepeat
2016-04-22 23:12:53 -05:00
Randy Heit
1f97488945
Renderer floatification: Use floating point for decals
2016-04-22 23:12:53 -05:00
Randy Heit
cb0fe38dfe
Renderer floatification: "fix for signed divide" isn't needed when using xs_RoundToInt
2016-04-22 23:12:53 -05:00
Randy Heit
b2b3e50c5c
Renderer floatification: Use floating point for geometry Zs
2016-04-22 23:12:53 -05:00
Randy Heit
3ef5a678d5
Renderer floatification: Use floating point for texturemids and Y scales
2016-04-22 23:12:53 -05:00
Randy Heit
4a1cc61822
Renderer floatification: Restore playersprite rendering
2016-04-22 23:12:27 -05:00
Randy Heit
ec8d038c99
Renderer floatification: Use floats for lighting values
2016-04-22 23:10:34 -05:00
Randy Heit
4416d88eb2
Renderer floatification: Use floating point for visibility values
2016-04-22 23:10:02 -05:00
Randy Heit
ded3f92452
Commence renderer floatification
2016-04-22 23:09:13 -05:00
Christoph Oelckers
c786b65727
- allow the engine to run without sampler objects. This will create some overhead in the texture code, but that's still better than having to error out on those few systems where it may be an issue.
2016-04-22 19:54:51 +02:00
Christoph Oelckers
3c7d0c971f
- fixed: It seems it is not allowed to serialize any thinker before the actual thinker chain is serialized. This means that sector_t::floordata, ceilingdata and lightdata's handling had to be moved to P_SerializeWorldActors.
2016-04-22 17:48:25 +02:00
Christoph Oelckers
20d3a72307
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-22 09:15:37 +02:00
Christoph Oelckers
f299248c8a
- be a bit more careful with using unvalidated portals for checking render hacks.
2016-04-22 09:15:22 +02:00
Christoph Oelckers
382a6e8b9f
- link actors to touching line portals, for use by the renderer.
2016-04-21 22:59:07 +02:00
Edoardo Prezioso
afa3009f93
- Fixed a GCC/Clang compiler error and a warning.
2016-04-21 16:11:03 +02:00
Edoardo Prezioso
6cfd82f500
- Simplify more, found by code inspection.
2016-04-21 16:03:33 +02:00
Edoardo Prezioso
6aca7604eb
- Clean the code by using AActor::GiveInventory.
...
This fixes also a bug in FraggleScript GiveInventory, which tried to access the 'SaveAmount' member of 'ABasicArmorBonus' with the wrong cast.
2016-04-21 16:02:43 +02:00
Edoardo Prezioso
7b35f32f3d
- Added the 'GiveInventory' method to the actor.
...
This will help cleaning up the item giving code. Returns a bool, in case the pickup failure might turn to be interesting in the future.
2016-04-21 15:59:23 +02:00
Edoardo Prezioso
ad9b9479ec
- Fixed erroneous P_UndoPlayerMorph calls.
...
In some places, P_UndoPlayerMorph was called with the 'force' argument placed in the 'unmorphflag' parameter, so that 'forced' unmorphs would be not completely forceful.
I hope no mod relied on this weirdness...
2016-04-21 11:25:08 +02:00
Christoph Oelckers
27cc3d6289
- fixed: ACS's GetActorLightLevel didn't check 3D floors.
2016-04-21 11:17:28 +02:00
Christoph Oelckers
ba7260c176
- fixed overflow issue with large damage values in P_RadiusAttack.
2016-04-21 10:51:41 +02:00
Christoph Oelckers
c3eec6db4d
-fixed warnings
2016-04-21 10:38:42 +02:00
Christoph Oelckers
1c7b512cc0
- GL handling of new portal data organization.
...
This also fixes some oversights with plane and horizon portals which were included in several checks.
2016-04-20 20:08:53 +02:00
Christoph Oelckers
9c6e7753d8
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/p_spec.cpp
# src/r_bsp.cpp
# src/r_defs.h
2016-04-20 19:56:07 +02:00
Christoph Oelckers
e5dc92f998
- some reshuffling of save data so that the actors won't get restored before the sectors.
...
Note that this required splitting P_SerializeWorld, because sector_t and FSectorPortal contain some actor pointers, for which the same rule applies: Portal linking can only be done after all sectors have been read, meaning it cannot be done along with the rest of the data in these structures.
Obviously such a change breaks savegame compatibility so the min. savegame version had to be increased again.
2016-04-20 19:42:00 +02:00
Christoph Oelckers
082042818b
- refactored sector portal data so that it does not rely on actors.
...
This is necessary because otherwise the level data cannot be serialized before the actors.
2016-04-20 19:20:11 +02:00
Christoph Oelckers
3532dd9ea1
- fixed coordinate correctness issues with P_CheckFor3DFloor/CeilingHit.
2016-04-20 13:28:19 +02:00
Christoph Oelckers
aa12772e07
- crash fix and minor optimization.
2016-04-20 13:18:53 +02:00
Christoph Oelckers
1f32f5a258
- some minor fixing and cleanup on gL portal code.
2016-04-20 11:39:41 +02:00
Christoph Oelckers
b0a0fb5ff0
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-20 05:23:14 +02:00
Randy Heit
60966f472f
Revert "Revert "Remove "action" from Actor functions that don't actually need it""
...
- This reverts commit 06216d733e
.
- I don't know what I was thinking. Since stateowner is always available
to the wrapper function, and this code is only generated for the wrapper
function, it's a nonissue. The state is already located before calling
any function that uses it.
2016-04-19 21:09:15 -05:00
Randy Heit
06216d733e
Revert "Remove "action" from Actor functions that don't actually need it"
...
- This reverts commit 39df62b20e
.
- Anything that needs to lookup a state also needs stateowner. See
FxMultiNameState::Emit(). I will need to be more selective when
de-actionifying functions.
2016-04-19 20:56:43 -05:00
Randy Heit
05843d3b13
Use "%#g" when disassembly floating point constants
...
- With "%g", there would be no decimal point if the number had no
fractional part, making the output indistinguishable from integers.
2016-04-19 20:48:12 -05:00
Randy Heit
5d3e413d42
Make A_Stop an action function again
...
- A_Stop takes no parameters, so it should be an action function to avoid
creating the wrapper when called.
2016-04-19 20:46:30 -05:00
Randy Heit
39df62b20e
Remove "action" from Actor functions that don't actually need it
...
- An actor function really only needs to be an action function if:
1. It can be called with no parameters specified, either because it takes
none or because all its parameters are optional. This lets SetState()
call it directly without creating a wrapper function for it.
2. It wants access to the callingstate or stateowner parameters. Most
functions don't care about them, so passing them is superfluous.
2016-04-19 20:28:49 -05:00
Christoph Oelckers
322b9fc0ae
- wrap access to portal properties into sector_t:: member functions.
2016-04-19 11:35:28 +02:00
Randy Heit
c795f29cc4
Reduce calling overhead for A_SetUser* functions by making them non-action functions
2016-04-18 23:18:34 -05:00
Randy Heit
e83bc53678
Add atan2, which was conspicuously absent, to the VM
...
- DECORATE now has atan2(y,x) and VectorAngle(x,y) functions. They are
identical except for the order of their parameters. The returned angle
is in degrees (not radians).
2016-04-18 23:06:17 -05:00
Christoph Oelckers
8b35c08aa0
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-19 01:02:30 +02:00
Christoph Oelckers
69cbb7a382
- fixed: The pitch calculation did not check the calling actor's height when retrieving the position to calculate the pitch from.
2016-04-19 00:52:08 +02:00
Christoph Oelckers
b13c265ff4
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-19 00:28:00 +02:00
Christoph Oelckers
573d80f144
- render sproites through sector portals.
2016-04-18 23:52:15 +02:00
Christoph Oelckers
d2735d7632
- fixed: Trace considered any water surface a hit if nothing else was found.
2016-04-18 18:31:19 +02:00
Christoph Oelckers
5e822fd60b
- fixed: The starting position of sight checks was inconsistent in different parts of p_sight.cpp.
2016-04-18 16:46:56 +02:00
Edoardo Prezioso
8dee0be9ab
- Fixed the morphed player actor friendliness.
...
It wasn't inherited from the original player actor object.
2016-04-18 16:30:13 +02:00
nashmuhandes
a30eb4d709
Fixed a potential NULL assignment in FOptionMenuItemSafeCommand::Activate
2016-04-18 16:30:13 +02:00
nashmuhandes
6bfdd10a5c
Show the command label when choosing a SafeCommand (like Reset2Defaults) in the menu.
2016-04-18 16:30:12 +02:00
Christoph Oelckers
741f054601
- clip sprites to linked sector portal planes.
...
This is the first part of properly handling those transitions.
2016-04-18 16:27:04 +02:00
Christoph Oelckers
990f5a79b4
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-18 15:29:45 +02:00
Christoph Oelckers
2327107f32
- fixed: Actors cannot be linked into the world until after all actors and sectors have been deserialized.
...
Two issues:
Portal linking requires all skyboxes in the sectors to be present, without them some info is not there when needed.
UpdateWaterLevel was called in AActor::Serialize, which operated on the freshly loaded level where lots of things haven't been set up yet and plane heights may be wrong.
2016-04-18 15:27:19 +02:00
Christoph Oelckers
467f833773
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/r_defs.h
2016-04-18 13:47:41 +02:00
Christoph Oelckers
155efb249a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-18 13:46:06 +02:00
Christoph Oelckers
961a4c8524
- optimized sector portal checks.
...
All the PortalBlocks* functions were turned into real function calls which for such a frequent check should be avoided. So now any linked portal sets a flag in the attached sectors so that it isn't necessary to check the skybox pointer each time which makes the functions subject to inlining again.
2016-04-18 13:40:09 +02:00
Christoph Oelckers
42e88ef120
- removed sector_t::FloorDisplacement and CeilingDisplacement.
...
Using the values these return directly is just as much code.
2016-04-18 13:40:09 +02:00
Christoph Oelckers
c30d5d42a2
- fixed: UpdateSectorRenderList may not be called when spawning mapthings.
...
At this time the portals have not been initialized yet and doing this here would trash the cached previous coordinate.
2016-04-18 13:40:08 +02:00
Christoph Oelckers
8c1eb201eb
- optimized P_PointInSubsector.
...
It costs more to convert the floating point coordinate for each node check than to convert it once up front and only use fixed point math afterward.
2016-04-18 13:40:08 +02:00
Christoph Oelckers
a90bef9c68
- 64 bit doesn't require NO_ASM.
2016-04-18 10:38:27 +02:00
Randy Heit
c5c032911c
Let the temporary vissprite be stack local
2016-04-17 20:59:08 -05:00
Randy Heit
66c4bc1fee
Fixed various problems when drawing psprites in a camera texture
...
- When the camera texture for a player view was rendered, its psprites
would overwrite the ones stored for hardware acceleration.
* Use a temporary vissprite in R_DrawPSprite() until it's known that it
will be accelerated.
* Do not write to any of the VisPSprites*[] arrays until it's known that
the sprite will be accelerated.
2016-04-17 20:55:07 -05:00
Randy Heit
bf629d2590
Use a range instead of strict equality when deciding head sounds
...
- See http://forum.zdoom.org/viewtopic.php?f=7&t=51583
2016-04-17 20:14:25 -05:00
Christoph Oelckers
2661a94fe9
- call UpdateSectorRenderList from LinkToWorld as well, because this can be called from outside the actor's Tick function.
2016-04-18 01:35:37 +02:00
Christoph Oelckers
8f61c1cdd8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-18 00:02:55 +02:00
Christoph Oelckers
89b2cc45a2
- reverted P_CreateSecNodes to the regular FBlockLinesIterator.
...
This got accidentally committed. Even if this gets extended to reach through portals it needs to be done differently. FMultiBlockLinesIterator can't guarantee to get every sector that's being touched.
2016-04-18 00:02:07 +02:00
Christoph Oelckers
54d78df267
- added a new sector list to AActor that collects all portal-linked sectors the actor's center is in. (Inspired by Eternity's solution to the same problem.)
...
This is for rendering the sprite properly in all areas the actor touches. The original thinglist is not sufficient for this and Boom's touching thinglist has other purposes and collects too much data.
This new list will only get filled in when the actor is actually crossing a portal plane, for the normal sector thinglist will still be used.
This piggybacks on the msecnode_t code which has been extended to be able to handle more than one list by passing the sector's membert pointers as parameters.
2016-04-17 23:48:04 +02:00
Christoph Oelckers
f66202aef1
- fixed: If due to portal transitions, the chasecam cannot be interpolated, the entire view interpolation must be disabled for the current frame.
2016-04-17 18:42:54 +02:00
Christoph Oelckers
08514de768
- fixed A_WraithFX2 which had an incomplete floating point conversion.
2016-04-17 18:19:46 +02:00
Christoph Oelckers
3ed7a25d61
- added polyportal offset updates.
...
- removed the nodebuilder message for splitting polyobject subsectors because it is no longer relevant.
2016-04-17 17:10:11 +02:00
Christoph Oelckers
0d7bd368fa
- added some fudging to draw the outer linedefs of a portal area.
...
This is needed so that polyportals get rendered correctly. For non-polyportals these will normally be outside the portal window and just be discarded.
2016-04-17 15:46:04 +02:00
Christoph Oelckers
faeb0303fe
- renamed ADynamicLight's intensity properties to radius, to have their name match their meaning.
2016-04-17 13:53:29 +02:00
Christoph Oelckers
357869a7b5
Merge branch 'zmaster'
2016-04-17 12:29:59 +02:00
Christoph Oelckers
f27c762319
- fixed: The Heresiarch's check for full rotation of its balls depended on BAM semantics so it should still be checked as such to ensure consistent behavior.
2016-04-17 12:28:35 +02:00
Christoph Oelckers
59133a7009
- fixed bad merge in p_saveg.cpp
2016-04-17 12:09:04 +02:00
Christoph Oelckers
dcc77e5fb2
Merge remote-tracking branch 'remotes/zdoom/master'
2016-04-17 12:06:26 +02:00
Christoph Oelckers
a199fe1825
- fixed: loading polyobjects from a savegame was incomplete.
2016-04-17 12:04:32 +02:00
Christoph Oelckers
8a010ab871
- allow 90° rotations in skybox sectors.
2016-04-17 11:58:26 +02:00
Christoph Oelckers
a1e8d83724
- added SetMusicVolume ACS function.
2016-04-17 10:56:46 +02:00
Christoph Oelckers
5e73cdc670
- deleted leftover label in trace code.
2016-04-17 10:41:13 +02:00
Christoph Oelckers
0a35027f67
- fixed use of validcount for the GL renderer.
...
This needs to be incremented more locally to the place where it is used, so that it is guaranteed that each viewpoint that needs to be rendered increases it.
As a result the uses in the portal code could be removed.
2016-04-17 10:39:29 +02:00
Christoph Oelckers
bc2a5b3f16
- fixed typo in automap background position calculation.
2016-04-17 10:19:56 +02:00
Christoph Oelckers
430f3419b0
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-17 01:24:41 +02:00
Christoph Oelckers
6a27267500
- changed handling of one-time, one-way door polyobjects to be more efficient.
...
The old code kept the dead thinker, resulting in constant deletion and recreation of the subsector links and PolyBSP because the interpolation kept running.
Changed it so that the thinker is destroyed and the polyobject gets blocked by setting a new flag.
2016-04-17 01:24:07 +02:00
Christoph Oelckers
95de1faa80
- fixed: The portal coverage builder initialized node_t::len differently than the polyobject splitter.
...
This was creating quite a mess when loading savegames with both portals and polyobjects.
2016-04-17 01:16:46 +02:00
Christoph Oelckers
01983cdee1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-16 22:58:39 +02:00
Christoph Oelckers
7ac0cfbbb9
- added support for angle changing portals to P_AimCamera.
2016-04-16 22:54:47 +02:00
Christoph Oelckers
e7c0fd26ba
- restored an accidentally deleted line in the Heresiarch code.
2016-04-16 21:28:08 +02:00
Christoph Oelckers
6db95182cf
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-16 19:42:12 +02:00
Christoph Oelckers
0f6a567055
- added portal-awareness to the railgun trail.
...
This required some changes to the Trace function because it turned out that the original was incapable of collecting the required information:
* actors are now also linked into blockmap blocks on both sides if they occupy the boundary of a sector portal.
* Trace will no longer set up parallel traces in all parts connected with sector portal, but only use one trace and relocate that on the actual boundary.
2016-04-16 19:41:33 +02:00
Christoph Oelckers
eb30bf6e14
- fixed: Offsetting a vector by portals did not properly adjust the trace after crossing a portal.
2016-04-16 00:17:12 +02:00
Christoph Oelckers
cd75a46917
- fixed incorrect use of 'frac' in Trace's EnterLinePortal function.
...
How did this go wrong...?
2016-04-15 22:22:38 +02:00
Christoph Oelckers
b345c8c377
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-15 21:15:06 +02:00
Christoph Oelckers
6dfb4bdd41
- changed floor and ceiling movers so that portal planes do not block movement of the opposite plane, even if they are on the wrong side of it.
...
This fixes the cross-portal lift to the blue key in Vaporware.
2016-04-15 20:42:40 +02:00
Christoph Oelckers
dce9bf2760
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-15 19:46:41 +02:00
Christoph Oelckers
b73c6e847a
- fixed: A_CheckRange calculated the square twice, resulting in a far too large value that got checked.
2016-04-15 18:46:31 +02:00
Christoph Oelckers
24776edd13
- fixed one of the most glaring omissions in the portal code: The wall clipper completely ignored portals when deciding how to treat a sector boundary, and ended up merging portal with non-portal planes.
...
This check is only active for linedef based portals, due to the large amount of maps that did it wrong with thing based portals.
Although it may well be that there are some maps that abuse this omission for linedef portals as well, these are better handled with a compatibility option if the need arises.
The main reason this was added is to streamline and optimize the portal handling between renderers in ZDoom and GZDoom. For that both need to show the same general behavior and for linedef portals it is also important to handle the same as in Eternity.
2016-04-15 16:39:58 +02:00
Christoph Oelckers
94cec02acc
- fixed: FPNGTexture must readjust the file pointer after deciding to skip the tRNS chunk.
2016-04-15 15:15:34 +02:00
Christoph Oelckers
ed211ecbab
- fixed positioning of portal things
...
In some situations it can happen that the sector here is not the frontsector of the anchor linedef, because some colinear node line with opposite direction causes this to be positioned on the wrong side. The only remedy here is to explicitly set the correct sector after spawning these things.
2016-04-15 15:02:28 +02:00
Christoph Oelckers
f0c2cd2d50
- fixed: 24 bit PNGs with transparent color need to set transpal to true in FPNGTexture::CopyTrueColorPixels.
2016-04-15 10:45:31 +02:00
Christoph Oelckers
a0a530945d
- added new sector type 90 which designates a sector that is being used as a cubemapped skybox, in case someone wants to make one of those without using an actual sky for this.
2016-04-14 13:22:15 +02:00
Christoph Oelckers
328047ea28
- fixed issues with recent Stereo3D submission:
...
* there was a CVAR that was only defined in Windows
* code did not compile with GCC.
* due to bad setup it disabled multisampling.
2016-04-14 10:16:04 +02:00
Christoph Oelckers
77f05a0010
- fixed spawn positions for Korax's missiles.
2016-04-14 00:21:38 +02:00
Christoph Oelckers
caf80e74c4
- fixed multiplication/division mixup in TextureAdjustWidth.
...
- fixed: For top textures an incorrect ceiling height was passed to DoTexture.
2016-04-13 23:09:45 +02:00
Christoph Oelckers
812cdc86fb
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-13 19:33:56 +02:00
Christoph Oelckers
bffb7444a0
- removed portal check for distance check in GL code.
2016-04-13 19:33:45 +02:00
Christoph Oelckers
0f7fce8bbb
- removed portal offsetting from the sprite distance check.
...
This isn't necessary. When rendering no actors from other groups may ever come into view directly - only when the respective part of the level is rendered through a portal. But at that point the camera is in a position where it's already correctly placed with relation to that actor.
2016-04-13 19:32:54 +02:00
Christoph Oelckers
d657692229
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-13 16:24:44 +02:00
Christoph Oelckers
d66a28fcde
- fixed offsetting of player weapon sprites.
2016-04-13 16:24:25 +02:00
Christoph Oelckers
d0b30f31e1
- fixed: Checking for slopes at untextured bottom parts of the wall checked the ceiling's slope not the floor's.
2016-04-13 11:41:51 +02:00
Christoph Oelckers
37f43617d9
- make distance check 3D and use proper viewpoint.
2016-04-13 11:35:05 +02:00
Christoph Oelckers
d88a5ac353
- make distancecheck 3D and use the actual view position for calculation.
2016-04-13 10:48:39 +02:00
Christoph Oelckers
45cfea17f5
- removed unused variable.
2016-04-13 10:34:04 +02:00
Christoph Oelckers
efce248a98
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-12 22:42:33 +02:00
Christoph Oelckers
21b45fc0eb
- fixed: distancecheck as a class property needs to be copied manually to subclasses.
2016-04-12 22:42:02 +02:00
Christoph Oelckers
bec3208efd
- added support for distancecheck property.
2016-04-12 19:50:29 +02:00
Christoph Oelckers
a1a022581d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-12 19:44:34 +02:00
Christoph Oelckers
3f0ed5d252
- added a distancecheck property to AActor that allows a given CVAR to be used as maximum display distance for actors of this type.
...
This is for WolfenDoom: BOA, which has some scripted sprite distance checks that very negatively affected performance.
2016-04-12 19:44:12 +02:00
Christoph Oelckers
a411b93e1d
- fixed: The dynamic pulse light should always use its maximum size for linking into the sector lists, just like the other types with changing size do.
...
These limking operations are not cheap so it's preferable to have them affect a bit more geometry than running the linking code each tic.
2016-04-12 16:01:08 +02:00
Christoph Oelckers
e1a683b9ec
- fixed minimum damage check in PowerDamage.
2016-04-12 15:49:13 +02:00
Christoph Oelckers
5d528fe317
- fixed: PCD_ENDTRANSLATION was missing a NULL pointer check.
2016-04-12 01:23:12 +02:00
Christopher Bruns
09d0cb5fd5
Merge branch 'master' of https://github.com/coelckers/gzdoom into two_more_stereo_modes
...
# Conflicts:
# src/gl/system/gl_framebuffer.cpp
2016-04-11 18:25:54 -04:00
Christoph Oelckers
7a2e957225
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-11 23:14:53 +02:00
Christoph Oelckers
a97f67edb6
- fixed: P_GetMidTexturePosition needs to divide by scale, not multiply, to get the proper offset.
2016-04-11 23:12:35 +02:00
Christoph Oelckers
aec1c85c08
- fixed: alpha for patches needs to be multiplied by 65536, not divided by.
2016-04-11 22:21:17 +02:00
Christoph Oelckers
ae6df617ba
- fixed: The FPathTraverse call in P_UsePuzzleItem was missing the PT_DELTA flag.
2016-04-11 22:10:46 +02:00
Christoph Oelckers
e72bfa8add
- fixed: For finding the listener's sector the sound code used the wrong coordinate.
2016-04-11 21:02:44 +02:00
Christoph Oelckers
99ca649930
- fixed NULL pointer access in SetAmmoCapacity.
2016-04-11 20:42:43 +02:00
Christoph Oelckers
56f8974b66
- removed debug code.
2016-04-11 19:59:57 +02:00
Christoph Oelckers
273c1ea510
- fixed PointOnSide caclulation for dynamic lights.
2016-04-11 19:59:39 +02:00
Christoph Oelckers
77bfffaee0
- removed a few __cdecl's from the source.
2016-04-11 12:46:48 +02:00
Christoph Oelckers
bf2b61f61c
- removed remaining STACK_ARGS from GL code.
2016-04-11 10:55:09 +02:00
Christoph Oelckers
7ce670951b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
2016-04-11 10:49:11 +02:00
Christoph Oelckers
db86385cf6
- removed STACK_ARGS.
...
The only reason this even existed was that ZDoom's original VC projects used __fastcall. The CMake generated project do not, they stick to __cdecl.
Since no performance gain can be seen by using __fastcall the best course of action is to just remove all traces of it from the source and forget that it ever existed.
2016-04-11 10:46:30 +02:00
alexey.lysiuk
bd8b8911d5
- fixed Windows 32-bit build
2016-04-11 10:08:18 +03:00
MajorCooke
76f00131ff
- Fixed: A_CheckBlock's dropoff check ignored the specifications of NOACTORS and NOLINES due to P_CheckMove blindly failing if P_CheckPosition failed. This lead to false positives such as blocking actors being detected when they shouldn't be.
2016-04-10 20:11:04 +02:00
Christoph Oelckers
76c18820cb
- moved the declarations for the lighting thinkers to p_light.cpp.
...
Aside from the init function they are not needed anywhere else and that could also be placed into this file.
2016-04-10 18:29:23 +02:00
Christoph Oelckers
c12a85ee85
- removed some unused content from p_spec.h
2016-04-10 18:14:01 +02:00
alexey.lysiuk
93c334059a
Made title text always visible in OS X startup window
...
Added temporary solution for the same foreground and background colors of the title in OS X startup window
It's used in graphical startup screen, with Hexen style in particular (for example WolfenDoom - Blade of Agony)
Native OS X backend doesn't implement this yet
2016-04-10 14:06:18 +02:00
Christoph Oelckers
fe973ba442
- tried to add precompiled headers to fastmath sources as well, but VC++ doesn't seem to want to play along. So I left this stuff in but disabled the precompilation until a solution can be found.
2016-04-10 13:54:42 +02:00
Christoph Oelckers
08b0be11a6
- add the precompiled header file for the previous commit.
2016-04-10 13:10:41 +02:00
Christoph Oelckers
9cc873ecdd
- enable use of precompiled headers for MSVC. Thanks to a small CMake script I recently found this could be done non-invasively.
...
Due to the VC++ 2015 headers being rather bloated (the average include size per source is 400-500kb) this provides a noticable compile speedup, although right now this only covers the game code, so there should be more room for improvement.
2016-04-10 13:08:54 +02:00
Christoph Oelckers
12129b0f07
- added a system-include independent wrapper for Windows's OutputDebugString, so that this can be used more easily in files that cannot include windows.h.
2016-04-10 13:03:44 +02:00
Christoph Oelckers
ef08e29d51
- remove windows header #include from gameconfigfile.cpp, because it isn't needed.
2016-04-10 12:33:35 +02:00
Christoph Oelckers
f7adbc58bd
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-10 11:31:38 +02:00
Christoph Oelckers
d48c0ce25c
- fixed some particle positioning errors.
2016-04-10 10:57:48 +02:00
Christopher Bruns
f6d296e103
Add comment by line I modified to avoid compile problem with Visual Studio 2015
2016-04-09 22:08:40 -04:00
Christopher Bruns
355bc75001
Merge branch 'master' of https://github.com/coelckers/gzdoom into two_more_stereo_modes
2016-04-09 21:46:33 -04:00
Christopher Bruns
bde94879ad
Restore stereoscopic geometry correctness, by inserting a minus sign where it always should have been, after finding that a compensating minus sign, where it probably should not have been anyway, was removed during the recent floating point refactoring.
2016-04-09 21:46:14 -04:00
Christoph Oelckers
84c8f38038
- fixed: The divisions in FTexCoordInfo::TextureOffset and RowOffset were turned into multiplications when converting to floating point.
2016-04-10 00:45:48 +02:00
Christoph Oelckers
dc753fca6e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-09 23:30:29 +02:00
Christopher Bruns
072a5e60ae
Naive change to get latest version to compile.
2016-04-09 17:03:55 -04:00
Christoph Oelckers
9a48adf81a
- fixed: The software 2D drawer expected its translation pointer to be initialized by ParseDrawTextureTags. Removed the variable from DrawParms and made it and its initialization local to the software rendering code.
2016-04-09 22:56:12 +02:00
MajorCooke
c79a1b6a45
thing->floorz --> thing->dropoffz
2016-04-09 22:33:55 +02:00
MajorCooke
8b8c879994
- CBF_DROPOFF Fixes
...
- Fixed: CBF_DROPOFF didn't actually check the coordinates passed to it for dropoff height values. It only checked to see if it was stuck in lines.
2016-04-09 22:33:54 +02:00
Christoph Oelckers
dc72e7f3c2
- removed the check for VA_COPY from CMakeLists.txt.
...
This is because nothing uses va_copy anymore and it's a mandatory part of C++11, therefore always available.
2016-04-09 22:07:14 +02:00
Christoph Oelckers
1f1a0ca847
- fixed incorrect check for negative damage in APowerProtection::ModifyDamage.
2016-04-09 21:57:35 +02:00
Christoph Oelckers
bcebeadedc
- fixed: ACS's GetActorPitch needs to convert to a signed angle.
2016-04-09 21:44:09 +02:00
Christopher Bruns
c6fa01dfbf
Reimplement blue/yellow and quadbuffered stereo, this time with an additional CVAR gate on quadbuffered, for better hardware compatibility.obj
...
Something is terribly wrong with the separation in all stereo modes now though.
2016-04-09 15:40:55 -04:00
Christoph Oelckers
7a7e1652fc
- fixed: lower textures used the wrong reference height for alignment
2016-04-09 21:06:32 +02:00
alexey.lysiuk
daa112e2ac
Fixed OS X compilation after floating point merge
...
Header files from Carbon framework caused a few symbol conflicts
2016-04-09 20:54:04 +02:00
Christoph Oelckers
2e16f3d77e
- made some adjustment for the DrawTexture changes.
2016-04-09 20:49:27 +02:00
Christoph Oelckers
fde1f28d71
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-09 20:48:54 +02:00
Christoph Oelckers
a827bab576
- refactored the use of tag lists so that they do not have to be passed around between functions.
...
This means that the varargs functions themselves are now responsible for parsing them into DrawParms.
This was done because DrawTextV made a blanket assumption that every single vararg has the size of a 32 bit integer and caused crashes when anything else was passed. It also failed to eliminate any tag that is incompatible with text display. These will now abort DrawText and trigger an assert.
2016-04-09 20:47:54 +02:00
Christoph Oelckers
1f0fd85d0e
- adjustments for the DrawTexture interface changes.
2016-04-09 13:05:43 +02:00
Christoph Oelckers
bc42dd26c8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-09 13:00:14 +02:00
Christoph Oelckers
e2ae7d8f5d
- removed the unused x and y parameters from DrawTextureParms.
2016-04-09 12:59:50 +02:00
Christoph Oelckers
c502a4b3cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-09 12:55:34 +02:00
Christoph Oelckers
43dd759859
- changed DrawTexture so that the parameters get parsed in the varargs function directly and that the virtual function that is getting called gets the fully prepared data.
...
In order to avoid passing around tag lists, DrawTextV needs to parse everything itself and then pass a fully initialized structure to DrawTexture. This cannot be done if all variants require a varargs tag list.
Apparently the only reason for the old approach was the 'hw' parameter which was never used.
2016-04-09 12:55:12 +02:00
Christoph Oelckers
ca317a87ea
- started working on tracking portal transitions for railgun shots.
2016-04-09 12:09:06 +02:00
Christoph Oelckers
bc7e159be0
- cleaned up ceiling creation and moved the Create function out of the DCeiling class.
...
- did the same for floors so that FraggleScript no longer needs access to the thinkers themselves.
2016-04-09 12:07:34 +02:00
Christoph Oelckers
caae61de4c
- removed DMoveCeiling and let FS call DCeiling::Create instead. Made a minor change to DCeiling::Create to keep it compatible, because handling for instantly moving ceilings is a bit different.
2016-04-08 20:44:55 +02:00
Christoph Oelckers
919f99db61
- fixed typo in actor scale assignment when spawning.
2016-04-08 16:52:42 +02:00
Christoph Oelckers
39d03f12b1
- fixed float <-> fixed conversion errors in Fragglescript.
2016-04-08 15:14:26 +02:00
Christoph Oelckers
06dc96b062
- removed 64 bit warnings.
2016-04-08 14:21:20 +02:00
Christoph Oelckers
3f28478eb2
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-04-08 14:19:02 +02:00
Christoph Oelckers
8535a973cf
- made MoveAttached, MoveCeiling and MoveFloor members of sector_t instead of DMover.
...
- call MoveFloor and MoveCeiling directly in FS's floorheight and ceilingheight functions and remove the dummy thinkers it had to use before.
2016-04-08 14:18:46 +02:00
Christoph Oelckers
e505bfd7a3
- took EResult out of DMover and made it an enum class.
2016-04-08 13:59:03 +02:00
Christoph Oelckers
fb2234396c
- split DSectorEffect::MovePlane into MoveFloor and MoveCeiling.
...
What was the point of this strange setup anyway? MoveFloor and MoveCeiling were inlines calling the universal MovePlane, which had nothing better to do than a switch/case with two cases - floor and ceiling!
2016-04-08 13:39:08 +02:00
Christoph Oelckers
74c9a7bf67
- fixed angle calculation in AdjustPlayerAngle for portals.
...
Normally this will adjust relative to the actual direction to the target, but with arbitrary portals that cannot be calculated so using the actual attack angle is the only option.
2016-04-08 13:08:08 +02:00
Christoph Oelckers
fdf9d94b26
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-08 12:51:34 +02:00
Christoph Oelckers
7404142edf
- fixed incorrect center point calculation.
2016-04-08 12:51:00 +02:00
Christoph Oelckers
25d7eaed0a
- fixed parentheses in ADynamicLight::DistToSeg.
...
- floatifed OpenGL sector grouping.
- optimized light node collection. It should not create light nodes for out of range segs.
2016-04-08 12:38:09 +02:00
Christoph Oelckers
3e94832bfd
- use the correct reference heights for positioning textures.
2016-04-08 01:58:13 +02:00
Christoph Oelckers
4d5671d654
- floatified the texture coordinate code.
2016-04-08 01:42:43 +02:00
Christoph Oelckers
eaf055dff4
- floatified the remaining parts of gl_walls.cpp.
2016-04-08 00:19:51 +02:00
Christoph Oelckers
4ac3734375
- floatified more of gl_wall.cpp.
2016-04-07 23:19:37 +02:00
Christoph Oelckers
ddbb8d79c1
- handle the player sprite when crossing a portal.
2016-04-07 21:13:37 +02:00
Christoph Oelckers
5cd9e58af5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-07 21:12:31 +02:00
Christoph Oelckers
58002f7f96
- fixed: an 'if' that gets completely optimized away by a constant 'false' condition should not make the entire function disappear.
2016-04-07 20:31:12 +02:00
Christoph Oelckers
0cbdb9ab72
- handle display of player sprite during portal transition properly.
...
This checks if the current viewpoint lies on the interpolation path, translated by all active portals.
2016-04-07 19:35:01 +02:00
Christoph Oelckers
7df1a8ae81
- adjusted FGLLinePortal to recent changes in line_t.
2016-04-07 17:41:06 +02:00
Christoph Oelckers
47e20aead4
- disallow crossable portals on one-sided linedefs which do not belong to a polyobject.
...
Sadly the mappers cannot be trusted to use a feature correctly. Despite repeatedly telling that portals on one-sided lines are problematic, everybody seems to do it this way - and then report bugs if it doesn't work. Under such circumstances the only safe option is to block such portals entirely.
See http://forum.zdoom.org/viewtopic.php?f=2&t=51511&p=898522#p898522 for a typical example of the problems this might cause.
2016-04-07 17:13:56 +02:00
Christoph Oelckers
ee3e3e35e6
- partial floatification of wall texturing code.
2016-04-07 17:00:13 +02:00
Christoph Oelckers
485a1bd0a5
- fixed: The 3D-floor plane renderer mixed float and fixed point.
2016-04-07 16:25:30 +02:00
Christoph Oelckers
32bbec7cad
- fixed: the random offset that gets used when spawning blood applies to both sprites and particles, not just sprites.
2016-04-07 14:14:44 +02:00
Christoph Oelckers
4af859094c
- fixed: sprite clipping did not work anymore because the 'invalid' value was inconsistent.
...
- cleaned up the 'if' condition in PerformSpriteClipAdjustment,
- enabled weapon bobbing interpolation.
2016-04-07 14:09:07 +02:00
Christoph Oelckers
88542bed78
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-07 13:43:00 +02:00
Christoph Oelckers
1d286d5bd5
- added APROP_MaxStepHeight + APROP_MaxDropOffHeight.
2016-04-07 13:41:54 +02:00
Christoph Oelckers
ddb2f6b6cb
- fixed: P_SpawnPlayerMissile still used the angle_t values for offsetting the autoaim traces.
2016-04-07 13:11:23 +02:00
Christoph Oelckers
1eeaee1ac7
- completely reviewed and fixed all codes using angles in the automap.
2016-04-07 13:05:29 +02:00
Christoph Oelckers
a1c03c9a62
- fixed: P_AimCamera inverted the pitch.
2016-04-07 12:44:46 +02:00
Christoph Oelckers
790e13e5cb
fixed: For sight checks the 'eye' of the seeing thing should be placed at 3/4 height, not half its height.
2016-04-07 12:14:34 +02:00
Christoph Oelckers
7ebb961917
- added weapon bobbing interpolation.
...
This was so ridiculously simple that I really fail to understand why the previous attempt was so overcomplicated that it just failed for that.
2016-04-07 11:48:23 +02:00
Christoph Oelckers
7f23a91488
- fixed: smooth bobbing uses the full angular range to calculate its position.
2016-04-07 11:14:39 +02:00
Christoph Oelckers
14b370df66
- fixed automap rotation to point upward, not downward when am_rotate is on.
2016-04-07 10:39:15 +02:00
Christoph Oelckers
37ddd20b56
- removed leftover debug code from yesterday's particle fix.
2016-04-07 10:28:43 +02:00
Christoph Oelckers
5409ada0e3
let WM_DISPLAYCHANGE and WM_STYLECHANGED call DefWindowProc.
...
At least on GZDoom it seems to be important on some systems.
2016-04-07 10:26:57 +02:00
Randy Heit
4b10177e46
Make the firelines fudging more "streamlined"
2016-04-06 20:09:42 -05:00
Christoph Oelckers
3923039a1b
- fixed: a sight check that starts right on a linedef should ignore that linedef.
...
Trying to calculate a slope to the target from this linedef's opening will always result in failure because it'd involve a division by zero.
2016-04-07 01:16:07 +02:00
Christoph Oelckers
3d44613377
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-06 22:09:47 +02:00
Christoph Oelckers
dbad946fe3
- revert default planes to static in gl_sprite.cpp
2016-04-06 22:09:21 +02:00
Christoph Oelckers
b774fed93e
- fixed: P_DrawSplash2's z-velocity was too high.
...
This code was ported from the 2005 floating point version, at one point it replaced 128 with 0.5, but 128 as a fixed point value needs to be 1/512. as a floating point value.
2016-04-06 18:46:52 +02:00
Christoph Oelckers
b93d4a796a
- fixed angles for am_rotate.
2016-04-06 17:28:31 +02:00
Randy Heit
b796a5fed6
Fixed: segangle is only 16-bits, so AngleToFloat won't work on it directly
2016-04-06 08:45:07 -05:00
Christoph Oelckers
a0d0d9339e
- fixed some uninitialized stuff in particle rendering.
...
- added gl_ClampLight to all places where the light level is set.
2016-04-06 14:03:21 +02:00
Christoph Oelckers
9196683e4f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-06 13:27:23 +02:00
Christoph Oelckers
8ad49f5d33
- removed a leftover line from before the floating point conversion in p_user.cpp.
2016-04-06 13:21:17 +02:00
Christoph Oelckers
8cbdbdaf70
- fixed: The PathTraverse and sight checking code may not assume that ceiling(x) == floor(x)+1.
...
This will fail when a trace starts directly on a block boundary in which case x is a whole number. It should always use 'floor(x)+1' to ensure that the calculated point is at the right or upper edge of a block.
2016-04-06 13:19:09 +02:00
Christoph Oelckers
d4a2e9696e
- removed 'inline' from P_Teleport declaration.
2016-04-05 22:27:11 +02:00
Christoph Oelckers
1a5a00a76e
Merge branch 'floatcvt'
2016-04-05 21:42:09 +02:00
Christoph Oelckers
04b0a13bd3
- some optimization of FPathTraverse:
...
* we do not really need compatibility PointOnLineSide here. Unlike the movement code it'd only affect some extreme edge cases.
* removed the special case for very short traces. This was a result of the original and very imprecise PointOnLine functions. Since those no longer get used here and floating point precision is a lot higher there is no need for this kind of treatment.
* PointOnLine checks for the sides of an actor's bounding box don't need a full PointOnLineSide call, a simple coordinate comparison is fully sufficient, and this can easily be done in the existing switch/case block.
2016-04-05 16:29:07 +02:00
Christoph Oelckers
ad13a55f0d
- floatified line_t::dx and dy.
2016-04-05 14:03:08 +02:00
Christoph Oelckers
f606ba315f
- fixed: The return value of sector_t::FindHighestFloorPoint lost its '-' sign during the floating point conversion.
2016-04-05 10:55:13 +02:00
Christoph Oelckers
1d83ea6177
- fixed: ACS's SpawnProjectile and Thing_Projectile2 functions were treated as fixed point even though they are not.
2016-04-05 10:16:48 +02:00
Christoph Oelckers
55cbeb0253
- fixed pitch calculation in P_SeekerMissile with SMF_PRECISE.
2016-04-04 23:07:21 +02:00
Randy Heit
d39694a33d
Fixed: DoTakeInventory() indicated success when passed an invalid item type
2016-04-04 15:51:03 -05:00
Randy Heit
3c8423d810
Print only one error message when PlayerPawn.Face is not 3 chars long
2016-04-04 15:17:58 -05:00
Randy Heit
57e0c97867
Fixed: DECORATE property error messages fail to show the file information
2016-04-04 15:16:29 -05:00
Randy Heit
6f60253590
Don't waste time looking for variables to (de)init in native classes
2016-04-04 14:57:43 -05:00
Christoph Oelckers
2dff6a08d1
- fixed: P_RadiusAttack passed the wrong radius value to the BlockThingsIterator.
2016-04-04 16:51:25 +02:00
Christoph Oelckers
21692359cc
- fixed A_Face angle calculation.
2016-04-04 15:59:59 +02:00
Christoph Oelckers
7586320038
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_map.cpp
2016-04-04 14:19:34 +02:00
Christoph Oelckers
c346ac6143
- fixed: P_TeleportMove must clear the spechits array.
...
This was accidentally deleted during one round of portal refactoring but is essential to prevent multiple teleport activations in one move.
Fixing this also allowed removing the fudging that was added to work around the issue in P_TryMove.
2016-04-04 14:17:34 +02:00
Christoph Oelckers
32c32ea739
- fixed some initialization problems with sound.
...
* a position-less sound did not get the listener's position attached.
* an unattached sound mixed up y and z coordinates.
2016-04-04 12:46:32 +02:00
Christoph Oelckers
123d503492
Merge branch 'master' into floatcvt
2016-04-04 12:25:36 +02:00
Christoph Oelckers
da91422e14
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
2016-04-04 12:25:24 +02:00
Christoph Oelckers
f6b33acbb1
- fixed plane access in GL code.
2016-04-04 12:22:47 +02:00
alexey.lysiuk
cbcde3a950
Fixed check for alpha channel in texture to select hqNx upscaling mode
...
Now it's the initial check with the adjustment in mode indices only, as old hqNx MMX indices (4..6) are now occupied by generic hqNx implementation
See http://forum.drdteam.org/viewtopic.php?t=6872
2016-04-04 12:13:50 +02:00
Christoph Oelckers
7486e24cd9
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
2016-04-04 12:07:57 +02:00
Christoph Oelckers
5d099590cd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-04 12:06:42 +02:00
Christoph Oelckers
fadc7d650d
- fixed: segplane_t::SetAtHeight initialized the plane normal's Z incorrectly.
2016-04-04 12:02:53 +02:00
Randy Heit
7de8c2b5eb
Fixed: || should be &&
2016-04-03 21:35:44 -05:00
Randy Heit
77f9643c8f
How did this end up wrong?
2016-04-03 20:25:07 -05:00
Randy Heit
17972b5d06
Revert "Add "support" for user string variables in DECORATE"
...
- This reverts commit c90a1c0c96
.
- DECORATE looks to be very dependant on functions that take strings as
parameters receiving those strings as constants and not as expressions,
so being able to declare string variables with DECORATE is pretty much
useless.
2016-04-03 19:15:00 -05:00
Christoph Oelckers
fd27c8db9e
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/dobjtype.cpp
# src/dobjtype.h
# src/version.h
2016-04-04 01:21:24 +02:00
Randy Heit
c90a1c0c96
Add "support" for user string variables in DECORATE
...
- This is "support" in the very most basic sense. You can declare them,
but you can't actually do anything with them, since the decorate parser
can't handle expressions when it's parsing string arguments. However,
they seem to be getting properly initialized and destroyed, which is
what this was added to test. If it doesn't look like too much trouble, I
might try to turn them into something actually worth something.
2016-04-03 18:10:09 -05:00
Randy Heit
7c8cff64e6
Added code to initialize and destroy string variables in classes
...
- Will require being able to add strings to non-native classes to actually
test this.
2016-04-03 17:45:04 -05:00
Randy Heit
15208188de
Remove PClass::Extend()
2016-04-03 16:25:08 -05:00
Randy Heit
85c8218441
Added methods for PTypes to serialize their values
...
- Values are tagged to allow for some measure of changing variable types
without automatically breaking savegames.
- Use these new methods to serialize the non-native variables in an
object. This allows for achiving non-ints.
2016-04-03 16:21:48 -05:00
Randy Heit
da496bbe62
Use AddField() to add user variables in DECORATE
2016-04-03 16:21:48 -05:00
Randy Heit
806d9d7a95
Add an AddField() override to PClass that extends the default instance
2016-04-03 16:21:47 -05:00
Randy Heit
3357af32e5
Generalize FxArrayElement to work with all numeric elements (not just 32-bit ints)
2016-04-03 16:21:41 -05:00
Randy Heit
0cc2705b99
Added A_LogFloat
2016-04-03 16:12:35 -05:00
Christoph Oelckers
1011e26eb9
- fixed: P_RadiusAttack should not call P_DamageMobj for a damage value of 0.
...
This could happen if the damage calculations resulted in a value between 0 and 1, which for the actual check was multiplied with the damage parameter of P_RadiusAttack which inflated the fractional value to something that looked like actual damage but was later truncated.
2016-04-03 22:45:54 +02:00
Christoph Oelckers
6d441e25db
- partially undid the 'repeated flash state' fix, because it didn't work with the stock weapons. I'm still not sure if a compatibility setting is needed.
2016-04-03 22:31:45 +02:00
Christoph Oelckers
447ce0abe7
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/p_saveg.cpp
# src/r_defs.h
2016-04-03 22:16:06 +02:00
Christoph Oelckers
603af1bb92
- compile bug in gl_sprite and some optimization in gl_walls.cpp
2016-04-03 22:13:38 +02:00
Christoph Oelckers
330ca07f69
Merge branch 'master' into floatcvt
2016-04-03 22:11:50 +02:00
Christoph Oelckers
3f5e0c682e
- fixed: Due to the iteration limit of 100 in the path traverse code, running a trace was effectively limited to somewhere around 12800 map units. Also added the safer exit condition checks from the sight checking code to FPathTraverse.
2016-04-03 21:41:58 +02:00
Christoph Oelckers
70b8afc5ec
- fixed: A_CheckLOF did the trace pitch calculation wrong.
2016-04-03 21:26:57 +02:00
Christoph Oelckers
02a586e6b2
- removed a redundant Vec3Offset call in A_SpawnParticle.
2016-04-03 21:03:49 +02:00
Christoph Oelckers
3ee42f6aa6
- removed all savegame compatibility handling, since the data is just too different from what it was before to try to convert it.
2016-04-03 20:55:23 +02:00
Christoph Oelckers
4e5ba49aca
- got rid of secplane_t::fA and fB. All uses could be replaced by other functions.
2016-04-03 19:46:00 +02:00
Christoph Oelckers
fc5f98a0be
- floatified the sector planes.
...
This should conclude the floating point conversions for now.
2016-04-03 19:28:53 +02:00
Christoph Oelckers
fede16ce68
- fixed PointOnSide checks.
...
- optimized some ZatPoint calls for floating point planes.
2016-04-03 13:15:02 +02:00
Christoph Oelckers
252a6e9038
- removed back and forth fixed<->float conversions in sprite code.
2016-04-03 13:00:09 +02:00
Christoph Oelckers
58eb64a7e0
- fixed a few fixed/float parameter mixups.
2016-04-03 12:54:47 +02:00
Christoph Oelckers
7a6039b44c
- floatified vertex coordinates.
...
Making these double or float doesn't seem to matter at all performance-wise so they use the more precise double format.
2016-04-03 11:53:31 +02:00
Christoph Oelckers
5a2eac8f15
- floatified vertices and removed the now redundant fx and fy members. This needs an added check for polyobject origins, though, so that such subsectors don't get rendered.
2016-04-03 11:40:14 +02:00
Braden Obrzut
42edd7db22
- Added IfInvulnerable SBARINFO command (modified from Blue-Shadow's pull request)
2016-04-02 23:47:44 -04:00
Braden Obrzut
81f29556bf
- Refactored SBarInfo flow control so negatable commands are handled statically.
...
- Made TArray movable and TDeletingArray a move only type.
2016-04-02 23:43:56 -04:00
Christoph Oelckers
8a20f901a3
- removed the non.slope special handling in the wall processing code.
...
This may have made some sense when I added this 11 years ago but on a current computer it actually hurts performance a bit due to the branching that is involved - the code runs a bit faster with those special cases removed.
2016-04-03 02:07:37 +02:00
Christoph Oelckers
af78937a15
- updated GL renderer.
2016-04-02 23:17:16 +02:00
Edoardo Prezioso
f36489098f
- Fixed one GCC/Clang warning.
2016-04-02 23:01:51 +02:00
Edoardo Prezioso
28ac65b25b
- Fixed GCC and Clang compilation errors.
2016-04-02 23:01:32 +02:00
Christoph Oelckers
348c384bb6
- fixed scaling of skies with unusual dimensions.
2016-04-02 22:18:42 +02:00
Christoph Oelckers
f7553fcd51
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_defs.h
2016-04-02 22:17:33 +02:00
Christoph Oelckers
6ffb5fa164
- fixed: Angular interpolation needs to call deltaangle instead of using the difference between two angles to avoid overflow conditions.
2016-04-02 22:12:52 +02:00
Christoph Oelckers
9b5a4b6d43
- removed several unused setter functions for level data structures and fixed some incorrect uses.
2016-04-02 22:05:23 +02:00
Christoph Oelckers
9a07f81269
- renamed all ZatPoint variants that return a fixed point value to ZatPointFixed, to avoid accidental mixup with the floating point variants.
2016-04-02 20:45:32 +02:00
Christoph Oelckers
6a150f7248
- fixed seg vertex adjustment (from a commit that wasn't copied to this branch.) and added viewx etc. to a global header .
2016-04-02 20:24:51 +02:00
Christoph Oelckers
3db90ff4c1
- removed all remaining fixed point methods from AActor.
...
- removed all calls to fixed point vertex access methods in p_setup.cpp.
# Conflicts:
# src/p_setup.cpp
2016-04-02 20:14:58 +02:00
Christoph Oelckers
60e25b32a8
- floatified the particles.
...
This is the last bit of play code that needed to be altered, what's left is the underlying data representations of vertices, linedefs and sectors.
# Conflicts:
# src/p_setup.cpp
# src/r_things.cpp
2016-04-02 20:12:08 +02:00
Christoph Oelckers
931774ab38
- fixed some issues with the PathTraverse and sight checking code:
...
* typo in calculating end position from a trace vector
* must use floor to convert from floating point block coordinate to block index to account for running off the negative side of the blockmap. (Int cast always rounds toward zero which is wrong here.)
* bad calculation of sight checking slopes - they has the actor's z coordinate duplicated.
- fixed scaling of automap markers.
2016-04-02 20:10:48 +02:00
Christoph Oelckers
b3659305ce
- fixed typo in line portal interpolation path calculation.
2016-04-02 20:10:32 +02:00
Christoph Oelckers
96a02f922d
- removed R_PointToAngle2 call in P_Setup.cpp.
...
- removed long inactive node saving code in p_writemap.cpp. If this file is ever made operational again it will be with UDMF output.
2016-04-02 20:10:25 +02:00
Christoph Oelckers
046ee3e803
- removed a few leftover FRACUNITs.
2016-04-02 20:07:18 +02:00
Christoph Oelckers
bb13590e07
- make viewx etc. global.
...
- a few minor optimizations.
2016-04-02 20:07:02 +02:00
Christoph Oelckers
ccfb2ac233
- fixed quake checks.
2016-04-01 12:58:46 +02:00
Christoph Oelckers
8680391e0b
- floatified the global view variables.
...
The software renderer still uses internal copies of the fixed point version.
2016-04-01 12:22:16 +02:00
Christoph Oelckers
a5e14425aa
- fixed angular interpolation of skybox viewpoints.
2016-04-01 11:55:37 +02:00
Christoph Oelckers
a27181cb0b
- partial adjustments.
...
No point changing all the viewx/y/z stuff when that is about to get floatified next.
2016-03-31 21:42:27 +02:00
Christoph Oelckers
466c4c75df
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/actor.h
2016-03-31 21:24:26 +02:00
Christoph Oelckers
a93296be80
- removed most of the deleted function declarations.
2016-03-31 21:20:45 +02:00
Christoph Oelckers
6445615b5d
- fixed the sound location calculations which got somewhat broken by the constant changes during the conversion.
2016-03-31 21:13:32 +02:00
Christoph Oelckers
8f5ac9b73f
- fixed a float/fixed mixup in R_PointOnSideSlow.
2016-03-31 17:44:05 +02:00
Christoph Oelckers
9412ce45d6
- floatified portals.cpp and most of p_maputl.cpp.
2016-03-31 16:52:25 +02:00
Christoph Oelckers
6b065b8074
- floatified FBoundingBox.
2016-03-31 10:38:54 +02:00
Christoph Oelckers
c6ada2397c
- adjustments.
2016-03-31 09:50:59 +02:00
Christoph Oelckers
a5c4e2dab3
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_utility.h
2016-03-31 09:24:41 +02:00
Christoph Oelckers
8fd76f0c8a
- floatified bmaporgx and bmaporgy, allowing to remove the gross overflow prevention hacks present in the blockmap code.
2016-03-31 09:23:14 +02:00
Christoph Oelckers
f41afde545
- floatified line_t::bbox.
2016-03-31 01:22:49 +02:00
Christoph Oelckers
7a2c8fdc1c
- floatified po_man.cpp and the remaining bits in p_lnspec.cpp
2016-03-31 00:41:21 +02:00
Christoph Oelckers
1666418510
- fixed incomplete interpolation floatification.
2016-03-30 20:05:29 +02:00
Christoph Oelckers
cf44d2e37a
- adjustments.
2016-03-30 20:01:44 +02:00
Christoph Oelckers
251172c7f0
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_data/r_interpolate.cpp
2016-03-30 18:24:22 +02:00
Christoph Oelckers
d54a2364b9
- floatified r_interpolate.cpp.
2016-03-30 17:11:31 +02:00
Christoph Oelckers
27bad66f61
- floatified the remaining parts of p_sector.cpp.
2016-03-30 16:51:19 +02:00
Christoph Oelckers
66929cbaff
- floatified p_trace, p_slopes and p_udmf.cpp.
...
- major cleanup of unused code.
2016-03-30 16:30:22 +02:00
Christoph Oelckers
ced30e7bbb
- fixed a few oversights.
...
- switched p_buildmap to use the floating point variants of the linedef/sector init methods.
2016-03-30 11:25:02 +02:00
Christoph Oelckers
c2e2910399
- fixed copy/paste error in P_GetFriction resulting in incorrect calculation of movefactor.
2016-03-30 10:08:06 +02:00
Christoph Oelckers
0eb35d6c6e
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/dobjtype.cpp
# src/dobjtype.h
2016-03-30 09:47:25 +02:00
Christoph Oelckers
77f2530236
- floatified the sector plane movers and removed some of the ZatPoint conversion cruft.
2016-03-30 09:41:46 +02:00
Randy Heit
1648a71e45
Add support for Name and String types to ACS's GetUserVariable
...
- Reading one of these types will copy its value into the global ACS string
table and return the index.
2016-03-29 22:49:12 -05:00
Randy Heit
b37ef48e99
Allow ACS's GetUserVariable to access non-user variables
...
- Since DECORATE already allows reading all declared variables in a class,
where's the utility in keeping this restriction in ACS?
- Variables must still be numeric types.
- SetUserVariable is still restricted to user variables only.
2016-03-29 22:42:04 -05:00
Randy Heit
35121544b4
Add float support to ACS's Get/SetUserVariable functions
...
- "Support" means that setting one will convert from fixed point to
floating point, and reading one will do the reverse.
2016-03-29 22:41:38 -05:00
Randy Heit
b6e3358b1c
Add A_SetUserVarFloat and A_SetUserArrayFloat
2016-03-29 22:41:37 -05:00
Randy Heit
299019ea15
Add GetValueFloat() for numeric PTypes
2016-03-29 22:41:37 -05:00
Randy Heit
feb5ab31cc
Add double variants of SetValue() for numeric PTypes
2016-03-29 22:05:25 -05:00
Randy Heit
e2711a74e7
Add float user vars for DECORATE
...
- PClass::Extend now takes alignment into consideration.
2016-03-29 21:48:57 -05:00
Christoph Oelckers
cadd8f2d4a
- made adjustments for changes to linedef delta.
2016-03-29 16:31:58 +02:00
Christoph Oelckers
e4d68e17fd
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
2016-03-29 16:14:06 +02:00
Christoph Oelckers
ff0b371582
- made the linedef deltas private and only accessible through access functions.
...
Now everything should be in place to remove the fixed point math from the rest of the play code.
2016-03-29 16:13:16 +02:00
Christoph Oelckers
59bb003285
- GL adjustments for plane changes.
2016-03-29 13:45:50 +02:00
Christoph Oelckers
37e6429cf3
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_data/r_interpolate.cpp
2016-03-29 13:12:15 +02:00
Christoph Oelckers
84d547adfb
- fixed: The check if a line is in range of a bounding box must be exclusive.
...
Unfortunately I picked the one incorrect version of this check (from A_PainShootSkull) when moving it to an inline function.
2016-03-29 13:10:15 +02:00
Christoph Oelckers
25f5e8449a
- replaced all direct access to sector plane coefficients with wrapper functions.
2016-03-29 12:40:41 +02:00
Christoph Oelckers
a87c292f10
- adjustments to GL code for texture scale and vertex coordinate access.
2016-03-29 11:26:33 +02:00
Christoph Oelckers
ae14268989
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_utility.cpp
2016-03-29 10:09:03 +02:00
Christoph Oelckers
c7ae4688a3
- replaced all direct access to vertex coordinates with wrapper functions.
...
So that code replacement can be done piece by piece and not all at once.
2016-03-29 10:07:06 +02:00
Christoph Oelckers
8d071f85b3
- use float vectors for prediction.
2016-03-29 02:06:05 +02:00
Christoph Oelckers
c776a0fb54
- floatification of p_teleport and p_switch.cpp.
2016-03-29 00:31:59 +02:00
Christoph Oelckers
0a238e7e18
Merge branch 'master' into floatcvt
2016-03-28 22:53:26 +02:00
Christoph Oelckers
a92de84cf7
- this stuff should not have been saved...
2016-03-28 22:53:10 +02:00
Christoph Oelckers
0283df4c42
- restored floating point pusher code.
2016-03-28 22:47:45 +02:00
Christoph Oelckers
9145181b79
Merge branch 'master' into floatcvt
2016-03-28 22:25:36 +02:00
Christoph Oelckers
8c3c18b008
- forgot to add this...
2016-03-28 22:25:12 +02:00
Christoph Oelckers
d87f861e87
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 22:23:41 +02:00
Christoph Oelckers
263051a77b
- removed a few unnecessary #includes.
2016-03-28 22:20:25 +02:00
Christoph Oelckers
59920095af
- separated pushers into their own file.
2016-03-28 21:57:22 +02:00
Christoph Oelckers
05504b65d2
- floatified p_scroll.cpp
...
While testing this it became clear that with the higher precision of doubles it has to be avoided at all costs to compare an actor's z position with a value retrieved from ZatPoint to check if it is standing on a floor. There can be some minor variations, depending on what was done with this value. Added isAbove, isBelow and isAtZ checking methods to AActor which properly deal with the problem.
2016-03-28 21:04:46 +02:00
Christoph Oelckers
a46a4c81b1
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_lnspec.cpp
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 17:46:19 +02:00
Christoph Oelckers
fd46909b1a
- made partial floarting point aliases for EV_DoCeiling so that all the calls in p_lnspec.cpp match the master branch for merging.
2016-03-28 17:41:13 +02:00
Christoph Oelckers
b5f333798e
- moved all scroller related code into its own file, including the DScroller class definition.
2016-03-28 17:27:55 +02:00
Christoph Oelckers
a99ebc2356
- floatified p_sight.cpp.
2016-03-28 16:22:21 +02:00
Christoph Oelckers
5e1c79c050
- floatified the rest of p_mobj_cpp and removed a large part of the conversion cruft from the headers that was needed to keep the code compileable.
2016-03-28 12:03:07 +02:00
Christoph Oelckers
2fff7005ad
- floatified more of p_mobj.cpp
2016-03-28 10:01:24 +02:00
Christoph Oelckers
217414cb1c
-floatified P_ExplodeMissile and P_XYMovement
2016-03-28 00:55:57 +02:00
Christoph Oelckers
7b256dda3d
- did the last remaining bits in p_map.cpp.
2016-03-27 22:49:59 +02:00
Christoph Oelckers
8b4a33794a
- floatified P_ChangeSector.
2016-03-27 22:35:58 +02:00
Christoph Oelckers
fe744a589c
- floatified P_RadiusAttack.
2016-03-27 21:11:17 +02:00
Christoph Oelckers
0baaa3cf63
- floatified P_LineAttack, P_TraceBleed and P_UseLines.
2016-03-27 20:58:01 +02:00
Christoph Oelckers
eae6f7e9ea
- floatified P_AimLineAttack.
2016-03-27 17:58:18 +02:00
MajorCooke
4eee1c7af1
Fixed: A_FaceMovementDirection was backwards.
2016-03-27 14:21:07 +02:00
Christoph Oelckers
228c447a02
- fixed: A_FireCustomMissile used the player position as offset.
2016-03-27 14:20:14 +02:00
Christoph Oelckers
6ab95da2fc
- fixed copy/paste coordinate screwup in moving camera code.
2016-03-27 14:11:46 +02:00
Christoph Oelckers
23d311dd04
- floatified P_CheckSlopeWalk. It should be noted that this function is one place where full double precision is too high and needed to be truncated.
2016-03-27 14:07:35 +02:00
Christoph Oelckers
26ff2f73d7
- floatified P_TryMove and the sliding and bouncing code.
2016-03-27 13:29:58 +02:00
Christoph Oelckers
1877eca2ab
- more floatification of p_map, plus some stuff used in those functions.
2016-03-27 01:06:54 +01:00
Christoph Oelckers
6e93264016
- started floatification on p_map.cpp.
2016-03-26 23:19:38 +01:00
Christoph Oelckers
00ea8662b8
- floatification of p_enemy and p_interaction.cpp.
2016-03-26 20:59:35 +01:00
Christoph Oelckers
0c39bdd04c
- floatified texture scale values.
2016-03-26 13:37:44 +01:00
Christoph Oelckers
dabed04d2a
- floatification of p_3dfloors, p_3dmidtex and p_acs.cpp plus some leftovers.
...
- removed all references to Doom specific headers from xs_Float.h and cmath.h.
2016-03-26 12:36:15 +01:00
Christoph Oelckers
35bb686281
- floatification of sector_t::centerspot.
2016-03-26 09:38:58 +01:00
Christoph Oelckers
30b57fd7b0
- floatification of G_CheckSpot and a few other things.
2016-03-26 09:28:00 +01:00
Christoph Oelckers
696fde69b8
- moved the bot support code from AActor::Tick to a subfunction in the bot sources. No need to pollute a main game file with this stuff.
2016-03-26 01:30:28 +01:00
Christoph Oelckers
c2e7858e05
- looks like the oldz parameter in UpdateWaterLevel is not needed at all...
2016-03-26 01:13:36 +01:00
Christoph Oelckers
558e04cb99
- safety commit.
2016-03-26 01:03:02 +01:00
Christoph Oelckers
e42b0171b3
- floatification of bot code.
2016-03-26 00:34:56 +01:00
Christoph Oelckers
8e13d13916
- floatified the automap.
2016-03-25 21:54:59 +01:00
Christoph Oelckers
fb8e03d5eb
- floatified FLineOpening.
...
- some smaller fixes.
2016-03-25 18:43:37 +01:00
Christoph Oelckers
2cf3b20ea8
- floatified the last remaining AActor member variable 'damagemultiply'.
2016-03-25 16:30:31 +01:00
Christoph Oelckers
1125101b37
- floatified AActor::Prev plus the stuff using it.
...
- rewrote some coordinate functions in AActor to use real float math instead of converting back and forth between float and fixed.
2016-03-25 16:25:25 +01:00
Christoph Oelckers
2b33601d00
- The fixed_t type for the VM also is not needed any longer and was removed.
2016-03-25 15:50:39 +01:00
Christoph Oelckers
8cdfbeea01
- made AActor::__pos a genuine float vatiable.
2016-03-25 15:43:20 +01:00
Christoph Oelckers
b958a5d748
- adjustments in GL code.
2016-03-25 15:14:09 +01:00
Christoph Oelckers
ad74493d5e
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
2016-03-25 14:56:40 +01:00
Christoph Oelckers
3a598d672e
- removed the angle_t type from the VM, now that nothing in the interface requires it anymore.
2016-03-25 14:55:01 +01:00
Christoph Oelckers
8b6b5e7b1c
- preparation for upcoming work: rename the fixed point versions of PosRelative.
2016-03-25 14:18:50 +01:00
Christoph Oelckers
a3b687bc4e
- renamed PARAM_DANGLE macros to PARAM_ANGLE, now that the old angle_t type is no longer used in the VM interface.
2016-03-25 13:23:07 +01:00
Christoph Oelckers
21340c6eba
- floatified the rest of thingdef_codeptr.cpp and got rid of the remaining fixed_t and angle_t parameters in VM-accessed function. The VM should now be free of those types completely.
2016-03-25 12:57:22 +01:00
Christoph Oelckers
b70fee8ed8
- changed the means how to control the slowdown of crushing ceilings encountering an obstacle and corrected a few mistakes in the implementation
...
* there is a new crushing mode 3, which means that the crusher will always slow down if it hits an obstacle.
* crushing mode 1 (Doom mode) will never slow down.
* crushing mode 0 (compatibility) will only slow down for the specials that did so before, and only if both up and downspeed are 8 and the game is not Hexen. The following specials are affected:
* Ceiling_LowerAndCrush
* Ceiling_LowerAndCrushDist
* Ceiling_CrushAndRaise
* Ceiling_CrushAndRaiseA
* Ceiling_CrushAndRaiseDist
* Ceiling_CrushAndRaiseSilentA
* Ceiling_CrushAndRaiseSilentDist
* Generic_Crusher was fixed to act like in Boom: Not only a speed value of 8 will cause slowdown, but all speed values up to 24.
* Hexen crushing mode will never cause slowdowns because Hexen never did this. (which also makes no real sense, considering that the crusher waits for the obstacle to die.)
2016-03-25 02:08:22 +01:00
Christoph Oelckers
f76524f459
- some cleanup on P_RailAttack plus a bit of parameter floatification in thingdef_codeptr.cpp
2016-03-25 00:59:14 +01:00
Christoph Oelckers
4d22b346f4
- floatified the remaining fixed point variables accessible through DECORATE. PROP_FIXED_PARAM is no longer used anywhere.
2016-03-24 23:50:29 +01:00
Christoph Oelckers
7a26318bf0
- floatified friction.
2016-03-24 22:50:03 +01:00
Christoph Oelckers
6c9e5b03c8
- floatified meleerange, pushfactor and radiusdamagefactor,
2016-03-24 21:31:04 +01:00
Christoph Oelckers
e077510773
- floatified MaxTargetRange and MeleeThreshold.
2016-03-24 20:56:59 +01:00
Christoph Oelckers
c66ff5939d
- floatified AActor::bouncefactor and wallbouncefactor.
2016-03-24 20:43:35 +01:00
Christoph Oelckers
8add60ed38
- fixed: Getting the nearest ceiling height failed for height-less actors.
2016-03-24 19:24:33 +01:00
MajorCooke
a9ef8cc637
Fixed A_QuakeEx falloff not working properly.
2016-03-24 19:04:51 +01:00
Christoph Oelckers
4874fe2361
Merge branch 'master' into floatcvt
2016-03-24 18:32:47 +01:00
MajorCooke
c8ba6f0611
Fixed quake falloff not working in floatcvt branch.
2016-03-24 18:30:23 +01:00
Christoph Oelckers
75bcec411e
- fixed: The portal blockmap's AddLineIntercepts methods needs to check the block's range.
2016-03-24 18:26:27 +01:00
Christoph Oelckers
deafa0bce0
- fixed: The 'open door in 5 minutes sector type had the order of parameters wrong, due to a bad function prototype.
2016-03-24 18:01:01 +01:00
Christoph Oelckers
59406c1273
- adjust.
2016-03-24 16:40:15 +01:00
Christoph Oelckers
f568a35756
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/win32/fb_d3d9.cpp
2016-03-24 16:38:09 +01:00
Christoph Oelckers
41387622f2
- changed angle parameter of FillSimplePoly.
2016-03-24 16:36:43 +01:00
Christoph Oelckers
5bf806e478
- renamed some fixed point stuff in the texture composition code.
2016-03-24 16:16:45 +01:00
Christoph Oelckers
37bb816850
- some adjustments for voxels.
2016-03-24 16:10:17 +01:00
Christoph Oelckers
86d1b2955a
- floatified most of r_data (The interpolations cannot be done yet.)
2016-03-24 14:11:41 +01:00
Christoph Oelckers
379d5bc0c5
- fixed some issues with dynamic lights caused by the floatification changes
2016-03-24 13:38:37 +01:00
Christoph Oelckers
609defe078
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_defs.h
2016-03-24 12:48:05 +01:00
Christoph Oelckers
f62c988a0e
- adjustments for next update.
2016-03-24 12:47:08 +01:00
Christoph Oelckers
09d8b4af80
- changed I_GetTimeFrac to return a double instead of a fixed_t.
2016-03-24 12:00:21 +01:00
Christoph Oelckers
c83ad9df6c
- removed special treatment for not using stdint.h with MSVC. Current compiler versions have this file.
...
- removed use of finesine for creating the player backdrop for the menu display. This mostly uses the code from the old 2.0 floating point version but fixes some of the constants in there which were not correct.
2016-03-24 11:30:11 +01:00
Christoph Oelckers
eac0bfeaeb
- removed fixed_t and associated utility macros from FraggleScript code.
2016-03-24 09:16:35 +01:00
Christoph Oelckers
4a79602325
- floatification of g_shared.
...
- rewrote FraggleScript's movecamera function because it was utterly incomprehensible.
2016-03-24 01:46:11 +01:00
Christoph Oelckers
6557f3b8c8
- floatified quake and weapon code
2016-03-23 20:45:48 +01:00
Christoph Oelckers
2dbd79cc8d
- floatified the return data from Trace().
2016-03-23 18:07:04 +01:00
Christoph Oelckers
70d87f94f2
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_acs.cpp
# src/r_utility.cpp
# src/thingdef/thingdef_codeptr.cpp
# src/version.h
2016-03-23 14:15:24 +01:00
MajorCooke
b16e696157
- Added offset and angle parameters to A_CheckBlock.
...
- Includes 2 flags, affixed by CBF_: AbsolutePos, and AbsoluteAngle.
- AbsolutePos: Absolute position of where to check.
- AbsoluteAngle: Angle parameter is used as is, not added onto the actor's current angle.
2016-03-23 14:05:31 +01:00
Christoph Oelckers
0d1fbcf65f
- flattened the following commits by Major Cooke:
...
* Added falloff parameter to A_QuakeEx.
- Treated just like A_Explode's 'fullradiusdamage' parameter, where the quake will fall off from this distance on out to the edge. Default is 0, which means no falloff.
- Credits to MaxED and Michaelis for helping.
* - Added HighPoint parameter to QuakeEx.
- Allows fine tuning of where the quake's maximum or minimum occurs, in tics. This must be a range between [1, duration).
- For up or down scaling quakes, this sets the quake to reach maximum sooner or start minimizing later.
- For both, this indicates when the strongest will occur. Default is 0, or in the middle.
The original commits were nearly impossible to find in the convoluted commit tree, so I think it's preferable to have one clean commit instead.
2016-03-23 14:03:10 +01:00
Christoph Oelckers
7c87479eea
- parameter rework of several spawning functions.
2016-03-23 13:31:12 +01:00
Christoph Oelckers
f60eac8dc0
- floatified FMapThing, dropoffz and GetBobOffset
2016-03-23 12:21:52 +01:00
Christoph Oelckers
f8cf4bcf3d
- trimmed down the AActor Spawn interface and removed all non-float variants.
...
This still needs some cleanup in a few calling functions.
2016-03-23 10:42:41 +01:00
Christoph Oelckers
2a0d5a621a
- floatified some stuff in g_shared.
...
Note: This commit does not handle z-spawn positions correctly.
2016-03-23 00:53:09 +01:00
Christoph Oelckers
eadecaf407
- adjustments to GL renderer for decal and alpha changes.
...
- handle portals in sprite lighting, but do not use the playsim's utility functions for efficiency.
2016-03-22 23:19:21 +01:00
Christoph Oelckers
eee5143b26
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_defs.h
2016-03-22 22:12:51 +01:00
Christoph Oelckers
301f5abadc
- floatified the decal code.
2016-03-22 22:07:38 +01:00
Christoph Oelckers
6b3c0ecbd3
- floatified viewheight variables and some related code.
2016-03-22 18:06:08 +01:00
Christoph Oelckers
af427b80bd
- did some cleanup and consolidation on damage factor code while converting it all to floating point.
...
- made armor properties floating point.
2016-03-22 16:35:41 +01:00
Christoph Oelckers
1eb106e2c5
- floatification of some alpha parameters.
2016-03-22 13:35:16 +01:00
Christoph Oelckers
bd7df76059
- fixed compilation of AActor::alpha
2016-03-22 12:56:20 +01:00
Christoph Oelckers
19b85f806e
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/actor.h
2016-03-22 12:44:40 +01:00
Christoph Oelckers
a652c061f6
- converted g_strife to full floating point use, except the floor height changing stuff in A_LightGoesOut.
2016-03-22 12:42:27 +01:00
Christoph Oelckers
5a4b974187
- float stuff in g_raven.
...
- fixed some problems in previous commits.
2016-03-22 02:29:43 +01:00
Christoph Oelckers
f3d6ca04fc
- some floating point changes in t_func.cpp
2016-03-22 01:19:24 +01:00
Christoph Oelckers
cf79e1cb6d
- fixed some leftover fixed point remnants in g_hexen.
...
- made the full-coordinate version of P_SpawnPlayerMissile use float coordinates.
2016-03-22 00:30:56 +01:00
Christoph Oelckers
4155e84a1c
- made player_t::crouchoffset and FPlayerStart's coordinates doubles and added a float version of divline_t so that I could complete the conversion of Hexen's game code.
...
- consolidated the actor based damage factor code which was repeated multiple times in various damage inflicting functions.
2016-03-22 00:06:58 +01:00
Christoph Oelckers
c830801da3
- g_hexen almost done except for 3 things that require more extensive changes.
2016-03-21 22:20:10 +01:00
Christoph Oelckers
f1602882c8
- added a no-parameter Spawn function for inventory items that never show on the map, because the coordinate and replacement parameters will always be 0 for them.
...
- started converting g_hexen.
Most importantly this removes CHolyWeave as it is just a specialized version of A_Weave with far more convoluted use of parameters.
2016-03-21 14:00:05 +01:00
Christoph Oelckers
4e60ea0252
- made AActor::alpha a floating point value
...
- replaced some uses of FRACUNIT with OPAQUE when it was about translucency.
- simplified some overly complicated translucency multiplications in the SBARINFO code.
2016-03-21 12:18:46 +01:00
Christoph Oelckers
b29058c1ab
- converted the last fixed point remnants in g_heretic.
2016-03-21 10:24:52 +01:00
Christoph Oelckers
b54b34a512
- adjustments for floating point changes.
2016-03-21 02:57:02 +01:00
Christoph Oelckers
48afdd7dcb
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/CMakeLists.txt
# src/actor.h
2016-03-21 01:34:39 +01:00
Christoph Oelckers
904a027bd2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-21 01:31:32 +01:00
Christoph Oelckers
11e613f578
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/g_doom/a_revenant.cpp
2016-03-21 01:28:50 +01:00
Christoph Oelckers
a66f9cbf5a
- fixed: angular spread for Strife's assault gun was wrong,
2016-03-21 01:26:06 +01:00
Christoph Oelckers
2d2eeb49f0
- make weapon sprite offsets floats.
2016-03-21 01:16:34 +01:00
Christoph Oelckers
1ff4bb419c
- made AActor::gravity and FMapThing::gravity floats.
2016-03-21 00:51:19 +01:00
Christoph Oelckers
7ebb96f15c
- use one of the new floating point special variables to store the portal plane height of the skybox things.
2016-03-21 00:05:44 +01:00
Christoph Oelckers
289cdfbefd
- made AActor::floorclip a double.
2016-03-20 23:42:27 +01:00
Randy Heit
f38dbc5055
Use LHS/RHS matching for some simple SAFE_APPENDs
2016-03-20 15:57:02 -05:00
Randy Heit
071a5718cc
Use /*X-overwrites-A*/ wherever X = A; appears in the grammar
2016-03-20 15:57:01 -05:00
Randy Heit
c0dd39ffd4
Use %token_class to define intconst
2016-03-20 15:57:01 -05:00
Randy Heit
260cf6848f
Use LHS and RHS label matching in the grammars where possible
2016-03-20 15:57:01 -05:00
Randy Heit
baa6dc0568
Add zcc-parse.c and .h to the ZScript project folder
2016-03-20 15:57:00 -05:00
Christoph Oelckers
afa5f22b31
- added two floating point special variables, because the two existing ones are integers and unusable for storing doubles.
2016-03-20 21:51:09 +01:00
Christoph Oelckers
cff8e51811
- converted AActor::height to double.
2016-03-20 20:55:06 +01:00
Randy Heit
2a394d0cb8
Do not copy lemon grammars to the output directory
...
- Having my edits to the grammar disappear because Visual Studio had
opened the copy instead of the original was super annoying. Using the -C
option with Lemon, this problem is avoided because there are no copies
to worry about.
2016-03-20 14:34:44 -05:00
Christoph Oelckers
8362c6a856
- conversion of floorz to double.
2016-03-20 19:52:35 +01:00
Randy Heit
1c592c9601
Lemon update 2009-11-03 19:18:32 on branch trunk
...
- Enhancements to lemon to generate more compact action tables and to avoid making array bounds tests that can never fail on action table calculations. (user: drh)
- Update zcc-parse.lemon: YY_SZ_ACTTAB is now YY_ACTTAB_COUNT
2016-03-20 13:06:43 -05:00
Randy Heit
288f01a0c2
GCC fixes for zcc_compile.(cpp|h)
2016-03-20 11:34:41 -05:00
Christoph Oelckers
b81080ce08
- converted most of g_heretic to float.
2016-03-20 16:51:42 +01:00
Christoph Oelckers
0bdb65c477
- made AActor::radius a double.
...
This means that all files in g_doom are now fully converted.
2016-03-20 15:04:13 +01:00
Christoph Oelckers
ec58e70078
- replaced ceilingz with a floating point variable, also in FCheckPosition.
2016-03-20 13:32:53 +01:00
Christoph Oelckers
6e2421bd37
- use a set of specific conversion functions to convert from and to ACS script variables so that these cases do not get caught when searching for fixed point math in the source.
2016-03-20 12:37:21 +01:00
Christoph Oelckers
ada5097e34
- converted scale variables in AActor, FMapThing and skin to float.
2016-03-20 12:13:00 +01:00
Christoph Oelckers
5875e91f39
- finished conversion of most of g_doom.
...
Only things left here are accesses to AActor::ceilingz and radius in A_PainShootSkull, plus scaleX and scaleY in the ScriptedMarine sprite setting code.
Most is still using wrapper functions around the fixed point versions.
2016-03-20 10:52:10 +01:00
Christoph Oelckers
f1d2c7755a
- fixed z-offset handling of A_SkelMissile.
...
I can't believe I missed this for more than 10 years, considering that A_CustomMissile explicitly implements this case:
It makes a crucial difference whether P_SpawnMissileZ is used or the actual z-position is temporarily changed.
Reverted this function to the position changing method of the original.
2016-03-20 02:08:05 +01:00
Christoph Oelckers
a4f5846c7c
- replaced all uses of P_ThrustMobj with the already implemented AActor::Thrust method and deleted this function.
...
- for quakes, making a distinction between circular and elliptic thrust is pointless, so the checks were removed and both paths consolidated. The elliptic code will do exactly the same for circles and there isn't even a performance difference.
2016-03-20 01:25:47 +01:00
Christoph Oelckers
a43dccaa86
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/g_hexen/a_heresiarch.cpp
# src/g_shared/a_quake.cpp
2016-03-20 00:56:09 +01:00
Christoph Oelckers
51b05d331d
- replaced AActor::vel and player_t::Vel with a floating point version.
...
- Converted P_MovePlayer and all associated variables to floating point because this wasn't working well with a mixture between float and fixed.
Like the angle commit this has just been patched up to compile, the bulk of work is yet to be done.
2016-03-20 00:54:18 +01:00
Christoph Oelckers
0ef9ee23b1
- fixed: When the intensity values of DEarthquake were converted to fixed point, its uses in DEarthquake::Tick were not changed along.
2016-03-19 12:01:10 +01:00
Christoph Oelckers
2adf8d524c
- fixed: A_SpawnFizzle used the 'speed' property incorrectly.
...
This is now a fixed point value, even for monsters, so using it as a modulus on a random value cannot possibly work.
2016-03-19 09:36:20 +01:00
Randy Heit
aaae9f2e05
Store known but uncompiled nodes in the symbol table
...
- Don't bother keeping track of uncompiled nodes in a special table. Use
the regular symbol table instead. This should in the future make
compiling nodes referenced deeper than (and before) their definitions
fairly straightforward.
- Also, break up the compiler's Message() function into Warn() and Error()
and get rid of zcc_errors.h. I can't really see having a set of error
numbers being useful.
2016-03-18 19:34:32 -05:00
Christoph Oelckers
51a98d0e5d
- cleaned up the mugshot code's angle checks (I hope these are correct because the old code was so confusing...)
2016-03-18 10:08:18 +01:00
Christoph Oelckers
f332a098cd
- reworked calls to P_SpawnPlayerMissile, P_AimLineAttack and P_LineAttack to use floating point angles.
2016-03-18 00:43:05 +01:00
Christoph Oelckers
39de225fa7
- restored old FaceMovementDirection.
2016-03-17 00:46:12 +01:00
Christoph Oelckers
aa09cbdada
- renamed some functions and fixed a few more conversion errors.
2016-03-17 00:07:37 +01:00
Christoph Oelckers
ec3be2531a
Merge branch 'master' into float
...
# Conflicts:
# src/g_hexen/a_fighterplayer.cpp
2016-03-16 22:45:55 +01:00
Christoph Oelckers
9b134a78e3
- fixed: The TEXTURES parser wanted a redundant comma after parsing a color.
2016-03-16 22:42:41 +01:00
Christoph Oelckers
9b1442915f
- fixed: AdjustPlayerAngle should not use the angle that gets passed in the attack target struct. This is the actual angle of the attack but this function needs to adjust to the actual direction between player and victim.
2016-03-16 22:38:08 +01:00
Christoph Oelckers
b140d71c49
- several fixes.
2016-03-16 22:29:35 +01:00
alexey.lysiuk
b20956e207
Made FMOD Ex stream buffer size customizable
...
Use snd_streambuffersize to set size of stream buffer in KB, default is 64
See http://forum.zdoom.org/viewtopic.php?t=51230
2016-03-16 22:15:13 +02:00
Christoph Oelckers
29a7fe33f3
- fixed some minor issues found during reviewing the code.
2016-03-16 14:10:13 +01:00
Christoph Oelckers
671291227e
- first stage of converting actor angles to float complete
...
Patched up everything so that it compiles without errors again. This only addresses code related to some compile error. A large portion of the angle code still uses angle_t and converts back and forth.
2016-03-16 12:41:26 +01:00
alexey.lysiuk
91ad7f5f2e
Fixed broken Strife conversations
...
Check for in-combat flag was inverted
See http://forum.zdoom.org/viewtopic.php?t=51224
2016-03-16 12:37:41 +02:00
alexey.lysiuk
1f64d7ee22
Fixed wrong starting frame for wipe animation
...
Menu graphics appeared in starting frame with hardware renderer only
Software renderer was not affected as it reads pixels from front buffer instead of back buffer like OpenGL counterpart did
See http://forum.drdteam.org/viewtopic.php?t=6857
2016-03-15 11:49:56 +01:00
Christoph Oelckers
c64eee5b15
Merge branch 'master' into float
...
# Conflicts:
# src/g_heretic/a_hereticweaps.cpp
# src/p_map.cpp
# src/p_mobj.cpp
# src/p_things.cpp
# src/portal.cpp
2016-03-15 00:16:13 +01:00
Christoph Oelckers
f4f489b33d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-14 22:02:58 +01:00
Blue-Shadow
a07f264782
Added a NULL check for activator in Warp().
2016-03-14 20:52:44 +03:00
Christoph Oelckers
d07bf08e56
- fixed: 3D floor ceiling calculation didn't take into account that an actor's top may just be slightly inside a 3D floor and returned the next highest one instead.
...
For floors this change is deliberately not done because it might cause problems with the movement code.
2016-03-14 16:38:17 +01:00
alexey.lysiuk
801ac9128a
Replaced comparisons with assignments in 3D floor tracing
...
No more 'equality comparison result unused' warnings
2016-03-14 01:25:57 +01:00
alexey.lysiuk
6c94c49d6f
Removed extra Printf() conversion specification
...
No more 'more % conversions than data arguments' warning
2016-03-14 01:25:56 +01:00
Christoph Oelckers
df63dd288a
- fixed: Visual-only portals could initiate a teleport.
2016-03-13 21:55:47 +01:00
Christoph Oelckers
448e66f19b
- fixed: P_PointInSectorBuggy must handle the single-subsector special case.
2016-03-13 16:57:02 +01:00
Christoph Oelckers
51ab60178a
- added portal overlays to automap.
2016-03-13 12:33:58 +01:00
Braden Obrzut
93be5aca05
- Fixed: Modern versions of GCC on PowerPC inserted padding to the end of pragma packed structures.
...
- Worked aorund modern GCC bug where C++ exceptions in Objective-C++ code would result in an ICE (bug is already on their tracker, but I doubt it will be fixed unless I decide to dig into the issue myself).
- Turn off fused floating point instructions since these can cause slight deviations in floating point code.
- Use -static-libgcc when compiling on the Mac with GCC since we need to use a custom version of GCC to do so now.
- Note: ZDoom will currently still crash on exit on PowerPC since it seems to be deciding that NameManager needs to be destructed before the console commands.
2016-03-13 01:14:08 -05:00
Christoph Oelckers
0040b272ed
- fixed portal counting.
...
This was creating a large number of unused portal groups.
2016-03-13 02:54:55 +01:00
Christoph Oelckers
8b4f4d06ad
Merge branch 'zmaster'
2016-03-13 02:32:41 +01:00
Christoph Oelckers
b73d6e42af
- fixed: FMultiBlockLinesIterator must reset the current sector when doing the final up and downwards check from the start position.
2016-03-13 02:31:47 +01:00
Randy Heit
8a03b99b9c
Use ScriptMessage to warn about missing patches in a TEXTURES texture
2016-03-12 19:23:49 -06:00
Randy Heit
4a295dfa3d
Accept constant definitions in structs.
...
- We already need to handle them for enums, so there's really nothing to
be gained by not accepting constant definitions directly.
2016-03-12 19:11:34 -06:00
Christoph Oelckers
8c027aef8b
- added NULL pointer check to portal rotation calculation function.
2016-03-12 22:38:46 +01:00
Christoph Oelckers
0a92138edf
- fixed: The portal link table was not created when there were no sector portals.
...
- fixed: P_TryMove could loop endlessly over a list of static portals when there was an error during portal creation.
# Conflicts:
# src/gl/models/gl_models.cpp
# src/gl/scene/gl_sprite.cpp
2016-03-12 20:36:38 +01:00
Christoph Oelckers
ae1571158c
- fixed: The portal link table was not created when there were no sector portals.
...
- fixed: P_TryMove could loop endlessly over a list of static portals when there was an error during portal creation.
2016-03-12 17:43:36 +01:00
Christoph Oelckers
f0192a2349
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-12 16:55:59 +01:00
Christoph Oelckers
651817fad7
- made AActor::velx/y/z and player_t::velx/y fixedvec's.
...
(This commit is 95% search & replace with only a few places where velz was used as a local variable changed.)
2016-03-12 14:11:43 +01:00
Christoph Oelckers
4116719a5a
- fixed: P_CheckSplash shifted the fixed_t distance another 16 bits to the left.
2016-03-12 12:34:43 +01:00
alexey.lysiuk
c7c2beee2c
Fixed A_Blast parameter type and default values
...
Default values for strength and speed parameter are fixed type, not integers
Also strength parameter needs to have floating point type
2016-03-12 13:11:46 +02:00
Christoph Oelckers
161d03231a
- added custom math routines for reliability.
2016-03-11 15:45:47 +01:00
Christoph Oelckers
7edd5e2dac
renamed 'exp' in xlat_parser.y to 'expr' because this gets in the way of searching for calls of the exp(x) function.
2016-03-11 13:43:17 +01:00
Christoph Oelckers
9843f16cc0
- some rework of vectors.h, mostly to remove all those silenced double->float conversions.
2016-03-10 22:36:28 +01:00
Christoph Oelckers
f8ebfb541e
- use typedefs for TVector<double> etc.
...
(Better have this out of the way before messing around with this stuff...)
2016-03-10 20:45:45 +01:00
Randy Heit
2e588c2099
Add missing SEMICOLON to declarator_no_fun
2016-03-10 10:33:19 -06:00
Christoph Oelckers
7de2139e9f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-10 15:15:59 +01:00
Christoph Oelckers
95d36670cf
- that portal check was not correct.
2016-03-10 15:15:37 +01:00
Christoph Oelckers
3d367d585d
- did some profiling which revealed that P_PointInSector was called needlessly often. Did some optimization to the MultiBlock iterators to avoid this problem.
2016-03-10 14:22:18 +01:00
alexey.lysiuk
3063312f7f
Fixed resurrection distance check
...
See http://forum.zdoom.org/viewtopic.php?t=51177
2016-03-10 10:25:44 +02:00
Christoph Oelckers
a605913f42
- fixed: When passing through a teleporter or portal that alters the angle, it is not sufficient that P_XYMovement adjusts the position in case a second P_TryMove call is needed, it must also change the precalculated movement vector.
2016-03-09 12:49:49 +01:00
alexey.lysiuk
7134f53638
- fixed: partial transparency wasn't taken into account
...
Smoothing of edges could mark textures as non-transparent when hqNx upscale filter is used
See http://forum.drdteam.org/viewtopic.php?t=6812
2016-03-09 13:17:42 +02:00
Christoph Oelckers
40ceb0fef6
- fixed: NextHighestCeilingAt and NextLowestFloorAt need to check if a 3D floor is outside the sector's boundaries before reporting it as the best match.
2016-03-09 12:00:07 +01:00
Christoph Oelckers
b3f7a57518
- yet another case of adding a workaround to preserve a side effect in Doom's original movement code that's bound to be inadvertently exploited:
...
When a spechit results in teleportation, P_TryMove never accounted for that, so that subsequent spechits either failed or succeeded, depending on where the teleport ends up.
With portal-aware positions stored within the spechit this no longer worked, so some handling is needed to revert to the original behavior in case there's no portals to consider.
The ideal solution would have been to stop checking spechits (or to block further teleports) once this happens but the likelihood of some old maps depending on this is high.
2016-03-09 11:44:01 +01:00
Randy Heit
03118d441f
Don't use _FPU_GETCW if it won't do what we want
...
- _FPU_GETCW is defined for more than just x87. Don't use it if the
control word for the target architecture doesn't support _FPU_EXTENDED
or _FPU_DOUBLE defined, e.g. pretty much anything but x87. If I had been
using glibc on PowerPC instead of Apple's libc, I probably would have
noticed this sooner, since _FPU_GETCW is part of glibc.
2016-03-08 22:00:16 -06:00
Randy Heit
76489e7638
More gracefully handle travelling to a map without matching player starts
...
- First, don't crash when travelling to a map in a hub that doesn't have
any player starts that match the position given to Teleport_NewMap (or
equivalent).
- Seconed, move the player to the location they were at when the left the
level. At least that way, they shouldn't be in random geometry or off
the map entirely.
2016-03-08 21:51:12 -06:00
Randy Heit
174e00afe7
Add NULL mthing check to P_SpawnPlayer
2016-03-08 21:42:24 -06:00
Randy Heit
48b6b6e057
Clip portals to viewheight, not screen height
...
- Aside, but is this even neccessary? The arrays being copied from should
already be clipped properly.
2016-03-08 19:53:37 -06:00
Christoph Oelckers
03e3410d7f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-08 21:29:45 +01:00
Christoph Oelckers
015cbb1061
- revert accidentally committed debug code.
2016-03-08 21:29:13 +01:00
Christoph Oelckers
365c192a1d
- added portal support for dynamic lights.
...
This requires fixed offsets so it only works with linked portals.
2016-03-08 21:22:12 +01:00
Christoph Oelckers
0a1e22aa7a
- fixed: FPathTraverse::init kills the intercepts array so PortalRelocate needs to store the line before calling that function.
2016-03-08 18:45:52 +01:00
Christoph Oelckers
42521ffd6f
- fixed some mixed up variables in a few blockmap iterators.
2016-03-08 18:34:58 +01:00
Christoph Oelckers
024efc9e61
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-08 15:40:47 +01:00
alexey.lysiuk
209b495e10
Fixed potential crash in DeHackEd loading
...
The patch content was destructed and then accessed when loading DeHackEd file of old/unsupported version
Do not print the whole patch content to console but only a filename
2016-03-08 16:28:11 +02:00
Christoph Oelckers
899389e6a4
- link actors into blockmap through linked line portals.
...
Links through sector portals are not done because nearly all the checks can be performed without doing this so if it works without there's no need to add more processing time.
Will have to see if there's cases left where such a link is needed and if so, whether there's better options to do it.
For line portals such links are necessary to have proper collision detection with actors that are currently transitioning the portal.
2016-03-08 14:41:37 +01:00
Christoph Oelckers
9d877f75e3
- second part of last commit. This file was accidentally unselected.
2016-03-08 14:35:36 +01:00
Christoph Oelckers
c2e7123a36
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-08 13:12:03 +01:00
Christoph Oelckers
1815b076ee
- don't show the IWAD picker upon restart. This doesn't work with fullscreen mode. Instead just pick the first IWAD from the list until a better solution can be implemented.
...
- handle a 'restart' CCMD a bit more controlled. Instead of throwing an exception in the CCMD handler it now just flags D_DoomLoop to return.
If the exception is thrown within the CCMD this can easily happen deep inside the renderer when it calls NetUpdate. But since the software renderer with its use of global variables is not equipped to be yanked out of lile this it could leave broken data behind that caused glitches or even crashes on subsequently played maps.
2016-03-08 13:07:21 +01:00
Christoph Oelckers
e11a0986ce
- encountered a strange crash that after changing a map, InSubsector was not NULL and pointing to invalid data. So let's better NULL this variable explicitly each time a render loop is started.
2016-03-08 12:27:01 +01:00
Christoph Oelckers
4ebdcb7b6d
- fixed: The result condition of a hitscan subtrace was never checked.
2016-03-08 11:55:40 +01:00
Christoph Oelckers
f852ead99a
- fixed: The initial check for ceiling and floor portals must be done when the trace's start position and its sector has been calculated. SightCheck::init is too early for that.
2016-03-08 10:44:03 +01:00
Christoph Oelckers
f35d966799
- don't allow any ceiling portal that has a lower position than a floor portal in the same sector. The will inevitably lead to problematic situations.
2016-03-08 10:09:02 +01:00
Christoph Oelckers
50d2145ba0
- fixed typo in portal init code.
2016-03-08 09:41:54 +01:00
Christoph Oelckers
2cd74118f6
- fixed sight checking through portals.
...
Notes:
* It is actually not enough to disable the early-out condition for the current block if there's a portal. It must be disabled for the entire rest of the trace because otherwise the collected lines never get processed.
* The block bounds check cannot be done globally with portals in the game. The actual trace can easily end up outside the blockmap bounds if portal offsets are factored into the distance between the two actors.
2016-03-08 01:26:13 +01:00
Christoph Oelckers
bd29f0994f
- restored accidentally deleted line.
2016-03-07 23:41:16 +01:00
Christoph Oelckers
cc2885c2de
- fixed int/fixed_t mixup with P_RadiusAttack's 'bombdistance' parameter. (Why is this thing even an int...?)
2016-03-07 22:05:19 +01:00
Christoph Oelckers
3c25b2c066
- some redesign of P_CheckSight to handle portals.
...
Portal stuff not tested yet.
2016-03-07 21:59:32 +01:00
Randy Heit
f82c217047
Fixed: In multiplayer, players could spawn at voodoo doll starts
...
- This could happen in co-op games that did not have enough player starts
for all the players spawning. Voodoo doll starts were not excluded from
the set of possible starts as they should have been.
2016-03-07 10:58:16 -06:00
Randy Heit
e277fbe81d
Fixed some incorrectness with some Hexen crushing specials
...
- The following Hexen specials all stop 8 units above the floor:
* Ceiling_CrushRaiseAndStay
* Ceiling_CrushAndRaise
* Ceiling_LowerAndCrush
We only and Ceiling_LowerAndCrush correct. Clearly, I should have paid
more attention when the Hexen source was released for the parts that I
had already reverse engineered.
2016-03-07 10:24:30 -06:00
Randy Heit
8b9a0da5ef
That was hard to read
2016-03-07 09:58:52 -06:00
MajorCooke
af50a79e55
- Fixed: ScaleY was not defaulting to ScaleX when specified as 0, which is how the behavior originally was in 2.8. This behavior can now be toggled with a new boolean, 'usezero'.
2016-03-07 09:02:34 -06:00
Christoph Oelckers
fe4bc31d59
- fixed some bad offset calculations.
2016-03-07 11:36:51 +01:00
Randy Heit
72edd7d455
Fixed: GetVarAddrType() bounds check was inverted
2016-03-06 22:17:30 -06:00
Christoph Oelckers
13a7507c4d
- should have saved that...
2016-03-07 01:48:13 +01:00
Christoph Oelckers
8f71906fc3
- added portal support to P_RadiusAttack.
...
This currently only works for linked portals. For other types some major refactoring may be necessary because it not only requires multiple passes of P_RadiusAttack but also an alteration of how sight checks work.
2016-03-07 01:02:48 +01:00
Christoph Oelckers
7d7112f427
- added portal support to A_ThrustImpale, P_PushUp and P_PushDown.
2016-03-07 00:17:52 +01:00
Christoph Oelckers
5175d56129
- made adjustments to P_LineAttack and P_RailAttack to deal with altered angles by passing through a non-parallel portal.
...
- fixed: P_FindFloorCeiling set the floorsector for a new ceilingheight.
Note: P_DrawRailTrail still needs to be changed, at the moment rail trails through portals will not work correctly.
2016-03-06 21:58:36 +01:00
Christoph Oelckers
90553bb61c
- deal with portals in P_AimCamera.
...
This will most likely need some more testing and refining but at least it should work through line portals now.
2016-03-06 13:10:42 +01:00
Christoph Oelckers
a0b2915b8f
- added a heightsec change when aborting the main trace due to having found a target in a subtrace.
...
- be a bit smarter about what to copy from a subtrace. There's 3 distinct pieces of information here: The hit itself, the CrossedWater setting for Boom-transfers and the CrossedWater setting for 3D floors.
Note: Ideally this should return all water hits it can detect, not just the first one.
2016-03-06 02:07:04 +01:00
Christoph Oelckers
74592334e4
- fixed return conditions of Trace() so that it always returns something valid. Due to the portal related changes the default initialization for TRACE_HitNone must be inside TraceTraverse.
2016-03-06 01:41:52 +01:00
Christoph Oelckers
ae4cc9669b
- added line portal support to Trace().
2016-03-06 01:04:19 +01:00
Christoph Oelckers
983e8bc6a5
- explicitly check NAME_Null in P_FindTerrain so that it cannot get rendered inoperable by mods which hijack this name. This name must be reserved so that there is some means to disable a sector's terrain.
2016-03-05 22:39:53 +01:00
Christoph Oelckers
97577dc2d7
- added sector portal support to Trace()
...
Note that at the moment only the function itself has been changed, the calling parts still need to be redone.
2016-03-05 21:44:31 +01:00
Christoph Oelckers
cf7f7b0d54
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-05 20:20:50 +01:00
Christoph Oelckers
87d6e03cc2
- should have saved before committing...
2016-03-05 13:09:49 +01:00
Christoph Oelckers
26a05857d0
- fixed: Camera textures should not intercept and clear the NoInterpolateView flag.
...
Thanks to some really bad use of a global variable this was causing problems with the inverted order in which GZDoom needs to draw this stuff.
2016-03-05 12:46:47 +01:00
Christoph Oelckers
c455c60480
- fixed: calculating open.range requires signed math.
...
- fixed: FMultiBlockLinesIterator initialized continueup twice but forgot continuedown.
- fixed: One of the debug messages in P_AimLineAttack was missing an if (aimdebug).
2016-03-05 01:23:27 +01:00
Christoph Oelckers
b9c72e372b
- fixed bad loop handling in FWeaponSlots::SetFromGameInfo().
2016-03-04 16:25:23 +01:00
Christoph Oelckers
d1f17e0b46
- fixed: The checks in P_IsThingSpecial was broken.
2016-03-04 16:23:40 +01:00
Christoph Oelckers
e290bc6fd0
- fixed: In Hexen, ThrustThing can not be triggered from the backside of a line.
...
This gets only activated when the HEXENHACK flag is set. For ZDoom maps there is a specific line flag to handle this condition explicitly.
2016-03-04 15:24:13 +01:00
Christoph Oelckers
caf2ca0df7
- fixed: CallStateChain must never allow a jumping function to set the chain's overall result to successful.
2016-03-04 15:11:20 +01:00
Christoph Oelckers
ef9f3da31d
- do not use the precalculated coordinates for non-linked portals because they are not static.
2016-03-04 14:41:24 +01:00
Christoph Oelckers
e9e30a6431
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-04 14:10:28 +01:00
Christoph Oelckers
dbd89c2702
- refactoring of portal grouping for the renderer, to allow more efficient clipping.
2016-03-04 14:10:13 +01:00
Christoph Oelckers
b427f27e3b
- fixed: line portal rotations were not set for all types.
2016-03-04 14:09:26 +01:00
Christoph Oelckers
af1b70376b
- added 21:9 handling to GL code.
2016-03-04 11:47:15 +01:00
alexey.lysiuk
9b23b41021
Added detection for broken WAD files
...
Do not try to allocate nonsensical amount of memory and bail out when broken WAD is detected
See http://forum.drdteam.org/viewtopic.php?t=6844
2016-03-04 11:32:15 +01:00
Christoph Oelckers
7ceb6d86dd
- fixed compilation.
2016-03-04 10:39:10 +01:00
Randy Heit
e4a74f4bbe
Fix memory leak from ZCC_OpInfo operator prototypes
2016-03-03 20:26:41 -06:00
Randy Heit
964ff46063
Add new state options to parser and actually enable them
...
- Added new state options that DECORATE got to the lemon parser.
- Enable token generation for state options. They were previously not
generated, so the grammar treated them as function calls instead.
2016-03-03 18:33:07 -06:00
Randy Heit
078d37e073
Pretty sure this was a typo
2016-03-03 18:33:07 -06:00
Christoph Oelckers
0bcbacea53
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/posix/sdl/hardware.cpp
2016-03-04 01:21:59 +01:00
Christoph Oelckers
0c37a90e32
- moved the initial 3D floor check from Trace to TraceTraverse, because that's where it will be needed for handling portals.
2016-03-04 01:13:17 +01:00
Christoph Oelckers
9f805daa73
- added missing handling of ALF_PORTALRESTRICT flag.
2016-03-04 01:13:16 +01:00
Christoph Oelckers
81b634a798
- preparation for making Trace portal aware: Added a new flag Trace_PortalRestrict, so that I could disable portals without static offset for P_LinePickActor and A_CheckLOF, because both depend on the target info being retainable which requires a static offset.
2016-03-04 01:13:16 +01:00
Randy Heit
3c2ed52442
Fix 21:9 base width and height values
2016-03-03 18:00:06 -06:00
Randy Heit
16d8af6b77
Add some 21:9 resolutions
2016-03-03 17:59:55 -06:00
Randy Heit
79f0714341
Update ratios[] tables for SDL and Cocoa
2016-03-03 17:32:30 -06:00
Michael Labbe
a28c8091fc
UI support for 21:9
...
- Can specify aspect ratio 21:9 in video menu
- menu_screenratios cvar can now force 21:9
2016-03-03 17:31:12 -06:00
Michael Labbe
a4705c8404
vid_listmodes crash fix
2016-03-03 17:31:12 -06:00
Michael Labbe
3ac4968218
Slightly improve 21:9 ar
2016-03-03 17:31:12 -06:00
Michael Labbe
afb1d438c2
21:9 fix for black bars overlapping fullscreen images
2016-03-03 17:31:12 -06:00
Michael Labbe
73c7e51391
fix: 21:9 AR stretching in intermission, end level screens
2016-03-03 17:31:12 -06:00
Michael Labbe
97821a3036
21:9 aspect ratio support
...
- vid_aspect 6 forces 21:9
2016-03-03 17:31:12 -06:00
Randy Heit
e3d35f4fe8
PClassPointer should use its own type as the metatype in the type table
...
- I don't remember why I thought using PPointer as the metatype for
PClassPointer would be preferable, but it means that PPointer's MatchID
can potentially be called for PClassPointer entries.
2016-03-03 17:31:01 -06:00
Randy Heit
6d68f69674
Use lambdas for more concise code
2016-03-03 13:27:52 -06:00
Christoph Oelckers
2587e82a67
. removed some redundant computation of a trace's hit position.
2016-03-03 16:15:42 +01:00
Christoph Oelckers
b8abafb486
- disabled all the debug messages in P_AimLineAttack but left them in with a CVAR check so that the debug output can be reenabled, should some problem require it in the future.
2016-03-03 13:31:21 +01:00
Christoph Oelckers
ec258c9588
- redid P_ClipLineToPortal with revised visibility rules:
...
* any line completely parallel to the portal is rejected
* any line with one end on the same straight line than the portal is solely decided by the other vertex.
* any line with both ends behind the portal cannot be visible inside, so there's no need to check for an intersection with the view range.
* due to the above P_IntersectLines could be removed as it was redundant.
* for any line that does intersect with the portal straight, do a reverse check: If both ends of the portal lie on the other side of the line than the viewpoint, the line is between viewpoint and portal and needs to be rejected.
This fixes nearly all the phantom wall glitches in the demo map.
2016-03-03 13:07:11 +01:00
Christoph Oelckers
14a0567343
- optimized the portal translation functions by precalculating the rotation angle, sine and cosine.
2016-03-03 11:58:04 +01:00
Christoph Oelckers
ede07f93b2
- fixed: Failure to open bots.cfg would throw an exception that prevented the level from starting. Catch it in FCajunMaster::LoadBots instead and handle it non-disruptively.
2016-03-03 11:11:25 +01:00
Christoph Oelckers
74c326e9b2
- fixed: An option value with an invalid value type would eat all key events when being selected.
2016-03-03 10:52:56 +01:00
Christoph Oelckers
4d2b9fbe1b
- don't freeze if the menu item search can't find anything selectable.
2016-03-03 10:47:11 +01:00
Christoph Oelckers
d8c009bb41
- fixed: A_Blast read the blast radius as an int, but used it as fixed_t. Also changed the definition of this parameter to float.
2016-03-03 10:23:04 +01:00
MaxED
81a5273b58
Added "Miscellaneous Options" -> "Save/Load confirmation" option (defaults to true). When disabled, confirmation dialog won't be shown when performing quicksave/quickload.
2016-03-03 09:59:26 +01:00
MajorCooke
59ad6206de
Added CBF_NOACTORS to A_CheckBlock.
...
- Self explanatory, doesn't count actors as blocking them.
2016-03-02 20:35:54 -06:00
MajorCooke
7f672039bf
Cleanup.
2016-03-03 02:58:44 +01:00
MajorCooke
fb3769a730
Added offsetforward to A_CheckLOF.
...
- offsetforward is to A_SpawnItemEx's x offset property, just like offsetwidth is to y offset.
2016-03-03 02:58:43 +01:00
Christoph Oelckers
6f28735b45
Merge branch 'zmaster'
2016-03-03 02:53:07 +01:00
Christoph Oelckers
90cad80422
- fixed some issues with FPathTraverse:
...
* when starting directly on a blockline the trace was offset by one map unit. Do this only for the internal block trace calculations but not for the variable that's being exposed to the outside because in rare situations that can create incorrect values.
* using startfrac could lead to an actor whose inside was right at that positon to be missed.
* when using startfrac the adjusted trace start was not used for all calculations, which could cause the trace to fail.
With these issues fixed, P_AimLineAttack can now successfully navigate line portals.
2016-03-03 02:50:48 +01:00
Christoph Oelckers
6b1485a89f
- refactored those unwieldy intercept position calculations into a subfunction.
2016-03-03 02:50:47 +01:00
Christoph Oelckers
4b23a1c0c7
- added handling for line portals to P_AimLineAttack.
2016-03-03 02:50:45 +01:00
Christoph Oelckers
63d838c0a7
- fixed: P_CollectConnectedGroups could crash when being called before P_FinalizePortals.
...
- fixed: Entering a sector portal did not properly set up the starting sector of the cloned trace.
2016-03-03 02:50:44 +01:00
Christoph Oelckers
f5fd0df077
- made P_AimLineAttack work through sector portals.
...
Note: Test output not removed yet!
2016-03-02 20:44:02 +01:00
Christoph Oelckers
a96d6ab072
Merge remote-tracking branch 'remotes/zdoom/master'
...
# Conflicts:
# src/g_level.cpp
# src/p_3dfloors.cpp
# src/p_lnspec.cpp
# src/p_saveg.cpp
# src/p_spec.cpp
# src/r_bsp.cpp
# src/r_data/r_interpolate.cpp
# src/r_data/r_translate.cpp
# src/r_data/sprites.cpp
# src/r_defs.h
# src/r_sky.h
# src/stats.h
# src/textures/texturemanager.cpp
# src/textures/textures.h
# src/version.h
# src/win32/fb_d3d9.cpp
# src/win32/hardware.cpp
# src/win32/i_system.cpp
# wadsrc/static/actors/doom/doomarmor.txt
# wadsrc/static/compatibility.txt
# wadsrc/static/language.enu
# wadsrc/static/mapinfo/common.txt
# wadsrc/static/menudef.txt
# wadsrc/static/xlat/eternity.txt
2016-03-01 18:50:45 +01:00
Randy Heit
c160121f45
Add float casts to DECORATE for the sake of completeness
2016-03-01 11:36:15 -06:00
Christoph Oelckers
e3c06e3df7
Merge commit '165d26baa1569685651baf4575e12e73c8cbfd2e'
...
# Conflicts:
# bzip2/bzip2.vcproj
# game-music-emu/game-music-emu.vcproj
# gdtoa/gdtoa.vcproj
# jpeg-6b/jpeg-6b.vcproj
# src/p_spec.cpp
# src/r_defs.h
# tools/fixrtext/fixrtext.vcproj
# tools/lemon/lemon.vcproj
# tools/updaterevision/updaterevision.vcproj
# tools/zipdir/zipdir.vcproj
# wadsrc/static/xlat/eternity.txt
# wadsrc/wadsrc.vcproj
# zlib/zlib.vcproj
2016-03-01 17:23:35 +01:00
Randy Heit
55142078d8
Normalize line endings
2016-03-01 09:47:10 -06:00
Christoph Oelckers
b4a002a07f
- preparations for allowing hitscans through portals.
...
To allow processing the hit through an arbitrary portal without reference to the portal group table, P_AimLineAttack and P_LineAttack need to pass some more info than just the linetarget.
We need the relative positions of shooter and target within the visual reference of the other to calculate proper angles and we need to know if such a portal was crossed at all, because a few things, e.g. seeker missiles won't work with them.
- fixed setup of target acquisition for the Mage Staff.
The pre-acquired seeker target was never passed to the spawned projectiles.
2016-03-01 16:39:31 +01:00
Randy Heit
a16f92c508
Convert "lump" names from directories to lowercase
...
- Zip and 7z already do this. Directories should too.
2016-03-01 08:49:43 -06:00
Christoph Oelckers
44a6cafd4b
- we are using C++11 now, so all those old VC 2005 project files are of no use anymore.
2016-03-01 09:38:49 +01:00
Randy Heit
7c9fd12fc0
Don't generate code to call DECORATE cast functions
...
- All the cast functions do is return their parameter, so skip the
function call and use the parameter directly.
2016-02-29 22:26:05 -06:00
Randy Heit
92f74634d6
Remove FxParameter and use a single function instead
2016-02-29 22:08:06 -06:00
Randy Heit
fb8d8dc775
Remove "state" from "Invalid state parameter" error message
...
- It's confusing to see this from inside an anonymous function. Actually,
maybe it should be reworded altogether?
2016-02-29 21:44:12 -06:00
Randy Heit
cb1d9597f2
Allow if {} else if {}
with DECORATE
...
This is as opposed to `if {} else { if {} }`, which is what was required
previously to express the same construct.
2016-02-29 21:40:10 -06:00
Randy Heit
f23c0121c5
Use new type system with DECORATE
2016-02-29 21:11:59 -06:00
Christoph Oelckers
15b6c11748
- did some cleanup on FPathTraverse::PortalRelocate.
2016-03-01 02:06:31 +01:00
Christoph Oelckers
5e7ecb3c44
- hm. I thouggr thia has been saved before committing.
2016-03-01 01:53:09 +01:00
Christoph Oelckers
2584108200
- removed the one-sided line portals on polyobjects only limitation. Using Eternity's polyportal testmap shows that it expects one-sided crossable portals on non-polyobject walls.
...
- converted the P_TranslatePortal* functions to use floating point trigonometry. The combination of R_PointToAngle and finesine even created discrepancies with perfectly parallel portals which is just not acceptable.
- added a function to FPathTraverse to relocate the trace and restart from the new position.
- made P_UseLines portal aware. Traversal through line portals is complete (all types, even teleporters), whether sector portals need better treatment remains to be seen - at the moment it only checks the range at the player's vertical center.
2016-03-01 01:36:36 +01:00
Christoph Oelckers
0c7aea88db
- made particles portal-aware.
2016-02-29 16:40:28 +01:00
Christoph Oelckers
07771bd56e
- changed parameter of P_GetOffsetPosition to a simple coordinate so that it can be used for other things than actors.
2016-02-29 16:29:51 +01:00
Christoph Oelckers
38c1b8588c
- made spawning of teleport fog portal aware.
2016-02-29 16:21:05 +01:00
alexey.lysiuk
2b74ee1eef
Fixed assertion failure caused by a missing class to spawn
...
This fixes debugging troubles with states that have action functions like A_SpawnItem("MissingClass")
2016-02-29 12:54:30 +01:00
Christoph Oelckers
2321c9973f
- fixed some serious efficiency problems with clipping masked geometry against portals.
...
The function to do the work scanned the full list of drawsegs to find portals, which with a large amount of masked geometry and/or drawsegs could become extremely slow.
Changed it so that R_DrawMasked collects all portal related drawsegs up front so that the actual clipping code can
a) scan a far shorter list and
b) can skip half of the validation.
Also using P_PointOnLinePrecise to shave off a small bit of additional time.
2016-02-29 12:39:03 +01:00
Christoph Oelckers
0cf9cae7f3
- added some #pragma warnings to i_crash.cpp to silence a warning message in Microsoft's headers.
2016-02-29 10:48:51 +01:00
Christoph Oelckers
6c37ab2310
- changed: If the IWAD contains a MENUDEF lump the one in zdoom.pk3 should not print texture warnings.
...
The reason is that in such a case it is very likely that the IWAD defines its own menu and will most likely not provide all assets for the base definitions. See 'Adventures of Square' for an example.
2016-02-29 10:45:14 +01:00
Christoph Oelckers
7242a0ef94
- fixed: Rendering 2-sided walls with 3D floor light effects had the 'is3dfloor' flag of GetLightLevel inverted.
2016-02-29 10:26:07 +01:00
Christoph Oelckers
fadc7de636
- added a sight check to A_Blast for cross-portal effects.
2016-02-29 01:36:39 +01:00
alexey.lysiuk
0822485593
Used ISO Latin 1 encoding for text in startup window on OS X
...
Attempts to output errors with bad characters encountered during text lumps parsing were failed miserably because of UTF-8 conversion
Example: loading of GZ-Models-r16.pk3 with GZDoom caused 'NSConcreteAttributedString initWithString:: nil value' exception
2016-02-28 23:15:23 +01:00
alexey.lysiuk
243f59d96d
Made sure that the last text line is always visible in OS X startup window
...
These case are handled specifically:
* When waiting for clients or host to join
* When showing a fatal error
2016-02-28 23:15:22 +01:00
alexey.lysiuk
067b421f39
Fixed default width of progress bar in OS X startup window
...
If window was resized before progress bar appears it will have hardcoded and so incorrect width
2016-02-28 23:15:21 +01:00
alexey.lysiuk
64f80456ad
Initialized scroll view with the same rectangle as other controls in OS X startup window
2016-02-28 23:15:20 +01:00
alexey.lysiuk
145b7be0a1
Fixed particular slowdown in OS X startup window
...
During loading of .pk3 that stores hundred of .wad's significant amount of time were spent on scrolling text to the last line
The same applies to other cases like output of thousands warnings/errors
2016-02-28 23:15:19 +01:00
alexey.lysiuk
c687394f72
Added generic way to do periodic updates of OS X startup window
...
It's used to avoid updating of window (progress bar in particular) too often
Most of time were spent on UI events processing but not on data loading
2016-02-28 23:15:18 +01:00
alexey.lysiuk
0fba6563c7
Disabled fullscreen mode for OS X startup window
...
There is no use for auxiliary fullscreen window because it behaves really weird
2016-02-28 23:15:17 +01:00
Christoph Oelckers
d4f87203bd
- added portal awareness to several functions.
...
* Arch-Vile resurrection
* Boom point pushers (due to complete lack of z-handling only for line portals.)
* A_RadiusGive
These also require a more thorough collection of portal groups than simple position checks.
2016-02-28 23:08:32 +01:00
Christoph Oelckers
8be690fbf2
- fixed type truncation warning.
2016-02-28 21:16:16 +01:00
Christoph Oelckers
27ac207f4c
- added oortal handlong to P_RecursiveSound.
2016-02-28 18:03:42 +01:00
Christoph Oelckers
4bb0ca5889
- consolidated some nearly identical code repetitions in Hexen's attack functions.
2016-02-28 16:06:48 +01:00
Christoph Oelckers
c390b98966
- fixed: Not all paths in A_CStaffCheck did proper checks on the player's health.
2016-02-28 15:14:05 +01:00
Christoph Oelckers
94f37bde30
- Forgot changing two comparisons when cleaning up the if statement in FindRefPoint.
2016-02-28 14:03:57 +01:00
Christoph Oelckers
e9fa53c54d
- fixed dropoff calculation over portals.
...
It can easily happen that the lower sector has no lines below the checked area, in which case it would not set the dropoffz correctly. To prevent this, P_LineOpening must, when it checks the opening over a sector portal, actually calculate the dropoff to the lower portal itself by calling sector_t::NextLowestPointAt. It also means that FindRefPoint must calculate a proper reference point when one side of the line to be checked is part of a floor portal.
2016-02-28 13:59:15 +01:00
Christoph Oelckers
b0f1e9b8f3
- fixed typo in portal blockmap code.
2016-02-28 12:16:58 +01:00
Christoph Oelckers
9e3bde0913
- fixed: invisible line within a portal could affect floor height checks in P_CheckPosition.
2016-02-28 12:14:37 +01:00
Christoph Oelckers
ee18fdeb83
- fixed: Visplane merging should not be done for linedef based portals.
2016-02-28 10:10:01 +01:00
Christoph Oelckers
9a0de6c0fa
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-02-28 09:32:28 +01:00
Christoph Oelckers
3272f180cb
- added missing damagemod sector property to extradata parser.
2016-02-28 09:32:10 +01:00
Edoardo Prezioso
cd85f6768c
- Improve Mac GCC errors fix to work only for GCC.
...
This fixes Clang complaining about unknown command option '-Wno-unused-but-set-variable' when compiling dumb.
Also I got no new warnings on Clang by excluding '-Wno-unused-result'.
2016-02-27 23:49:02 +01:00
Christoph Oelckers
e305f5211a
Merge branch 'zmaster'
2016-02-27 23:36:52 +01:00
Christoph Oelckers
a9ca53bc00
- added a check for the destination of a portal to P_CheckPosition. This needs to run a separate BlockLinesIterator that only sets selected fields.
2016-02-27 23:35:13 +01:00
Christoph Oelckers
047070d180
- made arbitrary portals passable.
...
This includes:
* allow one sided portal linedefs to be crossable when part of a polyobject. Due to the limitations, two-sided linedefs won't work here. For general use this is still not allowed because making them passable would require some crippling fudging.
* delay portal finalization until after polyobjects have been spawned.
* the camera interpolation also needs to handle angle differences.
The code is still not 100% complete - the most important thing that is still missing is proper handling of P_CheckPosition through arbitrary portals.
2016-02-27 18:07:39 +01:00
alexey.lysiuk
fcb38a9419
Made index of VM intrinsic functions unsigned
...
No more 'comparison of integers of different signs: int and unsigned long' warning
2016-02-27 15:14:13 +02:00
alexey.lysiuk
d49f4a5d84
Removed redundant comparison
...
No more 'comparison of unsigned expression >= 0 is always true' warning
2016-02-27 15:05:01 +02:00
alexey.lysiuk
3c044ebd5e
Removed usage of register keyword
...
No more 'register storage class specifier is deprecated' warnings
2016-02-27 15:03:44 +02:00
alexey.lysiuk
9e016bbfc3
Removed useless operations from OS X system code
...
No more 'expression result unused' warnings
2016-02-27 12:48:26 +02:00
alexey.lysiuk
202aea61e5
Fixed incorrect comparison in OS X console window
...
No more 'comparison between pointer and integer' error
2016-02-27 12:48:12 +02:00
Braden Obrzut
6baa1b0674
- Compile with -std=c++14 or -std=c++11 on GCC/Clang.
...
- Fixed initialization crossing goto.
2016-02-27 02:20:34 -05:00
Christoph Oelckers
8d58d63b60
- implemented line portal transition. Not yet tested for arbitrary portals but for static ones it is working - including camera interpolation.
2016-02-27 01:23:43 +01:00
Christoph Oelckers
451cac457b
- added NULL pointer check in AActor::ClearInterpolation.
2016-02-26 18:05:58 +01:00
Christoph Oelckers
7da8112f12
- now that C++11 is allowed, these annoying 'narrowing conversion' warnings can finally be fixed...
2016-02-26 18:03:45 +01:00
Christoph Oelckers
f7a3314a0a
- added an iterator to TArray so that it can be used with range-bases 'for' statements.
2016-02-26 16:20:27 +01:00
Christoph Oelckers
213d7a75c2
- fixed: r_showviewer must always be true when rendering a mirror portal.
2016-02-26 12:09:59 +01:00
Christoph Oelckers
bb4bd76257
Merge branch 'zmaster'
2016-02-26 11:54:08 +01:00
Christoph Oelckers
60c2a55ec4
- added P_GetOffsetPosition calls to all needed functions.
2016-02-26 11:52:53 +01:00
Christoph Oelckers
d46e109a5b
- prevent Visual C++ from making stupid code.
2016-02-26 11:52:52 +01:00
Christoph Oelckers
eafd2519b4
- fixed a few incorrect uses of AngleTo function.
...
- added portal offsetting to all AproxDistance, AngleTo and Vec*To members of AActor.
- optimized displacement retrieval so that the most common case with no offset retrieves a constant null-vector which can be optimized away fully by the compiler.
- early out in P_GetOffsetPosition if there's no portal lines nearby, so that the common case can skip the traverser completely even on maps with line portals.
2016-02-26 11:52:50 +01:00
Randy Heit
fd78686679
Add clamp() to DECORATE
2016-02-25 14:31:37 -06:00
Randy Heit
7f57f68ce1
Added GetSpawnHealth() and GetGibHealth() for DECORATE
2016-02-25 10:08:08 -06:00
Randy Heit
a862f728b6
Add remaining VM-supported floating point operations to DECORATE
...
- These are:
* exp
* log
* log10
* ceil
* floor
* acos
* asin
* atan
* tan
* cosh
* sinh
* tanh
2016-02-25 09:41:49 -06:00
Randy Heit
8ee820042f
Tablified the DECORATE floating point operations (sqrt,cos,sin)
2016-02-25 09:23:46 -06:00
Christoph Oelckers
d6c6383fca
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-25 13:36:53 +01:00
Christoph Oelckers
d8d3889452
- removed PortalGroup == 0 check. This would only be valid if there's only linked portals in the map.
2016-02-25 13:36:27 +01:00
Christoph Oelckers
387f3dd03a
- fixed compile errors due to changes in ZDoom.
2016-02-25 13:06:13 +01:00
Christoph Oelckers
205bbac411
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-25 13:01:51 +01:00
Christoph Oelckers
c7bce8b346
- added a special portal blockmap. This only contains all lines which have a crossable line portal assigned. This is to speed up offset calculations because those are quite frequent and would be too inefficient with the full blockmap.
...
- made some minor changes to FPathTraverse so that the Add*Intercepts methods can be virtually overridden.
- removed the PortalTracer class because in its existing form it was too costly. Replaced with a P_GetOffsetPosition function that does the minimum required work to get to the translated destination and that's better suited for being called from the Vec*Offset methods. Other use cases will require some changes to FPathTraverse anyway, or some wrapping class like the FMultiBlock iterators.
2016-02-25 13:00:23 +01:00
Christoph Oelckers
a9db998700
- did some refactoring on FPathTraverse to allow inheriting from that class with different collection functions.
...
This will be needed to implement an efficient portal checker that doesn't run through the entire blockmap to find the portals.
2016-02-25 09:54:09 +01:00
Christoph Oelckers
954f03e531
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/actor.h
2016-02-25 01:40:36 +01:00
Christoph Oelckers
208ad14bad
- this wasn't saved when I committed the interpolation stuff.
2016-02-25 01:24:09 +01:00
Christoph Oelckers
e11da06e69
- some preparations for actor interpolation through wall portals.
2016-02-25 00:41:31 +01:00
Christoph Oelckers
58d3b04590
- fixed some places in p_pillar.cpp where sector plane z's were calculated at (0, 0) which could cause overflows if the actual plane is too far away from the origin.
...
- renamed sector_t::soundorg in centerspot, changed the type to a fixedvec2 and removed the CenterSpot #define.
Since this thing was used in lots of places that have nothing to do with sound the name made no sense. Having it as a fixed_t array also made it clumsy to use and the CenterSpot #define used a potentially dangerous type cast.
2016-02-24 14:49:59 +01:00
Christoph Oelckers
8362a4516f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-24 11:26:35 +01:00
Christoph Oelckers
21c55a090a
- fixed: "take armor" cheat should only deplete the armor, not destroy it.
...
- fixed: Hexen armor cannot be depleted by the common function, it needs an override to achieve that.
2016-02-24 10:50:42 +01:00
alexey.lysiuk
8ba6f6ced5
Fixed crash when spawning decal without texture
...
See http://forum.zdoom.org/viewtopic.php?t=50977
2016-02-24 10:37:14 +01:00
Christoph Oelckers
51da78ba29
- added a compatibility option to allow multiple exits to be triggered.
...
This is required by Daedalus's travel tubes which contain a faulty script with some leftover debug code.
2016-02-24 10:35:29 +01:00
Christoph Oelckers
b01e0fa06e
- removed debug output from portal transition code.
...
- handle the case where a portal transition crosses more than a single boundary in one move.
2016-02-24 10:08:23 +01:00
Randy Heit
326907f6ab
Cleanup parsing of DECORATE intrinsics
...
- Split specific parsing for each intrinsic out of ParseExpression0 and
into their own functions.
- Instead of reserving keywords for intrinsics, identify them by name
within TK_Identifier's handling.
2016-02-23 19:39:29 -06:00
Christoph Oelckers
01bdd8a7da
- actor transition through a sector portal is working.
2016-02-24 01:16:07 +01:00
Christoph Oelckers
58839200e5
- fixed some line clipping issues with portals
...
* Blocking lines above or below the current sector should only block if they actually intersect with the currently checking actor.
* Sectors above a ceiling portal should not change current floor information and vice versa.
2016-02-24 01:16:06 +01:00
Christoph Oelckers
e3ddc74eb1
- check r_showviewer when deciding whether to render the player sprite. This is necessary when camera and player end up on different sides of a portal.
2016-02-24 01:14:24 +01:00
Randy Heit
1f09341d2b
Let min/max pre-solve for 2+ constants, even if there are non-constants
2016-02-23 16:37:52 -06:00
Randy Heit
1ffb7ad109
Add min and max to DECORATE
2016-02-23 16:26:00 -06:00
DaMan
78552cc676
Disable UAC virtualization
2016-02-22 17:56:18 -06:00
MajorCooke
c3ffeb1e9d
A_RadiusGive Missile check fix
...
- Don't use isMissile(). Check directly for the flag at the moment of calling and not the default. Otherwise, things changing themselves will still be ineligible for non-missile checks.
2016-02-22 11:30:44 -06:00
Christoph Oelckers
e107d8ff48
Merge remote-tracking branch 'remotes/zdoom/master'
...
# Conflicts:
# src/portal.h
# src/r_defs.h
2016-02-22 16:06:31 +01:00
Christoph Oelckers
49bfe717ce
Merge remote-tracking branch 'remotes/origin/portal'
2016-02-22 15:54:07 +01:00
Christoph Oelckers
62f6a5e4bf
- fixed: GetFloorCeilingZ used the actor's actual position, not the tmf.x, tmf.y for which information is supposed to be retrieved.
2016-02-22 15:51:19 +01:00
Christoph Oelckers
4b0af5967e
- use proper constructor for FMultiBlockLinesIterator in P_CheckPosition.
2016-02-22 15:51:18 +01:00
Christoph Oelckers
ed2b107bc9
- fixed: P_LineOpening_XFloors set some floor-related info in the ceiling case so that it never reached the point where it is needed.
...
- fixed: FMultiBlockLinesIterator/FMultiBlockThingsIterator need to treat radius=-1 as 'use default from actor.'
2016-02-22 15:51:18 +01:00
alexey.lysiuk
89ca14a587
Fixed memory leak caused by return statement parsing
2016-02-22 14:24:34 +02:00
Christoph Oelckers
31cf712db3
- replaced R_PointToAngle2 in blood splatter functions.
2016-02-22 12:33:13 +01:00
Christoph Oelckers
fe9a12173c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-22 12:06:34 +01:00
Christoph Oelckers
730145d1fc
- more transition to FMultiBlock* iterators:
...
* removed all code for dealing with z-displacing portals in the iterator loops. This would cause too many problems so I decided to scrap any provisions for allowing interactive portals with z-displacement. They will remain restricted to pure teleporter portals.
* changed spechit to carry a position along with the special line. If something is activated through an interactive portal this is needed to calculate movement.
* pass the abovementioned position to CheckForPushSpecial.
* collect touched portal lines in a second array analogous to spechit.
* use FMultiBlockThingsIterator in P_TestMobjZ.
2016-02-22 12:05:38 +01:00
Christoph Oelckers
ca2fc47fa3
- refactoring of PIT_CheckThing.
2016-02-22 12:05:37 +01:00
Christoph Oelckers
98c7fabb89
- untested partial refactoring of P_CheckPosition.
...
(This is just a safety commit before doing some more extensive behind-the-scenes refactoring.)
Notable changes here:
* use the same logic for determining whether a 3D floor is 'below' or 'above' the actor as all the other functions.
* removed the broken code which tried to detect whether an actor was touching a steep slope. Better use P_LineOpening to find the correct planes and store the results.
* improved detection whether the slopes on both sides of a plane are identical, using the same data as for steep slope detection.
2016-02-22 12:05:37 +01:00
Christoph Oelckers
abcc6049b9
- made the z coordinate part of the CheckResults for the MultiBlock iterators and use these for all height checks in the iterator loops. This will later make it easier to support arbitrary portals with height displacements.
2016-02-22 12:05:36 +01:00
Randy Heit
70c663b253
Revert "Add PARAM_STATE_NOT_NULL for the A_Jump* functions"
...
- This reverts commit cab39973df
.
I was wrong. DoJump never allowed jumping to NULL states.
2016-02-21 19:21:39 -06:00
Randy Heit
19af8a3a82
Change error message for missing return
2016-02-20 23:14:14 -06:00
Randy Heit
e7b9e7e955
Rename A_Int/A_Bool/A_State to int/bool/state
...
- This is an effort to emphasize that these are just type casts. Now they
look like function-style casts with no action function styling.
They do no magic joojoo at all. The only reason they exist is because
the DECORATE parser can only parse return statements that call a
function, so these satisfy that requirement. i.e. *return int(666);* is
identical to *return 666;* (if the parser could handle the latter).
2016-02-20 22:05:17 -06:00
Randy Heit
cab39973df
Add PARAM_STATE_NOT_NULL for the A_Jump* functions
...
- Now that state jumps are handled by returning a state, we still need a
way for them to jump to a NULL state. If the parameter processed by this
macro turns out to be NULL, Actor's 'Null' state will be substituted
instead, since that's something that can be jumped to.
2016-02-20 21:52:29 -06:00
Randy Heit
5e298173f7
Redo ACTION_RETURN macros so they can be treated like return statements
2016-02-20 21:34:58 -06:00
Randy Heit
81314a6cd6
Revert "- fixed a few occurences where ACTION_RETURN_* eliminated the side effect of its argument when no return value was requested."
...
This reverts commit 7ede77c1d2
.
2016-02-20 21:27:42 -06:00
Christoph Oelckers
dfd7e08307
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/menudef.txt
2016-02-21 01:55:15 +01:00
Christoph Oelckers
a901875925
- fixed: The horizon portal drawer must set the camera position for the shader.
...
This gets lost when several portals are drawn sequentially and this is the only portal type which needs this information but doesn't go through the normal setup.
If this is not done, fog on the horizon plane can break.
2016-02-21 01:38:41 +01:00
Christoph Oelckers
26967bd0ee
- migrated P_PlayerStartStomp to FMultiThingIterator.
...
Note: This replaces AActor::intersects with a direct calculation. Although that function could be adjusted it'd mean some redundant distance calculations which are easily avoided.
2016-02-21 00:21:42 +01:00
Christoph Oelckers
f8a8d8eed2
- fixed use of wrong position variable in P_TeleportMove's thing iterator.
2016-02-21 00:21:42 +01:00
Christoph Oelckers
58fcd8d742
- implemented the FMultiBlockThingsIterator and converted P_TeleportMove to use it.
2016-02-21 00:21:41 +01:00
m-x-d
d2630dee8c
Fixed: warp and warp2 texture effects now work for NPo2 textures.
2016-02-20 21:45:09 +01:00
MaxED
1ba526d4de
Added #region / #endregion handling (should affect all text lumps, let me know if there are text lumps unaffected by this).
2016-02-20 21:45:08 +01:00
nukeykt
4b0aac9816
Backport OPL2 KSL table fix from MAME v0.150.
2016-02-20 20:08:02 +01:00
John Palomo Jr
92697659be
Expose SafeCommand confirmation string to language.
2016-02-20 20:04:30 +01:00
alexey.lysiuk
7b49d9d92c
Fixed crash when accessing undefined user variable
...
Presence of DECORATE user variable was not checked before attempting to read or write its value from ACS
2016-02-20 20:02:32 +01:00
Christoph Oelckers
b8f8daf1c1
- fixed:In P_ChangeSector, floorOrCeil==2 means that only 3D midtextures moved. This means that
...
* no 3D floor movement can take place
* no portal changes can occur.
2016-02-20 15:52:19 +01:00
Edoardo Prezioso
166687d971
- Added optional 'z' parameter to the 'warp' CCMD.
...
Now it's possible to warp above 3dfloors.
2016-02-20 13:32:27 +01:00
Christoph Oelckers
7ede77c1d2
- fixed a few occurences where ACTION_RETURN_* eliminated the side effect of its argument when no return value was requested.
...
This macro should not be used on function calls that actually perform an action aside from calculating the return value!
2016-02-20 13:13:53 +01:00
Edoardo Prezioso
d1502b1086
- Simplify expressions inside some else/endif.
...
We aren't bound to old cmake anymore.
2016-02-20 11:38:30 +01:00
Edoardo Prezioso
3dcc6d0330
[fmod] Improve the checks for fmod 4.44.
...
- The FMOD 4.44 linux package contains both 32 and 64-bit versions, with the folder name without the '64' suffix for 64-bit.
- Add minor version '61' so that the latest FMOD package (at the time of this commit) can be detected and compiled successfully.
2016-02-20 11:38:29 +01:00
Randy Heit
c3432a1ddb
Fix CustomInventory never succeeding
...
- A != should have been ==.
2016-02-19 22:09:35 -06:00
Christoph Oelckers
cfbb3bcbb2
- completed work on P_FindFloorCeiling and all functions it calls.
...
Note: The debug output is left in so that in cases of an error it can still be used.
2016-02-20 02:22:10 +01:00
Christoph Oelckers
d876a95152
- set floor and ceiling sector when it comes from a 3D floor.
...
There's code in p_mobj.cpp which needs this to pick the correct plane.
2016-02-20 02:22:09 +01:00
Christoph Oelckers
6132f6971a
- added support for FFCF_NOPORTALS and FFCF_3DRESTRICT to FindNextLowestFloorAt and FindNextHighestCeilingAt
...
- use these functions in P_GetFloorCeiling instead of duplicating all this code.
- removed some debug CCMDs.
2016-02-20 02:22:09 +01:00
Christoph Oelckers
dc37f78566
- fixed: Old portal data must be deleted before loading a new level.
2016-02-20 02:22:09 +01:00
Christoph Oelckers
cb0e7c6ca5
- fixed some issues with P_FindFloorCeiling rework.
2016-02-20 02:22:08 +01:00
Christoph Oelckers
9af5dd357f
- removed the camera adjustment in FGLRenderer::SetViewArea because this had already been done by R_SetupFrame.
2016-02-20 02:20:55 +01:00
Christoph Oelckers
bd67f3b3e5
- added skybox cast for GL code.
2016-02-20 02:20:43 +01:00
Randy Heit
4770dc2dfb
Fix improper detection of if statements returning
2016-02-19 16:38:30 -06:00
Randy Heit
80d49d6bb9
Fix crash when parsing an empty action list for DECORATE
2016-02-19 16:31:53 -06:00
Christoph Oelckers
0a539ed2d5
- fixed: fake contrast was not applied.
2016-02-19 17:40:08 +01:00
Christoph Oelckers
6e6ddfbc25
Merge remote-tracking branch 'remotes/zdoom/master'
2016-02-19 16:14:52 +01:00
Christoph Oelckers
28799c4b51
- some logic fixes in FMultiBlockLinesIterator.
2016-02-19 16:13:36 +01:00
Christoph Oelckers
02d7572343
- some header dependency cleanup so that it is no longer needed to include portal.h to get the inline functions. Portal.h has been reduced of most dependencies now so that including it is cheap and can be done in other headers.
...
- some consolidation in p_map.cpp. PIT_CheckLine and PIT_FindFloorCeiling had quite a bit of redundancy which has been merged.
- čontinued work on FMultiBlockLinesIterator. It's still not completely finished.
2016-02-19 14:08:41 +01:00
Christoph Oelckers
15040c955e
Merge branch 'master' into portal
2016-02-19 10:40:07 +01:00
Christoph Oelckers
3841a5f626
- implemented FMultiBlockLinesIterator for checking a position across portals. This is not fully tested yet.
2016-02-19 10:39:40 +01:00
Randy Heit
a31bd78abe
Fix definitions of A_State/A_Int/A_Bool
...
- These aren't action functions, so PARAM_ACTION_PROLOGUE is
inappropriate.
2016-02-19 00:29:19 -06:00
Randy Heit
cb0fd5967f
Oops. Had FxCastStateToBool backwards.
2016-02-18 22:53:18 -06:00
Randy Heit
a399f40e5f
Support casting states to booleans
...
- This is so that you can call an A_Jump-type function from inside an if
statement and do something other than jump if the jump condition was
met. e.g.
{
if (A_Jump(128, "Foo"))
{
A_Log("The function would have jumped");
}
else
{
A_Log("The function would not have jumped");
}
}
2016-02-18 22:40:04 -06:00
Randy Heit
aa58c5f519
Declare VMFunction::Proto to the garbage collector
2016-02-18 22:26:37 -06:00
Randy Heit
eace79ccad
Add some functions for use with DECORATE return
...
- Since DECORATE's return statement can only return the results of
function calls (I do not want to spend the time necessary to make it
return arbitrary expressions), here are three functions to get around
this limitation:
* A_State - Returns the state passed to it. You can simulate A_Jump
functions with this.
* A_Int - Returns the int passed to it.
* A_Bool - Returns the bool passed to it.
- e.g. If you want to return the number 3, you use this:
return A_Int(3);
If you want to jump to a different state, you use this:
return A_State("SomeState");
2016-02-18 22:15:03 -06:00
Randy Heit
fbbaae781b
Merge remote-tracking branch 'origin/master'
2016-02-18 22:05:40 -06:00
Randy Heit
b1098ede93
Restore "direct" call optimization for DECORATE
2016-02-18 22:05:16 -06:00
Randy Heit
ade780d810
Redo ACustomInventory::CallStateChain to check return types
2016-02-18 22:05:10 -06:00
Randy Heit
b8a16600ac
Braces around ACTION_RETURN used in an if are no longer optional
2016-02-18 21:39:13 -06:00
Randy Heit
b2ccd0bd28
Use action function return value to make state jumps happen
...
- The A_Jump family of action functions now return the state to jump
to (NULL if no jump is to be taken) instead of jumping directly.
It is the caller's responsibility to handle the jump. This will
make it possible to use their results in if statements and
do something other than jump.
- DECORATE return statements can now return the result of a function
(but not any random expression--it must be a function call). To
make a jump happen from inside a multi-action block, you must
return the value of an A_Jump function. e.g.:
{ return A_Jump(128, "SomeState"); }
- The VMFunction class now contains its prototype instead of storing
it at a higher level in PFunction. This is so that
FState::CallAction can easily tell if a function returns a state.
- Removed the FxTailable class because with explicit return
statements, it's not useful anymore.
2016-02-18 20:39:40 -06:00
Edoardo Prezioso
f338e5f1c4
- Apply the fast math flags for non-MSVC, too.
...
Move the fast flags string creation in the main cmake file and use it where needed.
2016-02-18 23:13:02 +01:00
Christoph Oelckers
884a265d4a
- refactored P_FindFloorCeiling to be portal aware and cleaned up its interface.
...
A big problem with this function was that some flags required setting up some variables before calling it and others did not. It will now set everything up itself so all initializations to AActor::floorz and ceilingz that were made before these calls (which were all identical to begin with) could be removed and the internal initialization logic streamlined.
2016-02-17 21:57:52 +01:00
Christoph Oelckers
bd09664d85
Merge branch 'master' into portal
2016-02-17 12:37:11 +01:00
Christoph Oelckers
f2125ea420
- this needs a return value...
2016-02-17 12:36:56 +01:00
Christoph Oelckers
022ab95817
Merge branch 'master' into portal
2016-02-17 11:46:24 +01:00
Christoph Oelckers
5a779cc1f4
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-17 11:43:03 +01:00
Christoph Oelckers
42c6245a50
- restored A_CountdownArg to what it looked like before the scripting branch.
...
The new version did not work as expected anymore.
2016-02-17 11:42:45 +01:00
Christoph Oelckers
10a3d75556
- reviewed and adjusted ZatPoint calls in p_map.cpp.
2016-02-17 11:39:14 +01:00
Christoph Oelckers
6e4cf9699a
Merge branch 'portal' of https://github.com/rheit/zdoom into portal
2016-02-17 02:21:46 +01:00
Christoph Oelckers
0948448988
- some more checking and refactoring of ZatPoint calls.
...
- removed Plane/Floor/CeilingAtPoint functions because they are overkill for the problem they were meant to solve. Calling ZatPoint with adjusted coordinates created with AActor::PosRelative is just as easy in the few places where this is needed.
- made P_HitWater and P_CheckSplash portal aware.
2016-02-17 02:21:26 +01:00
Christoph Oelckers
5611df1f3e
- fixed the portal aware ceiling and floor functions.
2016-02-17 00:31:29 +01:00
Christoph Oelckers
fd7e6ae604
- fixed copy&paste error in LowestFloorAt.
2016-02-16 23:11:20 +01:00
Christoph Oelckers
0ecfc68205
- fixed conditions for PortalBlocksView. Created a new function PortalBlocksSight that's relevant for playsim-related sight checks.
2016-02-16 22:57:56 +01:00
Christoph Oelckers
8d53f6176e
- fixed conditions for PortalBlocksView. Created a new function PortalBlocksSight that's relevant for playsim-related sight checks.
2016-02-16 22:57:03 +01:00
Christoph Oelckers
7da9a0463b
Merge branch 'zmaster'
2016-02-16 22:07:43 +01:00
Christoph Oelckers
bd9907f20f
- missing #includes in GL code.
2016-02-16 22:06:26 +01:00
Christoph Oelckers
93b3982c62
Merge branch 'zmaster' into portal
2016-02-16 22:05:50 +01:00
Christoph Oelckers
6d8879f302
- missing #includes.
2016-02-16 22:04:32 +01:00
Christoph Oelckers
56202c49f1
Merge branch 'master' of c:\programming\doom-dev\zdoom
...
# Conflicts:
# .gitignore
2016-02-16 21:02:13 +01:00
Christoph Oelckers
ae02b2fcaf
- added NextHighestCeiling/NextLowestFloorAt functions. Not tested yet!
2016-02-16 21:00:34 +01:00
Christoph Oelckers
5fd6ccb970
- fixed incorrect #include.
2016-02-16 20:53:52 +01:00
Randy Heit
0f70d10521
Add 'float' and 'state' as possible return types for action functions
2016-02-16 12:09:00 -06:00
Christoph Oelckers
1b88052bba
- started refactoring ZatPoint calls which need to be portal aware.
...
To summarize, anything that just works with map geometry doesn't need to bother, as does the renderer. (i.e. nearly all r_* files, p_floor.cpp, p_ceiling.cpp et.al)
But all calls that are somehow related to actor positions need to be made aware of potential portal transitions:
* added FloorAtPoint, CeilingAtPoint and PlaneAtPoint methods to sector_t, which can be used to calculate a plane's height with relation to a given actor, even if that actor is on the other side of a portal.
* added HighestCeilingAt and LowestFloorAt methods which traverse all ceiling/floor portals until they find an impassable plane.
2016-02-16 16:40:53 +01:00
Christoph Oelckers
45108e9bb8
- added two missing files to CMakeLists.txt.
2016-02-16 12:52:45 +01:00
Christoph Oelckers
22e8678903
- refactored P_CollectConnectedGroups to avoid frequent heap allocations for the common cases
...
* the temporary checking arrays are now static
* the array that gets the returned values only starts allocating memory when the third touched sector group is found. The most common cases (no touched portal and one touched portal) can be handled without accessing the heap.
- did some streamlining of AActor::LinkToSector:
* there's only now version of this function that can handle everything
* moved the FIXMAPTHINGPOS stuff into a separate function.
* removed LinkToWorldForMapThing and put all special handling this function did into P_PointInSectorBuggy.
2016-02-16 12:51:10 +01:00
Christoph Oelckers
c69fd3ac80
- removed redundant SKYBOX enum.
2016-02-16 10:14:37 +01:00
Christoph Oelckers
b9037ef3ee
- added a check to detect self-referencing sectors in the portal setup code because those are problem cases.
2016-02-15 21:49:46 +01:00
Christoph Oelckers
f24bf7e622
- separated FCheckPosition and its FPortalGroupTable substructure into its own header because this was creating too many dependencies on other headers with FCheckPosition in p_local.h and FPortalGroupTable in portals.h.
2016-02-15 13:40:31 +01:00
Christoph Oelckers
9608252873
- copied over some stuff from the abandoned portals branch.
2016-02-15 13:11:31 +01:00
Christoph Oelckers
5664cee2e5
- fixed: The check for leftover portal sectors was not correct. It only checked the sectors the portal thing was in and those were already processed in the first phase.
...
- improved: If there's an offset mismatch, do not print group numbers as they are utterly meaningless. Instead look for a sector in each group and report those.
- added a copyright notice and some comments to portals.cpp.
2016-02-15 12:35:40 +01:00
Christoph Oelckers
afc631b537
- this wasn't saved for last night's commit.
2016-02-15 09:25:48 +01:00
Christoph Oelckers
6adb069506
- rewrote p_local.h so that it doesn't pull in the entire bunch of headers.
...
This was to resolve some circular dependencies with the portal code.
The most notable changees:
* FTextureID was moved from textures.h to doomtype.h because it is frequently needed in files that don't want to do anything with actual textures.
* split off the parts from p_maputl into a separate header.
* consolidated all blockmap related data into p_blockmap.h
* split off the polyobject parts into po_man.h
2016-02-15 02:14:34 +01:00
Christoph Oelckers
405db83393
- added a function which collects all portal group an actor would touch if standing in a given position.
2016-02-15 00:53:59 +01:00
Christoph Oelckers
0dce22ce85
- some portal considerations.
2016-02-14 21:02:18 +01:00
Christoph Oelckers
5af53c0e62
- fixed a few more sector movers which calculated their movement at (0,0) instead of inside the sector.
2016-02-14 18:53:00 +01:00
Christoph Oelckers
b60069bb26
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/p_spec.cpp
# src/r_bsp.cpp
# src/r_data/r_interpolate.cpp
# wadsrc/static/xlat/eternity.txt
2016-02-14 18:20:56 +01:00
Christoph Oelckers
126c80d597
- create the portal group table.
2016-02-14 18:16:59 +01:00
Christoph Oelckers
c338b9cde3
- some more portal preparation .
2016-02-14 16:26:27 +01:00
Christoph Oelckers
141065c3d5
- fixed: positioning of camera textures on 2-sided walls was not correct.
2016-02-14 14:33:52 +01:00
Christoph Oelckers
d5a1004c41
- some preparations for portal stuff:
...
* set up linked sector portals so that everything that will eventually have to be considered is present, even though the software renderer currently can't handle those adequately.
* tag all skybox things with a type so that they can easily be distinguished at run time.
* fill in the linked portal types in xlat/eternity.txt.
2016-02-14 13:12:03 +01:00
Christoph Oelckers
993a840630
- bring formatting in line with GZDoom's version of this function.
2016-02-14 12:33:47 +01:00
Christoph Oelckers
ca87e2fa3c
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
2016-02-13 15:36:04 +01:00
Christoph Oelckers
e42dbb5087
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/sound/oalsound.cpp
2016-02-13 14:56:03 +01:00
Christoph Oelckers
340faef1ec
- fixed a few 64-bit warnings.
2016-02-13 13:37:28 +01:00
alexey.lysiuk
ce8b2974a3
Handle inability of OpenAL implementation to return number of available sources
...
OpenAL specification doesn't require alcGetIntegerv() to return meaningful values for ALC_MONO_SOURCES and ALC_MONO_SOURCES.
At least Apple's OpenAL implementation returns zeroes, although it can generate reasonable number of sources.
2016-02-13 11:11:02 +02:00
Randy Heit
01bed05275
Do not use fast math for the node builder
...
- The node builder generates data used by the playsim, so should be as
consistant as we can manage across compilers and architectures.
2016-02-12 16:27:47 -06:00
Christoph Oelckers
f7e27032dc
- fixed: The default vertical spread for the BFG tracers was set to 32*FRACUNIT instead of 32*ANGLE_1.
2016-02-12 18:55:18 +01:00
Christoph Oelckers
b818624f58
- enabled fast math for all known non-playsim files in the CMake project.
2016-02-12 12:51:09 +01:00
Christoph Oelckers
0931134a9c
- fixed: part of the special handling of projectiles being spawned near the camera also affected other actors, this caused the fly cheat to break.
2016-02-12 11:20:33 +01:00
Christoph Oelckers
e6328c8432
- enable fast floating point math in the subprojects that can benefit from it: dumb, gme and gdtoa.
2016-02-12 02:02:48 +01:00
Christoph Oelckers
d25455736a
- store floating point parameters for DECORATE properties as doubles.
2016-02-12 01:21:29 +01:00
Christoph Oelckers
6df435c8c5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-11 22:58:16 +01:00
Christoph Oelckers
73cbc59dd9
- replaced double2fixed function with FLOAT2FIXED macro.
2016-02-11 22:57:26 +01:00
Christoph Oelckers
bf03ea496e
- fixed: instant sector movement actions must actually delete the created interpolation right away and not wait until it deletes itself.
2016-02-11 22:03:09 +01:00
Christoph Oelckers
c5c4ec83c2
- ensure thar PRINTNAME_LEVEL always uses uppercase.
2016-02-11 21:45:34 +01:00
Christoph Oelckers
158caf78a0
- more float to double conversion.
...
In particular this removes all assignments of FIXED2FLOAT to double variables because they not only lose precision but also generate unnecessary code.
2016-02-11 21:33:30 +01:00
Christoph Oelckers
34255908b0
- fixed: Initialization of spawn IDs from MAPINFO and DECORATE was in the wrong order. (looks like a badly resolved merging conflict)
2016-02-11 20:41:04 +01:00
Christoph Oelckers
584147b8bb
- removed all occurences of FVector2 and FVector3 from the playsim code.
2016-02-11 20:01:12 +01:00
Christoph Oelckers
64dabc3c0b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-11 19:13:48 +01:00
Christoph Oelckers
33cdb4d816
- replaced all single precision floats in p_slopes.cpp with doubles.
...
I don't think we want to have precision and reliability issues in such a vital part of the engine...
2016-02-11 19:13:29 +01:00
MajorCooke
dcfdb50307
- Fixed: checkz wasn't used.
...
- Use 0 instead of false.
2016-02-10 18:04:59 -06:00
MajorCooke
fefdb266cd
- Fixed: The coordinates need to be converted to doubles first. Also use length instead of length squared.
2016-02-10 17:48:17 -06:00
MajorCooke
e04fe06226
GetDistance Non-Action (Double version)
...
- Added GetDistance(bool checkz, ptr = aaptr_target).
- Returns the distance of an actor. Must be target, master or tracer.
2016-02-10 17:13:50 -06:00
Christoph Oelckers
646f7a1f90
Merge branch 'ChaseDontTurnScript' of https://github.com/MajorCooke/zdoom
2016-02-10 22:47:41 +01:00
Christoph Oelckers
d712686122
- fixed: A_CountdownArg could no longer access the first arg.
...
The latest bit of refactoring turned a '<0' check into '>0', while it should have been '>=0'.
2016-02-10 21:56:45 +01:00
Christoph Oelckers
7e45c49c2f
- fixed: The expression evaluator must ignore the action function symbol for ACS_NamedExecuteWithResult.
...
This is necessary because otherwise the incompatible action function will take precedence over the special handling for this inside FxFunctionCall.
2016-02-10 21:48:28 +01:00
Christoph Oelckers
1098093ead
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-10 20:49:32 +01:00
Christoph Oelckers
6a408b1a99
- added missing include to gl_walls.cpp
2016-02-10 20:49:06 +01:00
Christoph Oelckers
4428d073d5
- fixed: code generation for floating point negation was wrong.
2016-02-10 20:08:19 +01:00
Christoph Oelckers
1c0cd16d3f
- fixed: AActor::SetState must restore the 'state' member to the actual calling state after it detected OF_StateChanged.
...
This is needed to decide how the '####' and '----' placeholders should behave.
2016-02-10 18:13:20 +01:00
Christoph Oelckers
d18a839836
- to prevent further occurences of ValueType == 0 being misinterpreted, change it to signify unknown value type and ensure that any real type is non-zero.
2016-02-10 17:11:50 +01:00
Christoph Oelckers
85a3cd984d
- fixed: ParseParameter should not make any assumptions about the necessity of a type cast between int and float.
...
With late resolving it cannot be guaranteed at this point and caused some incorrectly compiled code. Since the cast gets optimized away anyway when not needed there's no point being this selective with applying it.
2016-02-10 17:06:33 +01:00
Christoph Oelckers
a7254a4af5
- removed the conversion operators from the fixedvec structs (again)
...
They must have been accidentally left in by not properly resolving a merge conflict, I guess.
2016-02-10 14:43:04 +01:00
Christoph Oelckers
d1b2ef5368
- some refactoring of olddecorations.cpp to move some repeated code into a subfunction.
2016-02-10 14:38:08 +01:00
Christoph Oelckers
b5029e0976
- call the native A_BossDeath directly instead of going through the VM-enabled action function.
...
- undo some formatting screwup in a_clericstaff.cpp.
2016-02-10 13:57:21 +01:00
Christoph Oelckers
dd55e0a4c4
- cleaned up a_painelemental.cpp.
...
No need to expose VM stuff this openly here.
2016-02-10 13:34:16 +01:00
Christoph Oelckers
e2de258498
- remove debug output.
2016-02-10 12:09:14 +01:00
Christoph Oelckers
3e5d1feecd
- fixed: A_CheckProximity could return unmorphed player pawns of currently morphed players.
2016-02-10 11:58:54 +01:00
Christoph Oelckers
dde9336235
- silence floating point conversion warnings in oalsound.cpp
2016-02-10 11:29:32 +01:00
Christoph Oelckers
15177c34f9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-10 10:05:14 +01:00
Christoph Oelckers
bc616dbf06
- fixed: APowerupGiver::PowerupType also needs replacement handling for placeholder classes.
2016-02-10 10:04:52 +01:00
MajorCooke
e043a89f15
Forgot to save this with the last commit.
2016-02-09 23:19:28 -06:00
MajorCooke
e73a737350
When about to hit a new floor, don't change the direction of the actor if STOPIFBLOCKED is up.
2016-02-09 23:16:15 -06:00
MajorCooke
ebe6cef7cc
This was a little too far in.
2016-02-09 22:57:54 -06:00
MajorCooke
4fcc9efea0
- Fixed A_Wander calling --movecount too soon.
...
- Also added NORANDOMTURN flag accountability for A_Wander.
2016-02-09 22:45:59 -06:00
Braden Obrzut
65b70dedaa
- Fixed: Heretic powered firemace balls didn't seek their target.
2016-02-09 23:34:14 -05:00
Braden Obrzut
f33993dcb5
- Load OpenAL at runtime for all platforms because I can't think of a good reason not to handle them all the same right now.
2016-02-09 22:40:19 -05:00
Christoph Oelckers
012f10400c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-10 00:49:35 +01:00
Christoph Oelckers
3358181f18
- cleaned up the class data organization:
...
* moved RestrictedToPlayerClass and ForbiddenToPlayerClass arrays to AInventory.
* moved all copy-from-parent code into DeriveData functions.
2016-02-10 00:46:51 +01:00
Christoph Oelckers
6ce0c9f78e
- split up PClass::Derive and its child functions because part of them is also needed when initializing an inherited native class with the properties of its parent - but calling the base version in PClass is not possible.
...
- moved a few AActor properties out of the EXE so that I could easily test if it works.
2016-02-10 00:17:00 +01:00
Christoph Oelckers
b484cbf18a
- fixed: It is not guaranteed that the class object that is created by FindClassTentative actually matches the real object that is required later, so it needs to be replaced wherever it could be referenced once the real object is created.
...
- removed some unneeded code from earlier attempts to fix the class type resolving issue.
2016-02-09 23:08:51 +01:00
Christoph Oelckers
ff70cf1ee7
- fixed: Resolving non-constant DECORATE expressions must be delayed until everything has been parsed.
...
If done as before, forward-declared classes cannot be found, and the immediate resolving is only needed for constant expressions, so explicitly enabling it in the 4 places where it is needed ensures that those unresolvable expressions remain intact until the final processing pass righr before the code generator is started.
2016-02-09 19:02:44 +01:00
Christoph Oelckers
5261acce1d
- undid incorrect part of CheckClass fix.
2016-02-09 17:55:43 +01:00
Christoph Oelckers
bd98182095
- fixed: The check for missing textures in Vavoom skyboxes was inverted.
2016-02-09 15:23:45 +01:00
Christoph Oelckers
d1f741a53d
Merge branch 'master' of c:\programming\doom\zdoom
2016-02-09 15:07:16 +01:00
Christoph Oelckers
bcfb437302
- fixed message output.
2016-02-09 15:06:55 +01:00
Christoph Oelckers
15d5a5256f
Merge branch 'master' of ZDoom
...
# Conflicts:
# .gitignore
# src/win32/i_system.cpp
2016-02-09 14:41:31 +01:00
Christoph Oelckers
78ac944242
- allow optional terrain definitions
...
... because any Doom terrain WAD would otherwise spam the logfile with messages when running an error log batch.
2016-02-09 14:38:42 +01:00
Christoph Oelckers
4d2a52418f
- added an errorlog option.
...
This cuts down on as much message noise as possible, outputs everything to a file specified as a parameter and then quits immediately, allowing this to run from a batch that's supposed to check a larger list of files for errors.
Multiple outputs get appended if the file already exists.
2016-02-09 14:20:49 +01:00
Christoph Oelckers
6c92525fcd
- added an option to FindClassTentative to make eventual failure to declare the missing class non-fatal.
...
Damn those old mods with broken actor references. Thanks to those FxClassTypeCast may not throw fatal errors.
2016-02-09 12:26:00 +01:00
Christoph Oelckers
26b657b637
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-09 11:51:39 +01:00
Christoph Oelckers
8823b60c0d
- fixed: FxClassTypeCast must use FindClassTentative to get the class type.
...
This function may well be invoked before a class is actually defined, so it needs to create a placeholder to be filled in later.
2016-02-09 11:51:19 +01:00
John Palomo Jr
88f6157984
Fixed: Player color slider size/position was wrong when using language strings.
2016-02-09 02:49:28 -05:00
Randy Heit
f0b4962052
Fix: CountInv must return a value if the caller's expecting one
2016-02-08 22:21:42 -06:00
Randy Heit
8d159b8506
Add OF_StateChanged handling to NoDelay
2016-02-08 22:11:42 -06:00
Christoph Oelckers
eb7a908a92
- account for removed bam2rad function.
2016-02-08 22:06:26 +01:00
Christoph Oelckers
0678a469de
Merge remote-tracking branch 'remotes/zdoom/master'
...
# Conflicts:
# src/win32/i_system.cpp
# tools/re2c/re2c.vcproj
2016-02-08 21:47:19 +01:00
coelckers
1ca2293983
Merge pull request #538 from MajorCooke/CountInv
...
CountInv(itemtype, ptr_select)
2016-02-08 21:06:30 +01:00
Christoph Oelckers
0a7b17c469
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-08 21:01:46 +01:00
Christoph Oelckers
ceba4b0dae
- fixed: old style DECORATE must use exactly the same method to store the damage function as the modern version.
...
The difference in handling crashed with Daedalus.
2016-02-08 21:01:25 +01:00
MajorCooke
124e0458cf
- Fixed: A_CheckProximity could trigger an assert because the flags and ptr were not flagged as optional.
...
- Fixed: CPXF_ANCESTOR no longer worked for some reason because apparently the IsAncestorOf() functionality has changed. Use IsKindOf instead.
2016-02-08 10:26:18 -06:00
Christoph Oelckers
c940c2ba81
- fixed: The counters for the whirlwind were initialized too late, the first time they are needed is in P_CheckMissileSpawn, which gets called from inside P_SpawnMissile. Also took the opportunity and moved them to properties that are accessible from DECORATE.
2016-02-08 13:34:54 +01:00
Christoph Oelckers
43b4d452db
Merge branch 'ChaseThresholdScript' of https://github.com/MajorCooke/zdoom
...
# Conflicts:
# src/version.h
2016-02-08 13:06:08 +01:00
Christoph Oelckers
6d0ef7a9da
- added conversion macros to convert floating point angles to angle_t, using xs_Float.h, and replaced all occurences in the code with them (let's hope I found everything.)
...
Converting a floating point value that is out of range for a signed integer will result in 0x80000000 with SSE math, which is used exclusively for this purpose on modern Visual C++ compilers, so this cannot be used anywhere.
On ARM there's problems with float to unsigned int conversions.
xs_Float does not depend on these
2016-02-08 12:10:53 +01:00
Randy Heit
7b42093dc9
Revert "- fixed incorrect code generation for '||' operator (at least I hope it's fixed now.)"
...
This reverts commit 2a89a9f1d8
.
2016-02-07 21:59:45 -06:00
Randy Heit
ecef5647d4
Merge branch 'scripting'
2016-02-07 21:58:38 -06:00
Randy Heit
138cdccaf9
Fix code generation for && and ||
...
- The test condition should be the same for both sides of the operators.
2016-02-07 21:56:56 -06:00
Christoph Oelckers
2a89a9f1d8
- fixed incorrect code generation for '||' operator (at least I hope it's fixed now.)
2016-02-07 21:36:02 +01:00
Christoph Oelckers
5b74d417fa
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-07 16:32:11 +01:00
Christoph Oelckers
e3bf1dd92b
- for ARM compatibility, direct float -> unsigned int conversions should be avoided.
2016-02-07 16:31:55 +01:00
alexey.lysiuk
7fa5cb788b
Fixed regression with getting/setting user variables
...
See http://forum.zdoom.org/viewtopic.php?t=50727
2016-02-07 15:32:55 +02:00
Christoph Oelckers
f625be61a2
- fixed: CMake should not disable OpenAL on Windows if it can't find the library (which is neither needed nor requested anymore.)
2016-02-07 13:30:28 +01:00
Christoph Oelckers
111e97e47c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-07 12:27:29 +01:00
Christoph Oelckers
fcb7553166
- fixed offset calculation in A_VileAttack.
2016-02-07 12:27:11 +01:00
coelckers
f2f65d7f31
Merge pull request #545 from MajorCooke/facefix
...
A_Face Fix
2016-02-07 11:49:19 +01:00
Christoph Oelckers
7226a23d08
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-07 11:36:28 +01:00
Christoph Oelckers
3675492ab4
- fixed DEHACKED code pointer validation for real.
...
The first fix missed a second place where this happened and was incomplete.
Anything usable by Dehacked must be VARF_ACTION and VARF_MEMBER in order to work as intended.
2016-02-07 11:36:09 +01:00
John Palomo Jr
0619245280
Fixed: ValueText didn't read language strings from OptionValues when using the third parameter.
2016-02-07 03:21:18 -05:00
MajorCooke
10fec95cd5
- Fixed: the last FAF_NODISTFACTOR flag was never removed.
2016-02-07 01:36:59 -06:00
Randy Heit
5ee988f607
Fixed: Applying reverb with FMOD 4.36.yy killed sound
...
- It turns out that the FMOD_REVERB_PROPERTIES structure actually changed
with 4.36.00 and not with 4.38.00.
2016-02-06 19:29:13 -06:00
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
coelckers
297ffc5889
Merge pull request #536 from edward-san/pclass_alloc_mismatch
...
- Fixed alloc/dealloc mismatch in PClass code.
2016-02-05 11:24:06 +01:00
Christoph Oelckers
3a57036f60
- a simple command line parameter is probably more suitsble for controlling the disassembly output.
2016-02-05 11:20:32 +01:00
Christoph Oelckers
312117b0bc
- disable script disassembly output by default. It's now controlled by a CVAR.
2016-02-05 10:56:15 +01:00
Christoph Oelckers
353608f2b9
- added a few FString variants for frequently called functions.
2016-02-05 10:52:10 +01:00
Christoph Oelckers
76c5039c63
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-05 10:41:05 +01:00
Christoph Oelckers
8da6483223
- fixed some places where FStrings were incorrectly used.
...
- replace all implicit conversions from FString to const char * in the header files (so that it can be test compiled with the implicit type conversion turned off without throwing thousands of identical errors.)
2016-02-05 10:40:45 +01:00
Christoph Oelckers
c8d25378d5
- fixed type confusion with ?: operator in FMugShot::GetFace.
2016-02-05 10:08:49 +01:00
Braden Obrzut
ba54d73e07
Merge branch 'portals2_visual'
2016-02-05 00:10:46 -05:00
MajorCooke
35b7a5ccc1
Updated for scripting branch merge.
2016-02-04 22:41:02 -06:00
MajorCooke
1f8d425a1e
- Added CountInv(itemtype, [ptr_select]).
...
- Returns an inventory item count.
2016-02-04 21:45:31 -06:00
MajorCooke
3399ed60e0
Updated to scripting branch merge.
2016-02-04 20:17:46 -06:00
Edoardo Prezioso
002177e33f
- Fixed alloc/dealloc mismatch in PClass code.
...
The function 'PClassActor::InitializeNativeDefault' is the only one which didn't allocate the 'Defaults' member variable with M_Malloc. Reported by the Address Sanitizer.
2016-02-05 03:03:34 +01:00
Christoph Oelckers
c995158d52
Merge branch 'maint' of https://github.com/rheit/zdoom
2016-02-05 01:49:12 +01:00
Christoph Oelckers
b2158c5b96
- removed unneeded parameter.
2016-02-05 01:48:53 +01:00
Christoph Oelckers
4751bffd5f
- replaced malloc.h with stdlib.h in thingdef_expression.cpp.
2016-02-05 01:26:29 +01:00
Christoph Oelckers
995169de58
Merge branch 'csgwhy' of https://github.com/Edward850/zdoom
2016-02-05 01:21:01 +01:00
Christoph Oelckers
0b7a06c714
Merge branch 'NewEESpecials'
...
# Conflicts:
# src/fragglescript/t_fs.h
2016-02-05 01:01:39 +01:00
Edward Richardson
f2025e6a2f
Fixed possible issue with GCC/Clang
2016-02-05 12:52:29 +13:00
Randy Heit
b3b0886b64
Merge branch 'scripting'
...
Conflicts:
src/actor.h
src/g_doom/a_doomweaps.cpp
src/g_hexen/a_blastradius.cpp
src/p_enemy.cpp
src/p_enemy.h
src/thingdef/thingdef.h
src/thingdef/thingdef_codeptr.cpp
wadsrc/static/actors/constants.txt
2016-02-04 15:17:22 -06:00
rheit
56359b6f23
Merge pull request #342 from marrub--/fastweaponsfix
...
sv_fastweapons extension
2016-02-04 13:31:47 -06:00
coelckers
d8f880285a
Merge pull request #38 from alexey-lysiuk/restore_window_pos
...
Fixed restoration of window position with OpenGL renderer
2016-02-04 15:47:51 +01:00
Christoph Oelckers
c129cb3ca4
- reinstated software clipping by light volumes for walls.
...
It turned out that using hardware clipping planes exclusively to handle this cost more than it gained.
Now only the expensive or formerly impossible cases of intersecting light volumes or light volumes intersecting with the top and bottom of the wall polygon will use hardware clipping. The trivial cases will go back to software splitting.
2016-02-04 15:34:12 +01:00
alexey.lysiuk
70e569f79c
Fixed restoration of window position with OpenGL renderer
...
Software renderer was not affected as it has maximize window button enabled
2016-02-04 11:57:26 +02:00
Christoph Oelckers
bf066763b7
- fixed: The FPS display should use the actual font info to calculate its size, not just assume that each character is 8*8 pixels.
2016-02-04 01:20:35 +01:00
Christoph Oelckers
0c8a817df4
- fixed wall clipping with 3D lights.
2016-02-04 01:12:18 +01:00
Christoph Oelckers
87f3a8f0cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-03 13:04:16 +01:00
Christoph Oelckers
db766f9fe5
- fixed some warnings.
2016-02-03 13:03:38 +01:00
Christoph Oelckers
f6b64430c3
Revert "Merge tag 'a'"
...
This reverts commit 37578f85b3
, reversing
changes made to 66f053f131
.
After thoroughly checking the submission I had to conclude that it does more things wrong than right so better leave it out.
2016-02-03 11:36:34 +01:00
alexey.lysiuk
b9b0029373
Fixed overlapping of active artifacts with time/latency
...
Active artifacts are now displayed below time and/or latency on alternative HUD
2016-02-03 12:06:32 +02:00
alexey.lysiuk
1bf1fc199b
Adjust latency position depending on time visibility
...
Latency placement is no longer fixed:
* If time is visible, it is placed on top of the screen and latency is placed below
* If time is not visible, latency is placed on top of the screen
Both are displayed on alternative HUD only
2016-02-03 12:06:20 +02:00
MajorCooke
a1c1de9edb
Fixed merge conflicts.
2016-02-02 18:26:20 -06:00
Christoph Oelckers
37578f85b3
Merge tag 'a'
2016-02-03 01:02:13 +01:00
Christoph Oelckers
66f053f131
- on second thought: this shouldn't explode the speakers with too high values.
2016-02-02 15:02:06 +01:00
Christoph Oelckers
e12174ffc1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-02 14:53:48 +01:00
Christoph Oelckers
c002c2fde9
- added a mastervolume setting for DUMB because its default volume is far less than all the other music options.
2016-02-02 14:45:32 +01:00
Christoph Oelckers
df9c59bcff
- moved gl_builddraw.cpp to a new 'unused' directory and also added gl_sections, which is needed by the Build algorithm to preprocess the level.
2016-02-02 12:07:07 +01:00
coelckers
5d19901cb7
Merge pull request #529 from alexey-lysiuk/fix_creative_openal
...
Fixed build with Creative Labs OpenAL SDK
2016-02-02 12:01:25 +01:00
Christoph Oelckers
d797415745
- fixed: dynamic lights did not relink themselves when their position changed.
2016-02-02 11:58:00 +01:00
Christoph Oelckers
22e9fc9b76
- re-fixed FTexture::CheckTrans
...
The original broken code had it always reset the translucency info to 'not present'.
The first fix completely removed that line, although it was merely misplaced, but still necessary to avoid constant re-checking of the same texture.
2016-02-02 11:37:39 +01:00
Christoph Oelckers
0db679c90d
- fixed clang compile error.
2016-02-02 10:53:56 +01:00
Christoph Oelckers
046541c7ef
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-02 10:46:50 +01:00
alexey.lysiuk
90dd6b61b4
Fixed build with Creative Labs OpenAL SDK
...
Tested with
* Creative OpenAL from https://www.openal.org/downloads/OpenAL11CoreSDK.zip
* OpenAL Soft from http://kcat.strangesoft.net/openal-binaries/openal-soft-1.17.1-bin.zip
2016-02-02 10:29:23 +02:00
Randy Heit
c9d81dff53
Use absolute value of Y scale for 3D midtex
...
- Somebody might want to set a midtexture's Y scale negative to flip it
vertically. I'm pretty sure this would mess up 3D mid textures if we
don't make it positive again for those.
2016-02-01 21:07:09 -06:00
Randy Heit
6b6c1af0dc
Add support for Y flipped non-vertically tiling masked midtextures
2016-02-01 21:07:09 -06:00
Randy Heit
03f0e1dc5c
Remove something that looks like 3D floor development garbage
2016-02-01 21:07:08 -06:00
Christoph Oelckers
6b75f14c0f
- fixed some Linux/GCC warnings.
2016-02-02 01:04:59 +01:00
Christoph Oelckers
420d370a4d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-01 21:58:57 +01:00
Christoph Oelckers
9453a8a7e6
- reuse the same vertex buffer data for all slices of a decal.
2016-02-01 21:50:55 +01:00
Christoph Oelckers
f11f86f05d
- added light plane clipping for decals as well.
2016-02-01 21:45:26 +01:00
Christoph Oelckers
faa08410de
- handle nocoloredspritelighting with 3D light splitter
2016-02-01 19:10:15 +01:00
Christoph Oelckers
fe3e56c6bc
- fixed: oalload.h should only do stuff is NO_OPENAL is not defined.
2016-02-01 18:49:12 +01:00
Christoph Oelckers
7aeeb36560
Merge branch 'Clip3DLights'
2016-02-01 18:14:52 +01:00
Christoph Oelckers
5dba3b7017
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-01 18:14:39 +01:00
Christoph Oelckers
2c55dcca27
- use hardware clipping to apply 3D lights to sprites. This solves all the problems with properly lighting models and billboarded sprites.
...
- add some restrictions for the checks that exclude sprites which are too close to the camera. Most importantly, for clipping the first frame of a projectile, do not solely clip against the projectile's speed but use the player's radius as a limiting factor to avoid too large distances.
2016-02-01 18:14:00 +01:00
Christoph Oelckers
1ad310e69b
- only draw visible 3D-lights.
2016-02-01 16:13:07 +01:00
Christoph Oelckers
ee045371a3
- On Windows, use LoadLibrary/GetProcAddress to load OpenAL function addresses.
...
The reason for this is that on my system, the static or delay loaded method always picks the (obsolete) system-installed OpenAL version (needed for some old games) which is not wanted here if there's another one in the local ZDoom directory.
This also removes the dependency on the broken import library that comes with OpenAL Soft which causes compile errors with more modern MSVC compilers on default settings.
2016-02-01 14:02:25 +01:00
Christoph Oelckers
e0608f50d1
- create a separate translation table for Heretic's rain pillar.
...
These objects are supposed to be bright, but the standard translations for player do not take this into account, creating dark and/or invisible projectiles depending on the color being used.
The new translation uses hue and saturation from the player color, but combines brightness from the original color with the one for the player in an 8:2 ratio, so that no matter for the player color, these always remain bright and visible.
2016-02-01 10:45:33 +01:00
Christoph Oelckers
58196f77ff
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-01 10:00:39 +01:00
Christoph Oelckers
fd2828b1fe
- fixed typo in monster movement code.
2016-02-01 10:00:19 +01:00
Randy Heit
2f4dc17954
Add support for face sprite Y flipping
2016-01-31 22:05:32 -06:00
Randy Heit
809a9d801c
Got a flag backwards
2016-01-31 21:23:45 -06:00
Randy Heit
0b9aeb33e1
Fixed potential divide by 0 when drawing voxels
...
- Since voxels can have their origin behind the viewer and still have a
portion visible in front of the viewer, they aren't clipped to MINZ like
face sprites are. The 3D floor handling in R_DrawSprite() neglected to
clamp it when recalculating the diminished light colormap.
- Aside, but R_DrawSprite() probably shouldn't be messing with these
properties at all. Why isn't this done in R_ProjectSprite() before it
ever gets to the drawing part?
2016-01-31 20:52:56 -06:00
Randy Heit
1d0a3d19c8
Fix a part in maskwallscan that was missed for right-edge exclusivity
2016-01-31 20:45:37 -06:00
Christoph Oelckers
bddad29acb
Merge branch 'Clip3DLights'
2016-02-01 01:50:56 +01:00
Christoph Oelckers
0d5386f923
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-01 01:50:41 +01:00
Christoph Oelckers
67fc35e738
- some cleanup of wall processing code.
...
* removed SplitWall function
* split PutWall into PutWall and PutPortal because none of the portal cases needs the overhead for normal walls.
2016-02-01 01:49:49 +01:00
Christoph Oelckers
9305cd86a0
- remove the GLWallLightEntry type. Everything it contains can be retrieved from the existing lightlist just as easily, and this approach avoids a lot of memory allocations.
...
- removed the SplitWall profiling timer because all it measures now is an almost empty function.
2016-02-01 01:03:34 +01:00
Christoph Oelckers
71da7406bd
- since we no longer split walls at 3D floor boundaries, those planes no longer need to be added to the vertex height lists.
2016-02-01 00:42:37 +01:00
Edoardo Prezioso
4cbf752b4d
- Fixed uninitialized variable in level info code.
...
Found with Valgrind.
2016-01-31 23:19:34 +01:00
Christoph Oelckers
a1cd0401e4
- fixed: noclip2 should only set some minimal velocity if the player has none.
2016-01-31 22:38:08 +01:00
Christoph Oelckers
8068fca601
- fixed: player_t::Uncrouch should only reset the view height if the player is actually crouched.
2016-01-31 22:36:37 +01:00
Christoph Oelckers
53a389aafc
- fixed: for untextured walls, the texture must be disabled before rendering.
...
- fixed: untextured walls should never be passed to SplitWall.
- fixed: untextured walls should not be affected by dynamic lights (it's either fog boundaries or outsides of 3D fog volumes.)
2016-01-31 22:24:48 +01:00
Christoph Oelckers
9ce6a7932c
- implemented rendering of 3D lights with clip planes.
2016-01-31 22:04:20 +01:00
Christoph Oelckers
456e71ec4b
Merge branch 'master' into Clip3DLights
2016-01-31 21:36:16 +01:00
Christoph Oelckers
e73e26c15a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-31 21:11:21 +01:00
Christoph Oelckers
5448b335c6
- rewrote render loop for walls. Not working yet.
2016-01-31 21:10:59 +01:00
coelckers
c3cc98b5f3
Merge pull request #523 from alexey-lysiuk/osx_fullscreen
...
Final touches to fullscreen mode on OS X
2016-01-31 16:56:35 +01:00
coelckers
09e2f212a0
Merge pull request #524 from alexey-lysiuk/hexen_mac_beta
...
Added support for Hexen Mac beta
2016-01-31 16:55:23 +01:00
MajorCooke
eb2829ad5e
- Added CBF_DROPOFF to A_CheckBlock. Checks for actors stuck in tall ledges or dropoffs.
2016-01-31 09:45:41 -06:00
Randy Heit
219b6f7c5d
Fix R_DrawFogBoundary for right-edge exclusivity
2016-01-31 06:51:11 -06:00
alexey.lysiuk
1798fab973
Added support for Hexen Mac beta
...
It's very similar to Mac demo but also contains MAP41: Maze like DOS full version 1.0
2016-01-31 12:53:22 +02:00
Christoph Oelckers
4d7e7deea8
Merge branch 'master' into Clip3DLights
2016-01-31 10:10:32 +01:00
Christoph Oelckers
be2fcb4621
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-31 10:09:57 +01:00
alexey.lysiuk
7b0f557514
Enabled zoom window button on OS X
...
Independently from OS version the game will enter fullscreen mode when zoom button is clicked
Window zooming behavior introduced in Yosemite is available on all supported versions of OS X
2016-01-31 10:42:16 +02:00
Randy Heit
240ca2af4c
Use consistant right-edge rules in the renderer.
...
- The original Doom renderer was inclusive for all right edges. This was
fine for the wonky projection it did. This was not fine for a standard
perspective divide, so I had to change walls to be right-edge exclusive
when I changed the projection. I only touched what was needed. Until
now. The right edge is always exclusive now, which should prevent any
more bugs related to mixing the two clusivities incorrectly.
2016-01-30 21:27:35 -06:00
Randy Heit
c1b2861362
Merge the boolean args to EV/P_Teleport into a single flags arg
...
- The flags use TELF_ since DECORATE has an A_Teleport with its
own set of TF_ flags.
- TELF_KEEPVELOCITY is used instead of TELF_HALTVELOCITY, because
there was only one call that ever set bHaltVelocity to false.
2016-01-30 21:27:34 -06:00
Christoph Oelckers
939989dc8c
- fixed crash when trying to cache nodes for a map that has no two-sided walls and no minisegs.
...
Under these conditions there are no partner segs and the glsegextras array is NULL.
2016-01-31 01:05:31 +01:00
Christoph Oelckers
f86535407d
- forgot this.
2016-01-31 00:52:50 +01:00
Christoph Oelckers
1d9ab5c632
- clean out GLWall::SplitWall and instead of actually splitting the wall just attach a list of lights to it.
...
Actual handling will be in the rendering function because this doesn't need multiple vertex transfers to the GPU. All slices can be drawn from the same buffer with different uniform info being set.
2016-01-31 00:45:29 +01:00
Christoph Oelckers
8bc7a0a24e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-30 23:01:36 +01:00
Christoph Oelckers
fc57180d7e
- added necessary state to implement 3D light splitting using hardware clipping planes.
2016-01-30 23:01:11 +01:00
Christoph Oelckers
46024398fe
- fixed: Change FCheckPosition::LastRipped to a TMap so that it can track multiple overlapping actors being ripped during the same tic.
2016-01-30 22:06:04 +01:00
Christoph Oelckers
06fdb6ca45
- fixed: The reverb editor failed to open in fullscreen mode at desktop resolution.
...
According to Blzut3:
The issue happens when the fullscreen resolution is the same as the desktop resolution. In this case WM_DISPLAYCHANGE doesn't occur so the editor never appears. This appears to be fixable by also catching WM_STYLECHANGED since at the very least the window caption will appear/disappear.
2016-01-30 21:49:03 +01:00
alexey.lysiuk
6bce5ddc4b
Scale of player's skin is now preserved on corpses after reborn
2016-01-30 18:30:20 +02:00
coelckers
ccce6f44a2
Merge pull request #518 from Edward850/Particle-clamp
...
Clamped r_maxparticles to the internal limit
2016-01-30 15:21:55 +01:00
Christoph Oelckers
36911bac4b
- fixed memory allocation type mismatch in demo code.
2016-01-30 15:17:46 +01:00
Christoph Oelckers
afcd755c7a
- changed autoaim menu option to a slider which allows a more precise control of the property.
...
- having a value of 5000 as the default for autoaim makes no sense, since this is an angle value that will always be clamped to [0..35]. So now 35 is both the default and the maximum.
2016-01-30 13:43:39 +01:00
Christoph Oelckers
3b5af8484c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-30 12:59:37 +01:00
Christoph Oelckers
0a0a2c4a41
- removed a warning.
2016-01-30 12:59:15 +01:00
Christoph Oelckers
fab186786e
Merge branch 'PlayerTransition' of https://github.com/Edward850/zdoom
2016-01-30 12:52:50 +01:00
Christoph Oelckers
0ddf9db8dd
- fixed: Uncrouching a player also needs to reset the viewheight to its default.
2016-01-30 12:51:15 +01:00
alexey.lysiuk
6166520b33
Do not respawn on damaging floors when sv_samespawnspot is enabled
...
See http://forum.zdoom.org/viewtopic.php?t=47191
2016-01-30 12:50:19 +02:00
Christoph Oelckers
1285dde615
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-30 11:34:13 +01:00
Christoph Oelckers
b84207a089
- use scaling, render style and alpha when drawing the cast call.
2016-01-30 11:33:55 +01:00
Edward Richardson
40d90ba325
Game still needs to abort if no starts exist at all
2016-01-30 22:26:47 +13:00
Edward Richardson
fe52f98459
Clamped r_maxparticles to the internal limit
2016-01-30 22:04:09 +13:00
Edward Richardson
c1e362ee83
Added level transition spawning for missing starts
...
- Additional player bodies are spawned for any absent starts in co-op.
- Removed now-redundant bot start limitation
2016-01-30 22:02:27 +13:00
Braden Obrzut
5317a92d11
Merge branch 'RadiusGiveExp2'
2016-01-30 00:27:44 -05:00
Braden Obrzut
5d6e8a7338
- Fixed: Possible timer overflow in PowerTimeFreezer.
2016-01-30 00:18:38 -05:00
Braden Obrzut
a34a7ace18
- Some resolutions between 320x200 and 640x400 had non-square clean scaling factors. Maybe there was a reason for this in the past, but I can't think of a case where it'd actually look better to have 1:2 scaling in the menus and someone reported it.
2016-01-29 23:37:38 -05:00
Braden Obrzut
1fcb9fcf06
- Fixed: Crash when automatically switching sound backends due to failure.
2016-01-29 23:10:10 -05:00
Christoph Oelckers
37ac6ef9a0
- fixed: Translucency detection for GL textures was broken.
...
- fixed: Textures which are already scaled should not be upsampled.
- fixed: The transparency check in the upscaling code checked the wrong modes for exclusion when handling translucent textures.
2016-01-30 02:13:47 +01:00
Christoph Oelckers
4a9b2bf76d
- fixed: The stencil cap drawer did not properly advance the vertex pointer.
2016-01-30 01:08:11 +01:00
Christoph Oelckers
342f1abcc7
- fixed: flickering dynamic lights with their first intensity value larger than the second one weren't properly linked into all touching sectors.
2016-01-30 00:45:47 +01:00
MajorCooke
eeca536d9a
Clean up a few things.
2016-01-29 10:41:05 -06:00
Christoph Oelckers
d037493ffe
- fixed handling of FF_FADEWALLS on 3D floors. The problems with the old method became quite obvious in the demo map after the light list bug got fixed.
2016-01-29 17:13:14 +01:00
Christoph Oelckers
d0b194563a
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/p_3dfloors.cpp
2016-01-29 16:36:24 +01:00
Christoph Oelckers
a41dc24086
- fixed: 3D lights should override the sidedef's regular light completely, that includes relative light added by UDMF's 'light' property.
...
- Renamed the 'noabsolute' parameter in side_t::GetLightLevel to 'is3dlight', what it actually is, to avoid the confusion that caused the abovementioned error.
- fixed: The Down2Up render path for sides of 3D floors had the 'is3dlight' check inverted.
2016-01-29 14:55:31 +01:00
Christoph Oelckers
c6c15fe83c
- fixed: AActor::SpawnPoint[2] must store the actor's height above the sector's floor, not above floorz. floorz will represent the current floor the actor is standing on, which may be a 3D floor or a 3D midtexture, but both respawn functions which use this value work from the actual sector floor.
2016-01-29 13:40:37 +01:00
Christoph Oelckers
08e5e1c145
- restored the velocity threshold checks in A_MaceBallImpact2 and A_DeathBallImpact to their original Heretic form, minus the check for floorz, to account for potential positioning issues with slopes.
...
These checks had some major issues:
* they calculated incorrect positive values for hitting a ceiling
* the way they used the plane equations made some incorrect assumptions.
* velz has the velocity reduction from bouncing already factored in from the calling code so doing it here again is not necessary.
2016-01-29 12:44:38 +01:00
Christoph Oelckers
fe271b4e78
- fixed: A_MaceBallImpact2 was missing a check for hitting some liquid terrain.
2016-01-29 12:21:35 +01:00
Christoph Oelckers
7b1fbe0a02
- fixed: P_TeleportMove was missing checks for THRUACTORS and THRUSPECIES flags.
2016-01-29 11:29:47 +01:00
Christoph Oelckers
f8d5430c06
- fixed: When changing 'noclip2' some minor lateral velocity should be set to ensure that all internal variables contain proper values.
2016-01-29 11:11:10 +01:00
Christoph Oelckers
94611588d5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-29 10:55:04 +01:00
Christoph Oelckers
674b81a6b1
- fixed: The 3D floor light list should use the last light starting above the ceiling, not the first one.
...
- fixed: ExtraFloor_LightOnly type 2 was behaving like type 0. Instead anything interrupting it should reset to the sector's own light level.
2016-01-29 10:54:44 +01:00
Randy Heit
87dee5c611
Fixed: Co-op players could spawn at (0,0) if no start spots for them
...
- Check if a co-op start exists. If not, pick one at random.
- Don't telefrag other players when spawning in co-op games, since
you're allowed to move out of other players now.
2016-01-28 20:08:09 -06:00
Christoph Oelckers
c5161ee748
- fixed: A_Face* mixed angle and distance values in the same parameter. Fixed by separating these into two.
...
- removed the intermediate A_Face* functions, except a bare-bones A_FaceTarget as needed by the monster AI code.
2016-01-28 20:44:10 +01:00
MajorCooke
772f086a5e
Fixed broken aiming with A_CheckLOF.
2016-01-28 12:24:40 -06:00
Christoph Oelckers
6715a97d6e
- removed debug output from previous commit.
2016-01-28 12:04:47 +01:00
Christoph Oelckers
dfcee625db
- fixed: The ACS String garbage collector only looked at the active script's stack but never considered a recursive call from another script.
...
Fixing this required adding an external list of active stack objects that the garbage collector can access.
A nice side effect: It's no longer necessary to pass around the stack info to various functions that might end up triggering a garbage collection.
2016-01-28 11:56:47 +01:00
Christoph Oelckers
1a4b3bbe11
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-28 09:20:55 +01:00
Christoph Oelckers
724e625f16
- fixed: Loading an old savegame from before the sector damage refactoring cleared the extended Boom sector flags before processing them.
2016-01-28 09:20:27 +01:00
MajorCooke
2da868656e
Finalize loop and prioritize missile searching.
2016-01-27 15:22:05 -06:00
MajorCooke
846f14c03d
Remove the loop.
2016-01-27 14:56:06 -06:00
MajorCooke
79177cf98e
Set up the subfunction.
2016-01-27 14:54:46 -06:00
Christoph Oelckers
b5c3ced9a9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-27 21:27:26 +01:00
rheit
f36bdc474d
Merge pull request #421 from alexey-lysiuk/video_mode_menu
...
Fixed selection of empty items in Video Mode menu
2016-01-27 13:30:05 -06:00
Randy Heit
2d40874cfa
Make finishgame CCMD net-aware
2016-01-27 13:19:15 -06:00
MajorCooke
9a422245f3
- Fixed a couple issues with calling P_NewChaseDir from wrongful P_Move priority.
2016-01-27 13:11:22 -06:00
Randy Heit
b22a909829
Add nodelay handling to FastProjectile
2016-01-27 13:08:23 -06:00
MajorCooke
f6b3b269a7
Fixed missing movecount decrement with blocked actors.
2016-01-27 10:51:51 -06:00
MajorCooke
7798eadb8b
Moved the P_Move back inside to where it was beforehand.
2016-01-27 10:47:36 -06:00
MajorCooke
275cdcd958
Renamed A_FaceVelocity to A_FaceMovementDirection.
2016-01-27 10:12:13 -06:00
coelckers
c5379c749e
Merge pull request #428 from MajorCooke/A_CheckSPecies
...
Added A_CheckSpecies(state jump, name species, ptr = AAPTR_DEFAULT)
2016-01-27 16:45:16 +01:00
MajorCooke
ece6fa776c
- Renamed CHF_DONTANGLE to CHF_NODIRECTIONTURN.
...
- A_Wander now shares CHF_NODIRECTIONTURN and CHF_NORANDOMTURN instead of having its own flags.
2016-01-27 09:35:19 -06:00
Christoph Oelckers
238990c871
don't leave any gaps in the used clip planes.
2016-01-27 12:32:39 +01:00
Christoph Oelckers
47db3252f4
- it's really not necessary to waste two clip planes for reflective surfaces because only one can be active at any time.
2016-01-27 12:30:55 +01:00
Christoph Oelckers
3c16a23865
- when rendering mirrors, discard subsectors lying behind them.
2016-01-27 12:02:43 +01:00
Christoph Oelckers
4b0ce7a8db
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-27 11:21:39 +01:00
Christoph Oelckers
7c6e070244
- fixed: line spacing was taken from a different variable in conversation display and mouse coordinate code.
2016-01-27 11:19:30 +01:00
Christoph Oelckers
4eb38f0381
- fixed: plane heighr calculations for Floor_Lower/RaiseByValue should be done at a point that's actually near the affected sector, not at (0,0), otherwise there's a risk of fixed point overflow.
2016-01-27 11:01:38 +01:00
Christoph Oelckers
c3047f448e
- fixed: When MIDI->Open returns failure, the MIDI device needs to be deleted. Otherwise the dead device object can trigger an assert later.
2016-01-27 10:39:21 +01:00
Christoph Oelckers
f2666f70dd
- removed unneeded check for 'listenactor' in S_UpdateSounds.
2016-01-27 09:56:40 +01:00
Christoph Oelckers
d2beec4585
- ensure that AInventory::Touch attributes everything to the correct player, even if the touching action results in a morph.
2016-01-27 00:56:40 +01:00
Christoph Oelckers
8993f84087
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-26 22:27:42 +01:00
Christoph Oelckers
2a1fa60aa6
Merge branch 'CheckProxExpPruned' of https://github.com/MajorCooke/zdoom
2016-01-26 18:49:03 +01:00
MajorCooke
1c0ef1d367
Removed CPXF_NODISTANCE.
2016-01-26 10:00:20 -06:00
Christoph Oelckers
66ce8915fb
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-26 15:00:54 +01:00
coelckers
e397b5a475
Merge pull request #511 from MajorCooke/CheckLOFpitch
...
A_CheckLOF Pitch FIx
2016-01-26 14:44:05 +01:00
MajorCooke
cb43ce9cfc
- Fixed: A_CheckLOF was doubling up on its pitch and reversing it when without a target.
2016-01-26 07:20:55 -06:00
Christoph Oelckers
685385635f
- made adjustments to FGLBitmap for the changes in its base class.
2016-01-26 12:05:40 +01:00
Christoph Oelckers
371225858d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-26 11:40:32 +01:00
Christoph Oelckers
4f0cfa29b4
- missed a '!'.
2016-01-26 10:50:31 +01:00
Christoph Oelckers
623276f5a6
- fixed: All access to weapon info in DECORATE functions should be restricted to when they get called from an actual weapon, not from a CustomInventory item.
...
Issues this fixes:
* all original Doom attack functions unconditionally altered the flash state.
* A_FireOldBFG, A_RailAttack and A_Blast never checked for a valid ReadyWeapon.
* CustomInventory items could deplete an unrelated weapon's ammo.
2016-01-26 09:43:47 +01:00
Randy Heit
9f8dee45c4
Fixed: 0 was accidentally not allowed as transparent for grayscale
...
- I don't know what I was thinking when I wrote that.
2016-01-25 21:44:08 -06:00
Randy Heit
450b6de384
cRGBT::A should return 255, not 1. Whoops.
2016-01-25 21:31:21 -06:00
Randy Heit
0fc40cff0a
Fix some rare PNG tRNS chunk cases
...
- For grayscale images drawn with the paletted renderer, the value here
was treated as always full range [0,65535]. The max value is actually
determined by the bit depth.
- For RGB images drawn with the paletted renderer, the tRNS chunk was
ignored.
- For grayscale images drawn with the RGB renderer, having a tRNS chunk
present resulted in undefined behavior.
- For RGB images drawn with the RGB renderer, the tRNS chunk was ignored.
2016-01-25 21:23:53 -06:00
Randy Heit
61d033328b
Don't show "exited the level" messages after the level has exited
2016-01-25 20:18:33 -06:00
Randy Heit
774c136532
Fixed: Player.FallingScreamSpeed used minz as the maxz as well
2016-01-25 18:55:05 -06:00
Christoph Oelckers
29c38b23f3
- last commit was missing actionspecials.h.
2016-01-26 00:39:25 +01:00
MajorCooke
0be09f54bd
Particles can now scale up to 65535.
2016-01-25 15:44:11 -06:00
Christoph Oelckers
316389c7f9
- fixed: Ceiling_LowerByValue(Times8) were missing the 'crush' parameter.
...
- fixed typo in 5 minute door sector type (it used FRACUNIT instead of TICRATE.)
2016-01-25 21:27:19 +01:00
Christoph Oelckers
d8d4679471
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-25 21:13:04 +01:00
Christoph Oelckers
cf43eb6c6d
- limit particle size to 127
2016-01-25 21:08:09 +01:00
Christoph Oelckers
73ee500bea
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-25 18:58:42 +01:00
Christoph Oelckers
cef2cf4e6d
fixed parameter count for Sector_SetDamage.
2016-01-25 18:58:23 +01:00
Christoph Oelckers
7b5a77a8d8
- added various action specials and parameter extensions defined by Eternity Engine.
...
The reason for defining them is to be able to fill out the Eternity translation table for GZDoom's Extradata parser.
Most of the new specials are mere specializations of ZDoom's Generic_* functions and occupy positions above 255 to avoid filling up the last remaining free slots available for Hexen format maps.
Allowing action specials greater than 255 required a few changes:
* all access to action specials is now through a small set of access functions.
* Two new PCodes were added to ACC to handle these new specials from scripts.
* a minor change to the network protocol, so netgame and demo version numbers were bumped.
* FS_Execute is now properly defined in p_lnspec.cpp.
Two of the newly added specials - generalizations of the special 'close Door in 30 seconds' and 'raise door in 5 minutes' sector types, will also be available to Hexen format maps. The rest are limited to use in ACS, UDMF and DECORATE.
This also adds 'change' and 'crush' parameters to most Floor_* and Ceiling_* specials, again to match Eternity's feature set.
2016-01-25 18:49:56 +01:00
MajorCooke
ced35e98fb
Remove needless check.
2016-01-25 10:07:00 -06:00
Braden Obrzut
4d225e7a00
- Fixed: Mac GCC errors due to not recognizing the newly disabled warnings.
2016-01-24 23:03:59 -05:00
coelckers
3c790a80eb
Merge pull request #508 from ChillyDoom/wi_stuff-common-code
...
- Removed duplicate autoskip code.
2016-01-24 16:54:51 +01:00
Chris
1721d70212
- Removed duplicate autoskip code.
2016-01-24 14:44:47 +00:00
alexey.lysiuk
4b210a839a
Fixed uninitialized variable in IOKit controller handler
2016-01-24 14:43:55 +02:00
Christoph Oelckers
be3b84e751
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-24 11:50:54 +01:00
Christoph Oelckers
67f644c898
- fixed inverted NULL pointer check in A_SetAngle.
...
- let COPY_AAPTR check the most common case AAPTR_DEFAULT first instead of running through all the other cases for it.
2016-01-24 11:50:21 +01:00
Braden Obrzut
fd4440cfe4
- Fixed: Intermissions with no screens (such as EndTitle) would result in a double wipe.
2016-01-23 23:34:07 -05:00
Braden Obrzut
fc15be8689
- Improved DrawSwitchableImage keyslot condition to include key species.
...
- Fixed: currentpos command would crash if not in game.
2016-01-23 22:24:12 -05:00
Braden Obrzut
5abacf0b2f
- Fixed: Uninitialized variable on DrawSelectedInventory.
2016-01-23 21:40:19 -05:00
Braden Obrzut
20f7f524ca
- Don't link against sndfile and mpg123 if not compiling with OpenAL support.
2016-01-23 20:09:39 -05:00
Braden Obrzut
88a616da75
- Removed what appears to be a debug breakpoint.
...
- Cleared some GCC and Clang warnings. Mostly static analysis false positives, but one of them generated a pretty massive warning in a release build.
- Use -Wno-unused-result since I doubt we're going to address those unless they actually prove to be a problem (and they only appear in release builds).
2016-01-23 19:36:13 -05:00
Christoph Oelckers
0dabaca7df
- added some range checks to PgUp(PgDown code for option menus.
2016-01-23 21:23:02 +01:00
Christoph Oelckers
c4377b7039
- removed the implicit fixedvec -> TVector conversions because they caused too many problems. Also reviewed all uses of these and made the necessary adjustments. Problems were present in P_SpawnMissileXYZ and P_Thing_Projectile.
...
- replaced some single precision float math with doubles.
2016-01-23 20:44:33 +01:00
Christoph Oelckers
f860a344cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-23 17:50:01 +01:00
Christoph Oelckers
5c8fd4750f
- fixed: FInterpolator::DoInterpolations did not handle terminated interpolations properly.
2016-01-23 17:00:24 +01:00
Randy Heit
c63f65d441
Merge remote-tracking branch 'origin/master' into scripting
...
Conflicts:
src/thingdef/thingdef_codeptr.cpp
wadsrc/static/actors/constants.txt
2016-01-22 20:53:27 -06:00
Eevee (Lexy Munroe)
24f6f1297a
Use ZatPoint(actor)
2016-01-22 16:38:29 -08:00
Eevee (Lexy Munroe)
3e28b195ce
Fix a couple old uses of actor->x and friends
2016-01-22 16:35:43 -08:00
Eevee (Lexy Munroe)
85a82bc6e8
Fix minor typo in comments
2016-01-22 16:35:43 -08:00
Eevee (Lexy Munroe)
c08d865b1b
Extend CheckActor*Texture to look at any non-solid floor
...
Upon deep and personal reflection, I realize this is more consistent
with the TERRAIN change I made.
2016-01-22 16:35:43 -08:00
Eevee (Lexy Munroe)
1ab9d15481
Make CheckActor*Texture also consider swimmable 3D floors
...
An actor standing within a swimmable floor whose ceiling texture is X
and on a solid floor whose texture is Y will now be reported as standing
on both.
2016-01-22 16:35:43 -08:00
Christoph Oelckers
6691358b0a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-22 19:15:24 +01:00
MajorCooke
88f96950b5
Projectiles should set their z to floor, not add it.
2016-01-22 11:47:41 -06:00
Christoph Oelckers
da6fe6cad6
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-22 18:24:36 +01:00
Christoph Oelckers
f4f7bd5d34
- fixed a double/fixed_t mixup in P_SeekerMissile
2016-01-22 18:24:15 +01:00
coelckers
8a9df31db9
Merge pull request #501 from Edward850/MF5_NOINTERACTION-velz-fix
...
Fixed cmf_aimdirection doubling up the spawn Z
2016-01-22 12:32:08 +01:00
Christoph Oelckers
01aaef1528
- fixed: The P_DamageMobj call for damaging sectors should be skipped completely if godmode is on, so that instant damage sectors don't kill an invulnerable player.
2016-01-22 12:16:17 +01:00
Edward Richardson
2034f4e49f
Fixed cmf_aimdirection doubling up the spawn Z
2016-01-22 23:06:09 +13:00
Edward Richardson
2dff9a743c
Fixed Z-Velocity movement for MF5_NOINTERACTION
2016-01-22 22:26:21 +13:00
MajorCooke
823edc4a69
- Cleaned up leftovers.
2016-01-21 21:23:43 -06:00
MajorCooke
b51bbf66b0
- Fixed pointer setting not working due to requiring more than the SET* flags.
...
- Changed search algorithm to be square and utilize fixed_t instead.
2016-01-21 21:15:50 -06:00
MajorCooke
793fc90716
Once more homogenized!
...
- DECORATE: color, flags, lifetime, size, angle, xyz offset/vel/accel, startalpha, fadestep.
- ACS: Similar, minus the angle parameter.
2016-01-21 19:59:33 -06:00
MajorCooke
28502b9a80
- Reorganized A_SpawnParticle parameters.
...
- Decorate order is now color, x/y/zoff, velx/y/z, lifetime, angle, flags, size, startalphaf, fadestepf, accelx/y/z.
- ACS order is now color, xyz offset, xyz velocity, lifetime, fullbright, size, startalpha, fadestep, xyz accel
2016-01-21 18:34:39 -06:00
Christoph Oelckers
1a631670fb
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-22 01:11:08 +01:00
Christoph Oelckers
841c7b275e
Merge branch 'ParticleFlags' of https://github.com/MajorCooke/zdoom
...
Conflicts:
wadsrc/static/actors/actor.txt
2016-01-22 00:58:42 +01:00
Christoph Oelckers
3b4ed8d7cd
- made A_SpawnParticle's fadestep parameter a fixed point value as well.
2016-01-22 00:54:09 +01:00
MajorCooke
13dc6be5a1
- Added flags for A_SpawnParticle and angle parameter.
...
- SPF_FULLBRIGHT makes the particle full bright.
- SPF_RELATIVE encapsulates the following flags:
- SPF_RELPOS: Position is relative to angle.
- SPF_RELVEL: Velocity is relative to angle.
- SPF_RELACCEL: Acceleration is relative to angle.
- SPF_RELANG: Add caller's angle to angle parameter for relativity.
2016-01-21 16:36:58 -06:00
Christoph Oelckers
39014b1732
- make the startalpha parameter of A_SpawnParticle a float to be consistent with other functions that want an alpha value.
2016-01-21 20:13:55 +01:00
Randy Heit
9744b9e0d9
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/dobject.h
src/dobjgc.cpp
src/p_local.h
src/thingdef/thingdef_codeptr.cpp
2016-01-21 12:45:06 -06:00
MajorCooke
9638cbb844
Updated A_CheckProximity Expansion Pruned Edition.
2016-01-21 11:39:13 -06:00
Christoph Oelckers
995721836b
Merge branch 'SpawnParticle' of https://github.com/Edward850/zdoom
...
Conflicts:
src/actor.h
2016-01-21 17:04:52 +01:00
alexey.lysiuk
f10dd68ca6
Fixed actors intersection check
2016-01-21 16:21:09 +02:00
coelckers
65662a9cfa
Merge pull request #493 from alexey-lysiuk/dialog_fixes
...
Fixes for Strife dialog
2016-01-21 14:57:21 +01:00
Christoph Oelckers
68fcbc0c92
- fixed: loading sector damage information from an old savegame could retrieve invalid data due to an uninitialized variable.
2016-01-21 14:54:14 +01:00
alexey.lysiuk
598bccbe93
Added warning when next dialog page is incorrect
2016-01-21 15:53:58 +02:00
alexey.lysiuk
673ac1295c
Fixed broken 'closedialog' property in Strife dialogs
...
See http://forum.zdoom.org/viewtopic.php?t=50524
2016-01-21 15:53:35 +02:00
Christoph Oelckers
102e59036c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-21 12:37:52 +01:00
Christoph Oelckers
5421213711
- typo in interpolation stuff.
2016-01-21 12:37:26 +01:00
Christoph Oelckers
5816049510
- made necessary adjustments for the coordinate refactoring in ZDoom.
2016-01-21 12:36:37 +01:00
Christoph Oelckers
8f7be01dd4
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/r_data/r_interpolate.cpp
2016-01-21 12:09:12 +01:00
Christoph Oelckers
cf2ee1eb3f
- fixed: Interpolations were deleted too early.
...
They were immediately deleted when the associated thinker was destroyed. But this was too early because it missed the final tic of movement, resulting in a visible jump when a moving platform with a player on it came to a halt.
Changed it so that DelRef no longer destroys the interpolation itself. Instead the ::Interpolate method will check if the reference count is 0, and if so and there was no more movement, will then destroy the interpolation.
This ensures that it keeps running until it has interpolated all remaining bits of movement induced by the thinker.
Now moving up a lift is 100% smooth, even with movement interpolation on.
2016-01-21 11:58:44 +01:00
Christoph Oelckers
d347415aee
- fixed some garbage collection issues with interpolations:
...
* FInterpolator depended on external references to prevent its content from getting GC'd.
* none of the pointers in the interpolation objects were declared to the GC.
The result of these issues was that changing anything about the life cycle of interpolation objects caused corrupted memory crashes when a level was changed.
2016-01-21 11:36:37 +01:00
Christoph Oelckers
e4982b1ced
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-21 10:24:03 +01:00
Christoph Oelckers
03d7418f51
- fixed: Since sector movement is done after P_PlayerThink is called, any player position change induced by this is not factored into player_t::viewz and needs to be added explicitly.
...
This fixes the infamous 'view squats down a bit when riding up an elevator' effect. It is also there in the other cases but far less pronounced.
2016-01-21 10:23:20 +01:00
coelckers
8b4194a3e0
Merge pull request #491 from MajorCooke/TF_SensitiveZ2
...
A_Teleport TF_SensitiveZ
2016-01-21 09:10:33 +01:00
MajorCooke
09733d8083
- Don't set both self and pointer's z to spotz when teleporting.
2016-01-20 18:50:30 -06:00
Randy Heit
710fa55288
Port recent SMF changes to XMI and HMI:
...
- Handle SysEx messages instead of ignoring them.
- Don't lose time for unhandled events with delays.
2016-01-20 18:37:05 -06:00
Randy Heit
7f6b421e87
Make sure all unhandled delayed MIDI events generate NOPs
...
- Looking over the code again, I see that discarded SysEx messages can
cause the same issue as unhandled meta events, so generalize the
returning of a NOP for everything.
2016-01-20 18:27:04 -06:00
MajorCooke
93aff2413f
Fixed an issue which caused A_Teleport to set the caller and itself to SpotZ's z position.
2016-01-20 18:18:00 -06:00
MajorCooke
116e157447
Nevermind this.
2016-01-20 15:52:56 -06:00
MajorCooke
d20a7516c9
Updated A_FaceVelocity to remove conflicts.
2016-01-20 15:51:11 -06:00
Edward Richardson
e5c67cee83
Merge branch conflicts fix
...
- CONFLICT (content): Merge conflict in src/p_acs.cpp
- Updated position variables
2016-01-21 10:49:57 +13:00
Randy Heit
1a356dfa51
Fixed: MIDI meta events were completely discarded, including their delays
...
(unless the event was for setting the tempo) This left the following
events in the track to happen at the wrong time.
2016-01-20 14:53:56 -06:00
Christoph Oelckers
98a9d7210a
- fixed the definitions for script access to AActor::x, y, z.
...
(Note: These should be made read only when real scripting becomes available!)
2016-01-20 15:19:35 +01:00
Christoph Oelckers
c78344c19d
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/p_user.cpp
src/thingdef/thingdef_expression.cpp
2016-01-20 15:16:06 +01:00
Christoph Oelckers
68c0f929dc
- refactoring complete. The source compiles again with the renamed position variable.
2016-01-20 15:12:51 +01:00
Christoph Oelckers
13e25faea7
- p_sight.cpp, p_spec.cpp and p_switch.cpp refactored.
2016-01-20 14:20:14 +01:00
Christoph Oelckers
4d8070927d
- p_maputl.cpp done.
2016-01-20 14:04:47 +01:00
Christoph Oelckers
25107ed421
- since I had to shuffle around the first variables in AActor, let's better commit that change.
2016-01-20 13:49:52 +01:00
Christoph Oelckers
35271187a5
- took care of the rest of p_map.cpp.
2016-01-20 13:48:05 +01:00
Christoph Oelckers
4b9647e539
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/g_hexen/a_hexenspecialdecs.cpp
src/g_strife/a_thingstoblowup.cpp
src/thingdef/thingdef_codeptr.cpp
2016-01-20 11:45:57 +01:00
Christoph Oelckers
83cbf6cae5
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/g_hexen/a_wraith.cpp
2016-01-20 11:41:27 +01:00
Christoph Oelckers
500bc2b852
- fixed two refactoring errors:
...
* A_BridgeOrbit had its radius as an int, not a fixed_t.
* PIT_CheckThing used the wrong coordinate for checking actor distance.
2016-01-20 11:39:41 +01:00
Christoph Oelckers
e9b23cf833
- keep evaluation order of Random() calls defined.
2016-01-20 09:25:30 +01:00
Edward Richardson
5c8ebf487d
Fixed load order for saves
...
- Make sure the PRNG tables are restored after the base level is loaded,
otherwise the tables will restore in a modified state.
2016-01-20 19:14:43 +13:00
Christoph Oelckers
7ea3e49332
- refactored p_mobj.cpp and the first half of p_map.cpp.
2016-01-20 01:48:57 +01:00
Randy Heit
9b9008ecc7
Restore original offset range for WraithFX5 spawn
2016-01-19 18:00:46 -06:00
Christoph Oelckers
b73e1e65f5
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/p_local.h
src/thingdef/thingdef_codeptr.cpp
2016-01-19 20:17:34 +01:00
Christoph Oelckers
7658111566
- refactoriung of thingdef_codeptr.cpp - probably the ugliest file in the entire project...
2016-01-19 20:15:45 +01:00
Christoph Oelckers
97620b0645
- fixed some leftover unused variable warnings.
...
- match the variable names in thingdef_codeptr.cpp to the ones in the scripting branch to reduce the amount of merge conflicts in upcoming changes.
2016-01-19 16:09:44 +01:00
Chris
119c2f36b2
- Fixed an incorrect memset parameter in wi_stuff.cpp.
...
- Removed some whitespace from wi_stuff.h.
2016-01-19 13:20:32 +00:00
Christoph Oelckers
1faf68794b
- fixed the merge.
2016-01-19 13:59:53 +01:00
Christoph Oelckers
bc63b70d88
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/fragglescript/t_func.cpp
src/g_doom/a_bossbrain.cpp
src/g_doom/a_revenant.cpp
src/g_heretic/a_hereticartifacts.cpp
src/g_heretic/a_hereticweaps.cpp
src/g_heretic/a_knight.cpp
src/g_hexen/a_bishop.cpp
src/g_hexen/a_clericholy.cpp
src/g_hexen/a_dragon.cpp
src/g_hexen/a_firedemon.cpp
src/g_hexen/a_flechette.cpp
src/g_hexen/a_heresiarch.cpp
src/g_hexen/a_hexenspecialdecs.cpp
src/g_hexen/a_iceguy.cpp
src/g_hexen/a_korax.cpp
src/g_hexen/a_magelightning.cpp
src/g_hexen/a_serpent.cpp
src/g_hexen/a_spike.cpp
src/g_hexen/a_wraith.cpp
src/g_raven/a_minotaur.cpp
src/g_shared/a_bridge.cpp
src/g_shared/a_pickups.cpp
src/g_shared/a_randomspawner.cpp
src/g_strife/a_alienspectres.cpp
src/g_strife/a_crusader.cpp
src/g_strife/a_entityboss.cpp
src/g_strife/a_inquisitor.cpp
src/g_strife/a_loremaster.cpp
src/g_strife/a_programmer.cpp
src/g_strife/a_sentinel.cpp
src/g_strife/a_spectral.cpp
src/g_strife/a_strifestuff.cpp
src/g_strife/a_strifeweapons.cpp
src/g_strife/a_thingstoblowup.cpp
src/p_local.h
src/r_utility.cpp
2016-01-19 13:43:11 +01:00
Christoph Oelckers
27aeb6a656
- g_shared refactored
2016-01-19 13:26:05 +01:00
Christoph Oelckers
9f78bcd1e6
- Strife game code refactored for coordinates.
2016-01-19 11:50:07 +01:00
Christoph Oelckers
6ae09334a3
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/r_defs.h
2016-01-19 10:51:42 +01:00
Christoph Oelckers
4df8c12534
- added a missing NULL pointer check in software rendering code.
2016-01-19 10:50:01 +01:00
Christoph Oelckers
069889c5ce
Merge remote-tracking branch 'remotes/zdoom/master'
2016-01-19 10:46:59 +01:00
Christoph Oelckers
c02d922014
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-19 01:11:13 +01:00
Christoph Oelckers
2326928ff7
- the last bits of Hexen refactored
...
This also fixes a problem with some of Hexen's Wraith's effects which did some repositioning without properly linking them into the blockmap.
2016-01-19 01:10:57 +01:00
coelckers
5c7f72278b
Merge pull request #483 from kevans91/ndebug-fixes
...
*BinPack fixes -- disjointRects only defined #ifdef _DEBUG
2016-01-18 22:39:40 +01:00
Christoph Oelckers
ef7be016c4
- all those 'actor->SetZ(actor->Z() +...) calls weren't pretty so now there's an AddZ method, too.
2016-01-18 22:32:36 +01:00
Christoph Oelckers
c8052ce1b8
- 4 more Hexen files processed.
2016-01-18 22:26:02 +01:00
Christoph Oelckers
61b66904da
- more Heretic and Hexen refactoring.
2016-01-18 22:11:18 +01:00
Braden Obrzut
d94aaf1fcf
- Fixed: Undefined negative double to unsigned int conversion in FNodeBuilder::PointToAngle.
2016-01-18 16:03:37 -05:00
Kyle Evans
7358817975
*BinPack fixes -- disjointRects only defined #ifdef _DEBUG
2016-01-18 14:45:23 -06:00
Christoph Oelckers
ca5ac72364
- added missing FIXED2DBL call in A_Face.
2016-01-18 21:17:11 +01:00
Christoph Oelckers
c1b44a5694
- let's make some use of AActor::Pos and get rid of some of those X() and Y() calls...
...
- restore proper actor.h file.
2016-01-18 21:01:52 +01:00
Christoph Oelckers
460751653d
- refactored most of Heretic's game code.
2016-01-18 20:13:20 +01:00
Christoph Oelckers
57ab1387f2
- yet more refactoring.
...
Note about A_SkelMissile: The direct change of the missile's position was changed to use SetOrigin. If this is later supposed to be portal-aware, such direct coordinate changes are a no-go to ensure that everything is properly maintained.
2016-01-18 18:52:24 +01:00
Christoph Oelckers
2b5e5b6bc3
- next round of refactoring.
...
This contains some advance work for handling line-to-line portals in A_PainShootSkull.
This function is special because it performs a map check itself instead of using one of the common functions from p_map.cpp, like most of the rest of the game code.
2016-01-18 16:49:24 +01:00
Braden Obrzut
b6cdcddf30
- Fixed: Static mirrors in hexen format maps were broken.
2016-01-18 10:30:56 -05:00
Braden Obrzut
f3f77a1ba0
Merge branch 'master' into portals2_visual
2016-01-18 09:45:42 -05:00
Christoph Oelckers
b63eb391f7
- refactored two mire files.
...
- fixed: FraggleScript's SetObjPosition function did not properly set the moved actor's properties. Better use SetOrigin for changing the position.
2016-01-18 12:37:39 +01:00
Christoph Oelckers
e8ee8c5c97
- fixed: secspecial_t was left uninitialized, causing its damage type being an invalid name.
2016-01-18 01:21:20 +01:00
Christoph Oelckers
43314f0c0d
- started refactoring p_map.cpp
...
- added AActor::Top function to replace the frequent occurences of actor->z + actor->height.
2016-01-18 00:59:16 +01:00
Christoph Oelckers
b735138332
- forgot the changes to actor.h.
2016-01-17 22:56:16 +01:00
Christoph Oelckers
3f34083e88
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/actor.h
2016-01-17 22:16:27 +01:00
Christoph Oelckers
a65ff39872
- more coordinate refactoring in p_enemy.cpp.
2016-01-17 22:13:17 +01:00
Christoph Oelckers
bf747075e8
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/g_hexen/a_clericstaff.cpp
src/p_enemy.cpp
src/p_interaction.cpp
src/p_local.h
src/p_mobj.cpp
src/thingdef/thingdef_codeptr.cpp
2016-01-17 20:57:55 +01:00
Christoph Oelckers
cfcd2668cc
Merge commit '772a5724313f2ad0bd6828fcc28545a9ee5e6068' into scripting
...
Conflicts:
src/p_pspr.cpp
src/thingdef/thingdef_codeptr.cpp
2016-01-17 20:00:45 +01:00
Christoph Oelckers
fbaab5044d
Merge commit '38df0665e3a2018cf1d0028a36357df6c7e908e9' into scripting
...
Conflicts:
src/d_dehacked.cpp
src/decallib.cpp
src/g_hexen/a_clericstaff.cpp
src/p_interaction.cpp
src/p_local.h
src/thingdef/thingdef_codeptr.cpp
wadsrc/static/actors/constants.txt
wadsrc/static/actors/shared/inventory.txt
2016-01-17 19:50:34 +01:00
Christoph Oelckers
5207aa6cc0
Merge commit '125afcf3defb901e23bd44d32fa86681ef1748f6' into scripting
...
Conflicts:
src/p_local.h
src/p_mobj.cpp
src/thingdef/thingdef_codeptr.cpp
wadsrc/static/actors/shared/inventory.txt
2016-01-17 19:09:05 +01:00
Christoph Oelckers
be91771abc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-17 18:36:50 +01:00
Christoph Oelckers
c611456397
- more refactoring of AActor coordinate access.
2016-01-17 18:36:14 +01:00
coelckers
2702e68d83
Merge pull request #480 from alexey-lysiuk/fix_legacy_osx
...
Fixes for legacy versions of OS X
2016-01-17 17:12:59 +01:00
Christoph Oelckers
5b610390e1
- some more inline functions.
2016-01-17 16:49:15 +01:00
Christoph Oelckers
87689d3ba6
- global search&replace of ZatPoint calls with commonly named actor variables.
2016-01-17 14:08:20 +01:00
Christoph Oelckers
4ec1459ac0
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-17 13:51:15 +01:00
Christoph Oelckers
3e446ea04d
- replaced access to AActor's coordinate members with access functions
...
(first 200 compile errors down...)
2016-01-17 13:48:16 +01:00
alexey.lysiuk
552c440afa
Fixed another issue with Hexen Mac
...
Hopefully there will be no more bugs with Hexen Mac IWADs (demo or full) as all extra lumps are now discarded
2016-01-17 13:29:44 +02:00
Christoph Oelckers
bf5ee5e542
- added X(), Y(), Z() access functions to AActor.
...
This commit is just preparation for upcoming changes to completely encapsulate the coordinate info in AActor because I'm going to have to work with an altered version of actor.h that cannot be committed without breaking the engine.
With this file present in the repo before work is started the changes can be committed piece by piece.
2016-01-17 12:23:49 +01:00
alexey.lysiuk
24501dbc93
Fixed copy to pasteboard on legacy OS X
...
Copy/paste is now implemented using the method available on all supported versions
This fixes 'unrecognized selector' exception on OS X 10.4 and 10.5
2016-01-17 11:58:44 +02:00
alexey.lysiuk
bfc116b2a4
Fixed exit crash on legacy OS X
...
There is no need to close (and thus deallocate) console window explicitly
This will be done by autorelease pool in application controller event loop
OS X with GC and/or ARC was not affected by this issue
Older versions like 10.4 or 10.5 crashed because of double deallocation
2016-01-17 11:51:46 +02:00
Christoph Oelckers
724475823c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-17 00:14:59 +01:00
MajorCooke
421dcacb94
Added NULL check to lines.
2016-01-16 16:36:42 -06:00
MajorCooke
e4a74e91fc
- Puffs should not spawn on floors or ceilings with sky flats without the SKYEXPLODE flag.
...
- Added line horizon check for puffs as well.
2016-01-16 16:33:19 -06:00
Christoph Oelckers
e6b6fd799d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-16 16:31:20 +01:00
Christoph Oelckers
0e645ad173
- added a 'non-modify' mode to P_TeleportMove and let A_Respawn use that, rather than letting P_TeleportMove muck around with the actor properties and then have A_Respawn only partially and haphazardly restoring them afterward.
2016-01-16 16:30:53 +01:00
alexey.lysiuk
afed5e62eb
Fixed intercept check in FPathTraverse
...
Because frac variable has fixed_t type it must be compared with fixed one
Test case: try to break stained glass windows or open door at the beginning of Hexen's MAP01
2016-01-16 13:22:27 +02:00
Christoph Oelckers
65080a65c9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-16 09:07:20 +01:00
Christoph Oelckers
c3491de466
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-16 09:06:10 +01:00
Christoph Oelckers
5a8062abba
- fixed copy/paste error in secmovefac. (It returned friction instead of movefactor...)
2016-01-16 09:05:46 +01:00
Braden Obrzut
8f31af3ff9
- Work around issue with tree-loop-vectorize in p_acs.cpp.
2016-01-16 00:51:17 -05:00
Christoph Oelckers
f9ae304596
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-15 18:36:49 +01:00
alexey.lysiuk
a8e5b90667
Fixed stuck Strife dialogs
...
See http://forum.zdoom.org/viewtopic.php?t=50451 and http://forum.zdoom.org/viewtopic.php?t=48470
2016-01-15 18:32:49 +02:00
Christoph Oelckers
90e2dc5f5a
- some minor optimizations to FPathTraverse:
...
* since we can trivially decide whether a line crosses the trace behind the end point from checking the return value of P_InterceptVector, there is no need to add those to the list of intercepts as they get discarded anyway in t
* maxfrac is always FRACUNIT so there's no need to waste some variable for a constant value.
2016-01-15 16:40:50 +01:00
Christoph Oelckers
ef8dc22f7d
- looks I missed one file when I member-fied P_AproxDistance and R_PointToAngle2 calls.
2016-01-15 15:36:21 +01:00
coelckers
b38d5b6fb9
Merge pull request #475 from MajorCooke/AlwaysPuffFix
...
Rail Puff Support for Floors and Ceilings
2016-01-15 13:36:51 +01:00
Christoph Oelckers
7e0e3cf1aa
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-15 13:11:59 +01:00
Christoph Oelckers
48232f548d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-15 12:56:56 +01:00
Christoph Oelckers
867b7767ef
- ignore COMPAT_POINTONSIDE in a few places where the side effects of the old P_PointOn*Side functions are either not needed or problematic:
...
* the sight checking code needs to be as precise as possible and should not depend on some old semi-broken routines. (This is more a precision issue of these routines - P_PointOnDivlineSide removes the lower 8 bits of each value - than having an issue with returning the wrong side in some cases.)
* for slope creations it is flat out wrong to use the old routines at all.
* also ignore this in the modern (box-shaped) case of FPathTraverse::AddLineIntercepts. This functionality is new to ZDoom and therefore not subject to compatibility concerns.
* the line-to-line teleporter. It seems the hideous fudging code was just there to work around the design issues of these functions, so let's better not ever call them here in the first place.
* A_PainShootSkull: Its usage here does not depend on these issues.
* P_ExplodeMissile: New code exclusive to ZDoom.
* FPolyObj::CheckMobjBlocking
All occurences in p_map.cpp have been left alone although most of them probably won't need the compatibility option either.
2016-01-15 12:56:27 +01:00
Randy Heit
16781e47ae
Use a 64k stream buffer for all streams, not just net streams
...
- FLACs need a larger buffer than the default to run without starving on
later versions of FMOD.
2016-01-14 20:41:09 -06:00
MajorCooke
dd9e7560c4
Added support for puffs to spawn on floors and ceilings if ALWAYSPUFF is used.
2016-01-14 11:21:08 -06:00
coelckers
722ef02719
Merge pull request #473 from MajorCooke/FadeFix
...
Fade fix
2016-01-14 09:16:39 +01:00
Braden Obrzut
6a87c6cd19
- Fixed usage of uninitialized value in skybox rendering.
2016-01-14 00:49:57 -05:00
MajorCooke
629eaa35a3
- Fixed: A_Fade* could destroy live player bodies because it was calling the Destroy() function directly instead of going through P_RemoveThing.
2016-01-13 20:26:15 -06:00
Randy Heit
f9574a98fd
Fix Timidity's DLS instrument loading:
...
- Envelope data needed to be converted to SF2 values.
- Fine tuning was ignored which made pretty much every instrument off tune.
- Despite this, it still sounds like shit compared to FMOD or Microsoft's
wavetable synth. There are lots of missing notes and some instruments
are still off tune. I'm not sure it's worth trying to salvage it. It'd
probably be better to scrap it, since Timidity is very much oriented
toward GF1 patches, which it handles perfectly fine.
2016-01-13 17:25:24 -06:00
Christoph Oelckers
2657c08831
- fixed: stacked sector portals were not added to the render list
2016-01-13 21:33:27 +01:00
Christoph Oelckers
cd778b6bdc
- fixed CollectPortalSectors
2016-01-13 00:15:04 +01:00
Christoph Oelckers
7c925e39fe
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-12 21:36:48 +01:00
Christoph Oelckers
4d2ca0da45
- empty gl_portals.cpp file.
2016-01-12 21:36:33 +01:00
Christoph Oelckers
d234a6af5d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-12 21:35:18 +01:00
Christoph Oelckers
37f18055af
- turned sector_t::FloorSkyBox and CeilingSkyBox into an array.
...
- removed unused SpreadCeilingPortal function.
2016-01-12 21:34:41 +01:00
Randy Heit
dc66f4cb3f
Make _WM_AdjustNoteVolume's pan_ofs a signed int
2016-01-12 06:35:05 -06:00
Christoph Oelckers
aa69c39ff1
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/CMakeLists.txt
2016-01-12 11:23:45 +01:00
Edoardo Prezioso
b87c612aba
- Fixed Clang warning on wildMIDI code.
...
Now that '_event_data.data' is changed to 'unsigned int', the 'unsigned long' cast is not needed anymore.
2016-01-12 11:12:19 +01:00
Christoph Oelckers
9e33599536
- at least get the terms being used right. Of course it's not EDF (which would way beyond the scope of what's intended here) but only Extradata, that's being supported.
...
(For EDF an external converter would make more sense.)
2016-01-12 09:13:55 +01:00
rheit
8408aec347
Merge pull request #456 from alexey-lysiuk/lzma_1514
...
Updated LZMA SDK to version 15.14
2016-01-11 20:53:51 -06:00
Randy Heit
141cd660eb
Didn't need note_off_decay in the WildMidi sample struct
2016-01-11 20:07:14 -06:00
Randy Heit
27bf86e1eb
Fix(?) dBm_pan_volume table
...
- The missing comma on the first line of dBm_pan_volume's definition
looked suspicious, so I checked the MIDI specification at
http://www.midi.org/techspecs/rp36.php and found the equations
there gave different dB values than were in the table. So I
rebuilt it using the equation given there:
20*log (sin (Pi /2* max(0,CC#10 – 1)/126))
2016-01-11 20:06:07 -06:00
Randy Heit
268d2faaf6
Import volume handling changes from current WildMidi git
...
- Description there reads:
> Major work done on “log” volumes. Calculations are now based on decibels.
2016-01-11 20:06:07 -06:00
Randy Heit
5b4a6483b5
Remove get_decay_samples. Not needed.
2016-01-11 20:06:06 -06:00
Randy Heit
7f01a6a30a
Import envelope tweaks for current WildMidi git
2016-01-11 20:06:06 -06:00
Randy Heit
50ecec199f
More stuff we don't need in WildMidi removed
2016-01-11 20:06:05 -06:00
Randy Heit
88beae55bd
Add separate NRPN coarse/fine adjustment for WildMidi
2016-01-11 20:06:05 -06:00
Randy Heit
7f44bc6d0e
Add Yamaha and GM reset sysex handling to WildMidi
2016-01-11 20:06:05 -06:00
Randy Heit
a74d352490
Update gus_pat.cpp's envelope fudging to current git version
2016-01-11 20:06:04 -06:00
Braden Obrzut
0c3b468e42
Merge branch 'osx_start_wnd'
2016-01-11 20:47:06 -05:00
Christoph Oelckers
7c8d48bbfc
Merge branch 'edf-gl'
...
Conflicts:
src/actor.h
src/p_spec.cpp
2016-01-12 00:02:17 +01:00
Randy Heit
56f7ace9be
include <limits.h> in the bin packers to make GCC happy
2016-01-11 17:01:29 -06:00
Christoph Oelckers
2f2bd91083
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-11 23:59:35 +01:00
Christoph Oelckers
61e48013dc
- fixed a warning in WildMidi code.
2016-01-11 23:46:12 +01:00
Christoph Oelckers
cd9e18a72b
- fixed: operator<< (FArchive &arc, secspecial_t &p) erroneously read the old special in the compatibility handler as a short, but it must be read as an int.
...
- bumped savegame version to bring it in line with a GZDoom exclusive change.
2016-01-11 23:44:13 +01:00
Christoph Oelckers
65022b780a
- implemented 'copy portal to wall' linedef type.
2016-01-11 22:44:53 +01:00
MajorCooke
7843ece01a
Fixed: Friendly fire damage didn't take LAXTELEFRAGDMG into account.
2016-01-11 15:08:38 -06:00
Christoph Oelckers
196c9bc34d
- cleaned up the skybox type detection logic.
2016-01-11 20:29:24 +01:00
Christoph Oelckers
0e017f1e2d
- cleaned up the merge and consolidated redundant code.
2016-01-11 15:40:25 +01:00
Christoph Oelckers
f83b21ff26
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/p_spec.cpp
2016-01-11 15:35:01 +01:00
Christoph Oelckers
011385a20e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-11 15:30:04 +01:00
Christoph Oelckers
7115590c1d
- moved setup code for Eternity-style skyboxes to p_spec.cpp and consolidated most of it with nearly identical parts of the stacked sector portal setup code.
2016-01-11 15:29:44 +01:00
Christoph Oelckers
d5cf31f821
Merge branch 'zmaster' into edf-gl
...
Conflicts:
src/actor.h
2016-01-11 15:10:10 +01:00
Christoph Oelckers
ef7bcb3a66
- implement Eternity-Style flat and horizon portals. Not tested yet due to lack of material to work with.
2016-01-11 15:07:58 +01:00
Randy Heit
42e9a6a711
Make atlas size a macro definition and default it to 512x512 (was 256x256)
2016-01-10 22:14:35 -06:00
Randy Heit
aaac5ac7a1
Use not so brilliant backgrounds for allocated atlas backgrounds
2016-01-10 22:01:29 -06:00
Randy Heit
670058fa3c
Switch to the bottom-left picker for the Skyline Bin Packer
2016-01-10 21:54:28 -06:00
Randy Heit
4f0046105d
Change texture atlas display to show allocated rectangles
2016-01-10 21:09:16 -06:00
Christoph Oelckers
ab1bf2bca3
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/actor.h
2016-01-10 22:43:34 +01:00
Christoph Oelckers
918a2ed562
-fixed: Eternity-style skyboxes must check if some portal copy definitions have been set for them.
2016-01-10 22:26:08 +01:00
Christoph Oelckers
2c0f64cf9f
- refactoring of R_PointToAngle2 when used to calculate direction between two actors.
2016-01-10 20:46:26 +01:00
Christoph Oelckers
1e2ce9a622
- some refactoring of P_AproxDistance calls into newly defined AActor method AproxDistance.
...
The main reason here is to reduce the number of instances where AActor::x and AActor::y are being referenced.
2016-01-10 17:52:41 +01:00
Christoph Oelckers
76b0971067
Merge branch 'master' into edf-gl
2016-01-10 10:31:00 +01:00
Christoph Oelckers
bfbc160b0c
Merge branch 'zmaster'
2016-01-10 10:30:23 +01:00
Christoph Oelckers
39cdb7cf30
- implement 'loadacs' option for MAPINFO.
2016-01-10 10:21:17 +01:00
Christoph Oelckers
1e193206bf
- removed unused RemoveLineIDs function.
2016-01-10 10:08:06 +01:00
Christoph Oelckers
d0978d0760
- added EDF sector handling.
2016-01-10 10:05:06 +01:00
Christoph Oelckers
4fd0a726b1
- more work on EDF handling. Vaporware demo is now loading.
2016-01-10 10:05:06 +01:00
Christoph Oelckers
bdfac02f69
- EDF parser for linedefs and sectors. Also extended the Eternity xlat table to handle the parameterized types to the point EDF needs.
2016-01-10 10:05:05 +01:00
Christoph Oelckers
9fe016d6d0
- EDF parser part 1: Mapthings.
2016-01-10 10:05:04 +01:00
ZZYZX
4bbec2a7fe
Fixed skybox clipping: sprite columns shouldn't be clipped against the current portal if rendered on root level of a skybox.
2016-01-10 05:48:06 +02:00
ZZYZX
605fce9008
Fixed skybox clipping: things in a skybox shouldn't be clipped against current portal. Fixed: portal inside of a skybox sets CurrentPortalInSkybox to false.
2016-01-10 05:45:26 +02:00
ZZYZX
4d518a220c
Fixed skybox clipping: lines in a skybox shouldn't be clipped against current portal
2016-01-10 05:22:33 +02:00
Randy Heit
1f34372abc
Remove the upper limit on midi_voices.
...
- Black MIDIs can be brutal, and there's really no reason that this needs
to be artificially limited to a paltry 256 voices.
2016-01-09 17:55:39 -06:00
Christoph Oelckers
68b4c23a82
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-09 21:10:46 +01:00
Christoph Oelckers
53d385a596
- need to validate SetSectorTerrain's 'plane' parameter,
2016-01-09 21:10:12 +01:00
Christoph Oelckers
f391216ab9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-09 19:48:01 +01:00
alexey.lysiuk
b27fdcffb5
Added shortcut to toggle fullscreen on OS X
...
Press Command+F to toggle fullscreen mode in native OS X backend
Set k_allowfullscreentoggle CVAR to false to disable the shortcut
2016-01-09 17:12:58 +02:00
Christoph Oelckers
23cfd29dbb
- let's save the terrain properties as names so that they survive a change in the definition files.
2016-01-09 12:28:42 +01:00
Christoph Oelckers
7f454358b9
- added ACS SetSectorTerrain function.
2016-01-09 12:16:41 +01:00
Christoph Oelckers
71c7f2b42c
- added 'floorterrain' and 'ceilingterrain' sector properties for UDMF. These will take precedence over texture based terrain if used.
...
'ceilingterrain' is needed because the top of 3D-floors refers to the model sector's ceiling, so in order to give a 3D floor a terrain it must be assignable to the sector's ceiling.
Note that although it is basically the same property, its actual function bears no relevance to its use in Eternity.
2016-01-09 12:10:36 +01:00
Christoph Oelckers
4b3adf548a
- fixed compile errors.
2016-01-09 11:44:05 +01:00
Christoph Oelckers
a5054b0882
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-09 10:11:46 +01:00
Christoph Oelckers
0b5e419593
- fixed friction logic for sectors.
...
Issues with the old code:
* when calculating friction for a 3D-floor - swimmable or not - the 3D floor's top texture must be used. The previous version always checked the sector's floor texture, even though the top might as well come from the sector's ceiling.
* 3D floors never checked for the SECF_FRICTION flag at all. According to Boom specs, sector-based friction must be ignored if this is the case.
* Terrain based friction had a higher priority than the sector's own value.
Changed the rules as follows:
* if the sector's SECF_FRICTION flag is set (i.e. something explicitly changed the sector's friction), this value is used regardless of terrain settings.
* if this flag is not set, the terrain's friction is used, if defined, using the proper plane for 3D-floors.
* otherwise the default is used.
2016-01-09 10:11:20 +01:00
Randy Heit
786caaf36b
Execute disconnect scripts immediately before the player is destroyed.
...
- Disconnect scripts were previously run at some point after the player
left. Now they are run immediately before destroying the player. Since
the player hasn't actually been destroyed yet, the player also gets to
be the script's activator. This gives you a chance to scrape whatever data
you want from the player before they're history. Note that if you do
anything to make the script wait, the script's activator will become the
world, as it was before.
2016-01-08 22:41:23 -06:00
Randy Heit
bf31d66d31
Use a better packing algorithm for the texture atlases
...
- The old algorithm is something I threw together that produced decent,
but not spectacular results since it had a tendency to waste space by
forcing everything onto "shelves".
The new packer is the Skyline-MinWaste-WasteMap-BestFirstFit algorithm
described by Jukka Jylanki in his paper *A Thousand Ways to Pack the Bin - A
Practical Approach to Two-Dimensional Rectangle Bin Packing*, which can
currently be read at http://clb.demon.fi/files/RectangleBinPack.pdf
This is minus the optimization to rotate rectangles to make better fits.
2016-01-08 22:37:06 -06:00
Randy Heit
f330a81909
Rename packing textures to texture atlases for the D3D code
...
- I figure since I now know the "proper" name for these things, I should
call them by it.
2016-01-08 20:08:10 -06:00
Randy Heit
a43f5a8eca
Remove now unused variable from SpawnPolyobj
2016-01-08 20:08:06 -06:00
Christoph Oelckers
52bab6571b
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-01-09 01:24:18 +01:00
Christoph Oelckers
23ff54c942
Merge branch 'zmaster'
2016-01-09 01:23:45 +01:00
Christoph Oelckers
cf564c60c2
- simplified setup of polyobjects defined from explicit lines
...
The old method had a problem with missing order numbers and aborted the level load and made many assumptions that no longer apply with BSP based polyobject rendering.
2016-01-09 01:23:00 +01:00
coelckers
500c1623d0
Merge pull request #467 from kevans91/freebsd-build
...
I missed one last spot where a FreeBSD compilation should follow the …
2016-01-08 09:58:55 +01:00
alexey.lysiuk
d97494afea
- fixed: check for MMX availability
...
the check was using C compiler flags instead of C++ which led to test failure for 32-bit Intel targets, at least on Linux with GCC
2016-01-08 10:18:16 +02:00
Kyle Evans
d20f18a4bb
I missed one last spot where a FreeBSD compilation should follow the path of OS X -- <signal.h> needs to be pulled in for signal functions
2016-01-07 22:48:25 -06:00
MajorCooke
bfd9e2bc1c
- Added CHF_STOPIFBLOCKED and CHF_DONTTURN macro.
...
- CHF_STOPIFBLOCKED simply prevents the actor from changing directions for movement.
- CHF_DONTTURN implies NORANDOMTURN, NOPOSTATTACKTURN and STOPIFBLOCKED.
2016-01-07 19:20:02 -06:00
MajorCooke
da9c3ff9d2
Added A_Wander Flags.
...
- WF_NORANDOMTURN and WF_DONTANGLE do the same as their CHF_ counterparts for A_Wander.
2016-01-07 17:38:45 -06:00
MajorCooke
f357a36c5c
- New A_Chase flags.
...
- CHF_NORANDOMTURN: Actor will not randomly turn during chasing to pursue its target. It will only turn if it cannot keep moving forward.
- CHF_DONTANGLE: Actor does not adjust its angle to match the movement direction.
- CHF_NOPOSTATTACKTURN: Actor will not make its first turn after exiting its attacks.
2016-01-07 17:38:25 -06:00
MajorCooke
ccc694bbcd
- Added the following flags, all affixed with CPXF_:
...
- NODISTANCE: Disables distance checking.
- CHECKSIGHT: The qualifying actor must be in sight in order to count.
- SET<TARGET/MASTER/TRACER>: Gets the first qualifying actor and sets the calling actor's specified pointer to it.
- SETONPTR: If the function is being aimed at another actor other than the caller, sets that actor's pointers instead. Requires a SET* flag to work.
- FARTHEST: The actor farthest from the checking actor is set as the pointer. Requires a SET* flag to work.
- CLOSEST: The closest qualifying actor is set as the pointer. Requires a SET* flag to work.
2016-01-07 17:09:02 -06:00
Christoph Oelckers
926e9fdac4
- fixed: For 2D-drawing of camera textures the render style was not set.
2016-01-07 22:20:57 +01:00
Randy Heit
efaaccc030
Added $ check for language support for drawing Option Values
2016-01-07 12:59:16 -06:00
Randy Heit
cd4076dc1b
Added $ check for language support for StaticTextSwitchable
2016-01-07 12:59:16 -06:00
Christoph Oelckers
1b20a06ec4
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-06 17:16:06 +01:00
Christoph Oelckers
eafa394af4
- re-added and fixed terrain splashes for damaging sectors.
...
Turned out that P_HitWater wasn't even able to spawn the splashes, even after the call was re-added.
2016-01-06 16:42:21 +01:00
Christoph Oelckers
f8b2b4558f
- fixed a few typos (Get instead of Set...)
2016-01-06 15:47:56 +01:00
Christoph Oelckers
154e106315
- make better use of the damageinterval value for Strife's delayed damage.
2016-01-06 14:16:42 +01:00
Christoph Oelckers
990323fb26
Merge branch 'fix_intermission_font' of https://github.com/alexey-lysiuk/gzdoom
2016-01-06 13:37:23 +01:00
Christoph Oelckers
6afd76e5db
- enable damage types for Strife's delayed damage. It will always use the type of damage that was last encountered.
2016-01-06 13:36:22 +01:00
Christoph Oelckers
eb6c855a95
- handle intermediate special values in thinkers. They also need to take care of the related damage variables and flags.
2016-01-06 13:30:28 +01:00
Christoph Oelckers
bd8513c063
- made sector_t::damageamount an int so that it can hold TELEFRAG_DAMAGE.
...
- marked all places where sector_t::special needs to be addressed for the damage overhaul.
NOTE: This commit will not compile!
2016-01-06 12:56:35 +01:00
Christoph Oelckers
1ee441412a
- add savegame compatibility handling for damage related changes: When loading an old savegame the sector specials must be reinitialized to set the damage properties.
2016-01-06 12:31:27 +01:00
alexey.lysiuk
73f4e013f1
Font kerning is no longer ignored in intermission screen
...
See http://forum.zdoom.org/viewtopic.php?t=50304
2016-01-06 13:26:05 +02:00
Christoph Oelckers
5474e01de8
- removed FraggleScript's 'sectortype' function. This was GZDoom exclusive and never documented so it got no public exposure. Since this is incompatible with the damage related changes, it has no more use.
...
- major overhaul of the static sector damage system:
* consolidated special based damage, Sector_SetDamage and UDMF properties into one set of damage properties. The parallel handling that could lead to double damage infliction was removed. This also means that damage through sector specials can be retroactively changed through Sector_SetDamage.
* all special cases were turned into flags. The new system can switch between Strife's delayed damage and regular damage, and it can also set whether terrain splashes are used or not. It also has access to the special properties of the end-level type (i.e. switching off god mode and ending the level.)
* the damage related flags are accessible through Sector_ChangeFlags, not the damage functions themselves.
2016-01-06 12:12:47 +01:00
Christoph Oelckers
b0db5d9b16
- added a SECF_SILENTMOVE flag.
...
Since Eternity got this it's a good candidate for a potential Super-Boom standard, and it's also useful for silencing a sector temporarily without removing the sound sequence.
2016-01-06 02:16:33 +01:00
Christoph Oelckers
d34077a3ba
- ... and finally the push flag.
2016-01-06 02:05:39 +01:00
Christoph Oelckers
3ffcec3eb3
- moved friction flag from special to Flags as well.
2016-01-06 02:01:59 +01:00
Christoph Oelckers
6a63effa1f
- fixed: A_CheckTerrain did not use the proper damage type for processing an instant death sector.
...
- moved sector secret information from sector_t::special and secretsector to two flag bits in sector_t::Flags.
This is to get rid of the bit masking madness in the floor/ceiling thinkers which need to preserve this bit when they change a sector's type.
2016-01-06 01:50:45 +01:00
Christoph Oelckers
1c6a00059f
- fixed: MAPINFO option fs_nocheckposition parsed the '=' twice.
2016-01-05 20:41:59 +01:00
Christoph Oelckers
7d2bbbd351
- fixed rendering of two-sided polyobjects that have their upper or lower textures exposed.
2016-01-05 18:59:32 +01:00
Christoph Oelckers
46b5900a0d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-05 17:06:24 +01:00
Christoph Oelckers
ea6c498470
Merge branch 'zmaster'
2016-01-05 16:49:00 +01:00
Christoph Oelckers
d0c372692b
- added new ACS function SetSectorDamage which allows the use of actual damage types, unlike the old Sector_SetDamage. Unlike Sector_SetDamage this function does not use damage amount dependent defaults for the interval and the leakiness if none are passed.
2016-01-05 16:29:04 +01:00
Christoph Oelckers
2b519a92b1
- allow setting the sector's damage properties through UDMF.
2016-01-05 16:19:55 +01:00
Christoph Oelckers
3e13e772ef
- after realizing that changing the sector's MOD variable to an FNameNoInit doesn't do anything bad, I just went ahead and got rid of the last place in the engine that still used this data type for internal storage.
2016-01-05 16:10:04 +01:00
Christoph Oelckers
5d388f8e63
Merge branch 'master' of https://github.com/rheit/zdoom into zmaster
2016-01-05 15:41:19 +01:00
Christoph Oelckers
d432df55e9
- changed Sector_SetDamage so that it can explicitly set the damage interval and the leakiness probability, instead of hardcoding it to fixed damage ranges.
...
- fixed: FCajunMaster::IsDangerous did not check for Heretic's sludge type.
2016-01-05 15:39:21 +01:00
Christoph Oelckers
8ded18a96c
- changed default frequency for Timidity++ to 44100kHz.
2016-01-05 14:09:34 +01:00
Christoph Oelckers
68501dc784
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-05 12:23:50 +01:00
Christoph Oelckers
b2f860d7ae
- better add a NULL pointer check here.
2016-01-05 11:07:59 +01:00
Benjamin Moir
c9afb199ca
Added "pufftid" parameter for LineAttack.
2016-01-05 13:58:00 +10:00
Braden Obrzut
a1e0ac0b71
Merge branch 'osx_start_wnd' of git://github.com/alexey-lysiuk/gzdoom into osx_start_wnd
2016-01-04 22:11:46 -05:00
Christoph Oelckers
d68c97b42a
Merge branch 'zmaster'
2016-01-04 21:06:54 +01:00
Christoph Oelckers
111479063f
- fixed a potential overflow issue with calculating a portal's origin point.
...
- fixed: Sector_SetPortal's Eternity translation was not correct.
The ZDoom variant allows specifying the plane as part of the portal, Eternity does not. Added a new 'plane' type 3 which just means 'any'.
2016-01-04 21:05:09 +01:00
Christoph Oelckers
0e9eb2f305
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-04 11:55:07 +01:00
Christoph Oelckers
824801ae6b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-04 11:52:29 +01:00
Christoph Oelckers
bd95c5eadf
- fixed: the ambient sound things need both the args from the DoomEdNum mapping and the actual map.
2016-01-04 11:52:07 +01:00
alexey.lysiuk
02ff3291bd
Fixed division by zero in RNG
...
Random number generator now returns zero for range [0, 0)
2016-01-04 12:16:09 +02:00
alexey.lysiuk
699f274b06
Fixed mouse cursor centering in fullscreen mode
...
Native OS X backed didn't center mouse cursor in fullscreen mode with Retina/HiDPI support enabled
Incorrect size of content view led to placement of cursor in upper right corner of the screen upon releasing of mouse capture
When some action is assigned to this corner using system Hot Corners feature, the given action was triggered on acquiring mouse capture
2016-01-04 10:51:54 +02:00
Christoph Oelckers
1197df828c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-04 00:46:57 +01:00
Christoph Oelckers
cc10fe9bc3
- fixed: The stereo3D code accessed the global 'viewsector' variable at a place where it no longer contained a correct value.
...
- fixed: The same code did not exclude camera texture views from drawing the 2D overlay.
2016-01-04 00:45:44 +01:00
Christoph Oelckers
772a572431
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-03 11:32:39 +01:00
Christoph Oelckers
a75e65a3d8
- added BLOCKF_SOUND to flag list supported by Line_SetBlocking,
2016-01-03 11:32:23 +01:00
MajorCooke
77013877d1
A_WeaponReady Fix
...
- Zoom and Reload keys triggered the other states instead of themselves (i.e. zoom keybind triggered reload states instead of zoom)
2016-01-02 11:27:02 -06:00
Christoph Oelckers
bb355b3a78
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-01 13:40:24 +01:00
Christoph Oelckers
f2c890272f
- FRenderState::Apply does not need to call ApplyColorMask.
2016-01-01 10:59:34 +01:00
Randy Heit
c86cd53753
Merge branch 'master' of https://github.com/crimsondusk/zdoom into crimsondusk-master
...
Conflicts:
src/am_map.cpp
2015-12-31 20:18:54 -06:00
Christoph Oelckers
3bad7f9b55
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-01 00:46:00 +01:00
Randy Heit
1d759283c0
Cleanup the zoom/reload/userX handling for A_WeaponReady
...
- There was lots of code duplication. Consolidated it.
- Renamed WRF_UserX to WRF_AllowUserX for consistancy.
2015-12-31 16:46:19 -06:00
Randy Heit
4931c90839
Bump save version for bigger WeaponState property
2015-12-31 16:46:18 -06:00
MajorCooke
3566d3157a
Use | instead of +.
2015-12-31 16:46:17 -06:00
MajorCooke
6478b98eea
Update serialization to BYTE from WORD for older save games.
2015-12-31 16:46:17 -06:00
MajorCooke
b09a81126f
- Changed WeaponState from 8-bit to 16-bit integer.
...
- Because the flags for WF_USER#OK are 256 on up, this is required in order to work.
2015-12-31 16:46:17 -06:00
MajorCooke
eed6680a67
Added support for weapon states User#.
...
- Added keybinds for the user state triggering.
- Added WRF_USER# flags which must be specified in order to use.
- # can be 1-4.
2015-12-31 16:46:16 -06:00
Christoph Oelckers
addd059410
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-31 23:05:13 +01:00
Christoph Oelckers
5e975ac9f6
- extended $mididevice to add an optional parameter, which has the following meaning for the different MIDI devices:
...
* OPL: specify the core to use for playing this song
* FluidSynth: specify a soundfont that should be used for playing the song.
* WildMidi: specify a config file that should be used for playing the song.
* Timidity++: specify an executable that should be used for playing the song. At least under Windows this allows using Timidity++ with different configs if the executable and each single config are placed in different directories.
* GUS: currently not operational, but should later also specify the config. This will need some work, because right now this is initialized only when the sound system is initialized.
* all other: no function.
These options should mainly be for end users who want to fine-tune how to play the music.
2015-12-31 23:03:53 +01:00
Randy Heit
d8af2e558f
Fix potentiol buffer overrun in MUSSong2::Precache()
2015-12-31 15:28:18 -06:00
Christopher Bruns
ac6e2f4979
Use gl_RenderState to manipulate OpenGL color mask for anaglyph modes, to avoid glGet...
2015-12-31 11:57:21 -05:00
alexey.lysiuk
262580c92f
Updated LZMA SDK to version 15.14
...
Enabled support for PPMD compression method
2015-12-31 17:25:49 +02:00
Christopher Bruns
95f4134630
Refactor stereo3d classes to use TArray instead of std::vector.
2015-12-31 09:36:37 -05:00
Christopher Bruns
5b7f9b04cd
Add license headers to stereo3d source files.
2015-12-31 09:06:44 -05:00
Christoph Oelckers
1316120fe4
- fixed: The MUS precacher did not handle invalid patches well.
...
- increased the valid range of patch values for MUS. According to the original MIDI2MUS code it can handle numbers up to 188, not 181, and at least one track from Eternal Doom uses #183 .
2015-12-31 14:35:34 +01:00
alexey.lysiuk
94fec26cb6
Fixed runtime warning on OS X 10.4 Tiger
...
The 'invalid pixel format attribute' warning was introduced with automated graphics switching control
2015-12-31 11:00:05 +02:00
Christopher Bruns
655defed28
Avoid compile errors on Linux. Fixes #107 .
2015-12-30 17:54:54 -05:00
Christopher Bruns
8e237e6146
Merge branch 'master' of https://github.com/coelckers/gzdoom into stereo3d
2015-12-30 17:41:49 -05:00
Christoph Oelckers
c88ed426a8
- oops, this somehow lost the shift operator...
2015-12-30 20:39:38 +01:00
Christoph Oelckers
3c40d71c20
- hopefully fixed the MUS precaching for good.
...
According to blzut3, it looks like it is a byte followed by a variable length field. It can be any value 0-15 and will be followed by that many bytes one for each bank used. If the bank count is 0 then it is shorthand for using one bank (bank 0).
2015-12-30 20:32:19 +01:00
Christoph Oelckers
be6daf5d78
- changed instrument lookup in MUS files.
...
Based on evidence from several songs in Eternal Doom the description in all known documents is wrong. The instruments are not stored in a 16-bit word but in an 8-bit byte, followed by some variable size data.
Known variations are:
* second byte is 0 - no additional data follows
* second byte is 1 - a third byte for the 'bank' value follows.
2015-12-30 19:13:28 +01:00
alexey.lysiuk
63993dee96
Hid resize indicator on OS X startup window
...
The resize indicator overlapped with progress bar and Quit/Cancel button on 10.6 and older versions
OS X 10.7 and newer don't have this indicator at all
2015-12-30 16:05:16 +02:00
Christoph Oelckers
86797b419f
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-30 12:28:55 +01:00
alexey.lysiuk
3466a8c7a9
Disabled miniaturization for OS X startup window
...
Old versions of OS X don't support changing of window style mask
2015-12-30 12:19:50 +02:00
alexey.lysiuk
db207feed1
Added missing header #include for old OS X SDKs
2015-12-30 12:17:38 +02:00
Edoardo Prezioso
a2b377c580
- Fixed Clang errors/warnings on wildMIDI code.
2015-12-30 10:58:52 +01:00
Christoph Oelckers
aff42a6186
- don't look up a lump name in PathExpander if we are only looking for real files.
2015-12-30 10:21:17 +01:00
Christoph Oelckers
1def61e3e3
- allow changing the reverb and resampling mode setting for WildMidi.
...
- fixed: WildMidi did not initialize the reverb data structures.
- removed the menu option for midi_timiditylike.
2015-12-30 10:14:18 +01:00
Kyle Evans
6c13ba40ac
Fix for __unix__ compilation -- section not changed with the rest of fe2dcfd588
2015-12-30 01:09:11 -06:00
Randy Heit
3ec6ad5018
Add SysEx retrieval to the MIDI file reader
2015-12-29 22:39:38 -06:00
Randy Heit
92e0bbeee9
Handle WildMidi's supported SysEx messages
2015-12-29 18:25:13 -06:00
Randy Heit
6d2e93254f
Fix CreateSMF's SysEx writing
...
- It was wrong before. It might still be wrong, but at least it doesn't
look obviously wrong anymore.
2015-12-29 17:55:20 -06:00
Randy Heit
545e2f7c69
Slap WildMidi onto snd_listmididevices's output for Windows
2015-12-29 17:55:20 -06:00
Randy Heit
900937929e
Use critical sections for WildMidi locking
...
...because when you're trying to be thread-safe, it's generally a good
idea to use mechanisms that work across multiple processor cores.
2015-12-29 17:55:19 -06:00
Randy Heit
14361d9313
Remove midi_timiditylike
...
- Did anybody actually use this? Use WildMidi instead if you want
something that sounds more like Timidity++ without actually being
Timidity++, since not even the old Timidity manages that.
2015-12-29 17:51:08 -06:00
Christoph Oelckers
0cc4bd56d1
- removed the original WildMidi loader and the main playback function because none of those is actually being used anymore.
2015-12-29 23:18:39 +01:00
Christoph Oelckers
c3862d9101
- use PathExpander class for WildMidi's file access functions so that it can find Timdity's data on its own.
2015-12-29 21:18:46 +01:00
Christoph Oelckers
fe2dcfd588
- refactored the GUS/Timidity player's path building code so that it can also be used by WildMidi.
...
- fixed crash during sound reset - in this case I_ShutdownMusic should not close the WildMidi player.
2015-12-29 20:38:08 +01:00
Christoph Oelckers
0634205d7f
- let WildMidi tokenizer handle quoted strings.
2015-12-29 18:01:15 +01:00
Christoph Oelckers
9297c60ecd
Merge branch 'master' of https://github.com/coelckers/gzdoom
2015-12-29 15:22:38 +01:00
Christoph Oelckers
ca5baa413c
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-29 15:22:22 +01:00
alexey.lysiuk
3af95e0aea
Added native startup window for OS X
2015-12-29 15:19:42 +02:00
alexey.lysiuk
673e1b4faf
Fixed compilation warning when building with OS X 10.11 SDK
...
The warning was 'null passed to a callee that requires a non-null argument'
2015-12-29 15:14:41 +02:00
alexey.lysiuk
2c3d9e3ab8
Fixed mouse capturing when video isn't initialized yet
2015-12-29 14:52:31 +02:00
alexey.lysiuk
15a269db9d
Extended NSWindow with ability to exit application upon closing by user
2015-12-29 14:52:27 +02:00
alexey.lysiuk
3676a42512
Added missing include guard in i_common.h
2015-12-29 14:52:22 +02:00
alexey.lysiuk
0efdccd942
Separated POSIX's i_system.cpp from native OS X implementation
2015-12-29 14:52:18 +02:00
alexey.lysiuk
6f3e04785d
Added preprocessor macros for AppKit framework versions
...
These macros are needed to build with earlier OS X SDKs
2015-12-29 14:52:11 +02:00
Christoph Oelckers
7fa289109b
- removed all uses of __builtin_expect from WildMidi code.
2015-12-29 11:36:56 +01:00
Christoph Oelckers
944360557f
- removed unused header stuff.
2015-12-29 11:23:43 +01:00
Edoardo Prezioso
7c82c576a3
- Fixed Linux compiler errors and snd_mididevice.
...
-- errno.h is required for 'errno';
-- don't use str(n)casecmp and rely on ZDoom CMake handling;
-- add a missing parenthesis around a 'signed char' cast;
-- remove an unneeded GNU_SOURCE redefinition;
-- the non-MSVC side of snd_mididevice was not adapted to the new code, making wildmidi unavailable through the menu.
2015-12-29 10:33:20 +01:00
Christoph Oelckers
c6b3b90f37
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-29 09:27:57 +01:00
Randy Heit
afc36544b7
Add a WildMidi softsynth device
...
- This removes the preceding psuedo MIDI device for WildMidi.
2015-12-28 22:16:35 -06:00
Randy Heit
ee46799d9e
Fix WM_DoGetOutput for big-endian machines
...
- Besides being little-endian centric, this bit shifting madness
was unneccessary since the values were already clamped to a 16-bit
range, so all we need to do is cast them to a short.
2015-12-28 20:51:53 -06:00
Randy Heit
b1405921bf
Merged WM_GetOutput_Linear and WM_GetOutput_Gauss into WM_DoGetOutput
...
- With mixing moved into separate functions, these two functions became
identical except for the function they called to do mixing.
2015-12-28 20:44:10 -06:00
Randy Heit
635b496165
Separate WildMidi mixing from event handling
...
- In order to use ZDoom's own MIDI sequencer event handling must be
completely separate from mixing, but WildMidi had them intertwined
because it wasn't designed for external sequencers.
- Also remove all 'long's defining the output buffers to avoid having
something that's 32 bits wide on Windows and 64 bits wide on Linux.
2015-12-28 20:33:41 -06:00
Randy Heit
a2ebf771d3
Remove '\r' character from beginning of WildMidi error messages
2015-12-28 19:13:34 -06:00
Christoph Oelckers
b27116cbbd
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-28 22:52:48 +01:00
Christoph Oelckers
9d48c84ee3
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-28 21:24:41 +01:00
Christoph Oelckers
060a6b2ff2
- shut down WildMidi when exiting.
...
The pointless error message in WildMidi_Shutdown was removed to keep the rest of the code simple and allowing to call this even when the device never was used.
2015-12-28 21:23:21 +01:00
Christoph Oelckers
a94120b6a4
Merge branch 'master' into WildMidi
2015-12-28 21:01:17 +01:00
Kyle Evans
5346b813da
Re-do GTK2_LIBARY_DIRS inclusion on a separate branch
2015-12-27 09:48:22 -06:00
Christoph Oelckers
1070bd9beb
- fixed: APlayerPawn::ViewHeight wasn't stored in savegames.
2015-12-26 16:17:56 +01:00
Christoph Oelckers
05b8e275cd
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-26 15:33:11 +01:00
Christoph Oelckers
400038643c
- fixed: Strife dialogues could crash on invalid links.
2015-12-26 15:31:59 +01:00
alexey.lysiuk
f8c38a0bbe
- fixed GCC's 'unknown pragma' warnings in hqNx MMX implementation
2015-12-25 15:42:13 +02:00
alexey.lysiuk
1c5d0ccd65
- enabled hqNx MMX on all platforms with Intel intrinsics support
2015-12-25 15:41:06 +02:00
alexey.lysiuk
69813993b0
- added missing hqNx modes to options menu
2015-12-25 10:00:31 +02:00
alexey.lysiuk
19ae244f66
- fixed: allow to use all hqNx texture upscale modes
2015-12-25 09:52:27 +02:00
alexey.lysiuk
571f7a4eb6
- fixed: debug assertion failure in texture precaching
...
loading of level from command line attempted to use uninitialized time value
2015-12-25 09:48:22 +02:00
Christoph Oelckers
c8810db5fe
- fixed: clipping swimmable against non-swimmable translucent 3D-floors was broken due to an incorrect flag check.
2015-12-24 16:34:00 +01:00
Christoph Oelckers
452479e5aa
Merge commit '7a96f91591b3f1ca76a5986cf46f5446caee2d38'
2015-12-23 13:06:14 +01:00
Blue-Shadow
c51abb0161
Added GetMaxInventory ACS function
2015-12-22 19:01:09 +03:00
Christoph Oelckers
03ccf03b8f
- fixed: UDMF with Doom format specials used the line's ID, not the first arg as the tag parameter for its special.
2015-12-21 01:13:21 +01:00
Christoph Oelckers
792d3906fd
- fixed: line activation checks for monster activation could be skipped if the lines also were flagged for player activation.
2015-12-19 20:32:41 +01:00
MajorCooke
452c82cbe2
- Added TF_SENSITIVEZ to A_Teleport. Fail teleportation instead of adjusting the actor to fit if they cannot.
...
- When checking whether to use spot z or floorz, use spot floorz instead of ref for consistency.
2015-12-17 10:34:38 -06:00
Christoph Oelckers
37e8221067
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-15 22:07:10 +01:00
alexey.lysiuk
9176d75580
Fix incorrect small font rendering with Hexen Mac IWAD
...
Unused high resolution font lumps broke composite font logic
Small font had doubled height because of that, at least alternate HUD and inter-hub text messages had noticeable visual issues
2015-12-14 11:47:46 +02:00
Christoph Oelckers
17569139b6
Merge branch 'master' of https://github.com/coelckers/gzdoom
2015-12-11 22:26:45 +01:00
Christoph Oelckers
37ea94abf3
- fixed: translucent walls did not set up their dynamic lights in the GL4 render path.
2015-12-11 22:26:10 +01:00
Kyle Evans
841ddb0d63
<stdlib.h> has replaced <malloc.h> on FreeBSD as well
2015-12-10 23:01:59 -06:00
Kyle Evans
7c6237e134
<stdlib.h> has replaced <malloc.h> on FreeBSD as well
2015-12-10 21:24:37 -06:00
Christopher Bruns
10088544c3
Merge branch 'master' of https://github.com/coelckers/gzdoom into stereo3d
...
Conflicts:
src/win32/i_system.cpp
2015-12-09 18:34:20 -05:00
Edward Richardson
c099cd4581
SpawnParticle functions
...
- Added A_SpawnParticle Decorate and SpawnParticle ACS functions.
2015-12-08 22:58:24 +13:00
Christoph Oelckers
5b4323ec6c
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-08 09:35:06 +01:00
coelckers
94c397b868
Merge pull request #435 from Edward850/pauseext-fix
...
Fix lost focus loosing network data
2015-12-07 12:52:23 +01:00
Braden Obrzut
964ee6bb23
- Worked around issue where stat doesn't work in v140_xp. Even though the bug was supposedly fixed for awhile now it didn't make it into Update 1.
2015-12-07 04:49:40 -05:00
Braden Obrzut
72d4c33453
- Removed GetAspectRatio as the implementation was highly fragile. Even if converted to giving the ratio, I have strong concerns about having this function built in without ZDoom supporting arbitrary aspect ratios as the odds of people checking against the hard coded constants seems high. The existing ACS version of this function returns fixed point ratios (because why not) and I fully expected people to use a switch statement when writing it.
2015-12-07 01:18:56 -05:00
Braden Obrzut
62d41a58a8
Merge branch 'DecProx3' of git://github.com/MajorCooke/zdoom into master
2015-12-07 00:53:06 -05:00
Christoph Oelckers
a0d6b05707
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-06 09:59:41 +01:00
Christoph Oelckers
ad0e71942d
- added GetAspectRatio function to ACS.
...
- added a sixth parameter for SetHUDClipRect so that the forced aspect ratio fudging this function performs can be disabled.
2015-12-06 09:59:02 +01:00
Gaerzi
542a108914
3D floor support for check switch range
2015-12-05 00:26:39 +01:00
Edward Richardson
f90ce1308e
Fix lost focus loosing network data
...
- Prevented focus loss from dropping network data during level
transitions
- Fixed delay counter underflows
2015-12-03 16:40:47 +13:00
Christoph Oelckers
455d8d9730
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-02 22:33:10 +01:00
Christoph Oelckers
81f521fe56
- fixed: Texture precaching from MAPINFO was broken
...
The code assumed that it had access to the texture manager but that gets initialized after MAPINFO, which means that MAPINFO can only store the texture names and let the precaching code resolve the actual textures.
2015-12-02 22:31:27 +01:00
Christoph Oelckers
41f91148a1
Merge branch 'master' of https://github.com/rheit/zdoom
2015-12-02 09:31:27 +01:00
alexey.lysiuk
4adf421513
Fix incomplete assignment operator of FSkillInfo
...
See http://forum.zdoom.org/viewtopic.php?t=50026
2015-12-01 14:30:57 +02:00
Christoph Oelckers
724445354c
- add the WildMidiMIDIDevice CPP file.
2015-12-01 10:39:22 +01:00
MajorCooke
8594bfaa8b
A_CustomPunch Extension
...
- Added Melee/Miss parameters just like A_CustomMeleeAttack.
2015-11-30 11:42:08 -06:00
Christoph Oelckers
f4a60f29f3
- added missing sc.MustGetString() to 'optional' case of decal parser.
2015-11-30 09:21:45 +01:00
Christoph Oelckers
f9cbaef1df
- fixed: Boom's Transfer_Heights did not work for upper parts in sectors with a sky ceiling.
...
This incorrect check has been in the code for 12 years, unfortunately I have no idea anymore why it was added.
2015-11-30 00:11:30 +01:00
Christoph Oelckers
c9e4f120e7
- forgot to save this before committing.
2015-11-29 15:27:20 +01:00
Christoph Oelckers
f7cdb28eac
- added a HealthFactor skill property.
2015-11-29 12:58:17 +01:00
Christoph Oelckers
106886a9bb
- allow setting the ice translation with Thing_SetTranslation.
...
This requires passing a magic value because this translation is defined differently than all the rest which can be used in ACS.
2015-11-29 12:30:50 +01:00
Christoph Oelckers
1ad02a6ce8
- allow specifying infighting through skills.
2015-11-29 12:10:12 +01:00
Christoph Oelckers
1a0faf4761
- allow optional decal generator definitions.
2015-11-29 11:41:14 +01:00
Christoph Oelckers
5515cb02a6
- fixed incorrect error method call in decal parser.
2015-11-29 11:35:12 +01:00
Christoph Oelckers
9bfd676783
- allow setting the FloatbobPhase through UDMF.
2015-11-29 11:28:26 +01:00
Christoph Oelckers
3682924249
- removed redundant parameter
2015-11-29 11:27:08 +01:00
Christoph Oelckers
a03b947729
- WildMidi generally working, some cleanup left to do...
2015-11-28 20:58:14 +01:00
MajorCooke
4fb48b332b
Added A_CheckProximity.
...
- Checks to see if a certain actor class, in numbers, is close to the actor/pointer via distance, based upon count. Can check for ancestry, disable Z searching, perform less than or equal to instead of greater or equal to, exact counts, check a pointer instead of itself and differentiate between live monsters and dead.
2015-11-28 10:53:34 -06:00
Christoph Oelckers
eff2286bc9
- added WildMidi library sources - all converted to C++ so that they can later interface with ZDoom's own MIDI code. Also redid the file loading function to use ZDoom's FileReader instead of low level IO.
2015-11-28 17:38:40 +01:00
Christoph Oelckers
888f356e58
- use the recently added text input menu item to add the config file for GUS, the patch set for Fluidsynth and the timidity.exe path for Timidity++ to the menu. Even though there is no proper file select box, this is still better than nothing.
...
- changed the text input item so that it realigns itself to show the entire text when in text input mode.
2015-11-28 12:43:01 +01:00
Christoph Oelckers
3fadfec77d
- fixed typo in SendToCommunicator enhancement.
2015-11-28 00:43:39 +01:00
Christoph Oelckers
6e22be89e4
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-27 16:59:50 +01:00
Christoph Oelckers
a55d85c51c
- do not wait infinitely for termination of the Timidity++ process. This can lock up the engine indefinitely if the child process fails to exit.
2015-11-27 12:12:08 +01:00
Christoph Oelckers
7e87216878
- fixed: r_visibility values >= 205 appear to cause fixed point overflows at least on 5:4 aspect ratio so they should be blocked.
2015-11-27 10:44:37 +01:00
Christoph Oelckers
fca469b053
- moved the notification messages for SendToCommunicator into LANGUAGE.
...
As a side effect this will now allow using custom messages with this function as well by using the arg2 parameter as part of the message's name (arg2=0 will use TXT_COMM0, arg1 TXT_COMM1 and so on.)
2015-11-26 10:25:05 +01:00
MajorCooke
d730b06da7
Added A_CheckSpecies(state jump, name species, ptr = AAPTR_DEFAULT)
...
- Performs a state jump if the defined species name for the pointed actor matches the criteria.
2015-11-26 01:33:02 -06:00
MajorCooke
7725e9d641
New line.
2015-11-25 23:17:13 -06:00
MajorCooke
a1e3112850
Removed FVF_RESETPITCH.
2015-11-25 23:15:59 -06:00
MajorCooke
ab5b1f479a
Updated A_FaceVelocity.
...
- Now includes anglelimit and pitchlimit.
- Anglelimit and pitchlimit only allows the actor to turn this much, similar to A_FaceTarget's limit. FVF_RESETPITCH also respects the pitch limit.
- (offset, anglelimit, pitchlimit, flags, ptr)
2015-11-25 21:49:25 -06:00
Christoph Oelckers
6efc2a0ec7
- fixed positioning of map name on Hexen automap.
2015-11-25 13:47:04 +01:00
Christoph Oelckers
78deb70a00
- fixed: ConfigSections were not properly deallocated
2015-11-25 13:40:18 +01:00
Christoph Oelckers
355f70986a
- fixed: 'give' inventory functions ignored an items MaxAmount setting.
2015-11-25 13:36:42 +01:00
Christoph Oelckers
f4ab6074fa
- today's 'GCC sucks' fix.
...
(Yet again some overtly anal type issues with the '? :' operator...)
2015-11-25 13:30:12 +01:00
Christoph Oelckers
1e0366f98f
- fixed: $musicalias must be resolved before comparing for equality with the currently playing music.
2015-11-25 13:27:35 +01:00
Christoph Oelckers
43dff3021b
- fixed: The OpenAL backend ignored PlaySound's 'volume' parameter.
2015-11-25 13:00:56 +01:00
Christoph Oelckers
cd110f67df
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-25 12:28:05 +01:00
coelckers
da39c86967
Merge pull request #401 from MajorCooke/RadiusGiveMinRange
...
A_RadiusGive Mindist Parameter + RGF_OBJECTS Fix
2015-11-25 12:27:54 +01:00
Christoph Oelckers
4a18a28448
- fixed: am_showtriggerlines will now ignore any non-activatable linedef types.
2015-11-25 12:20:35 +01:00
Christoph Oelckers
b00b49c111
- fixed skybox picking in GL renderer.
2015-11-25 11:57:53 +01:00
Christoph Oelckers
4ed78d78cc
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-25 11:51:11 +01:00
Christoph Oelckers
99fbb55296
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-25 11:50:03 +01:00
Christoph Oelckers
7b017f472a
- fixed: Due to the default skybox being moved to the global level data, there was insufficient information to distinguish between using the default skybox or the regular sky. Fixed by adding two new sector flags which get set by a 0-tid SkyPicker.
2015-11-25 11:49:34 +01:00
MajorCooke
75855dc64a
A_FaceVelocity(offset, flags, ptr)
...
- Changes the caller's angle and pitch according to the direction of velocity they're travelling.
- FVF_NOPITCH and FVF_NOANGLE disable changing of pitch/angle respectively and should be counted as mutually exclusive, or the function does nothing.
- FVF_INTERPOLATE - Interpolate's the angle and pitch changes.
- FVF_RESETPITCH will, if there's no z velocity, reset the pitch to 0. Otherwise, the pitch remains unchanged.
2015-11-25 01:44:19 -06:00
coelckers
ab85319fbf
Merge pull request #425 from j-palomo/pickactor2
...
Backport RETURNTID and FORCETID flags for PickActor from GLOOME.
2015-11-22 16:04:08 +01:00
alexey.lysiuk
20bf4d6c8e
Fixed crash on finishgame CCMD in non-game modes
...
http://forum.zdoom.org/viewtopic.php?t=49943
2015-11-21 17:43:49 +02:00
John Palomo Jr
2612fad326
Backport RETURNTID and FORCETID flags for PickActor from GLOOME. Renamed prefix to avoid confusion with Pain Attack flags. Fixed broken enum.
2015-11-21 06:05:16 -05:00
ZZYZX
75d21d6dd8
ZDoom wasn't setting drawseg_t::curline when making "fake" drawseg for skyboxes, which interfered with portal sprite clipping routine randomly.
2015-11-12 01:17:03 +02:00
Christopher Bruns
bcac352265
Merge branch 'master' of https://github.com/coelckers/gzdoom into stereo3d
2015-11-09 19:40:53 -05:00
Christoph Oelckers
ad6ce5a726
- added a NULL check to gl_enhanced_nightvision's handler so that it won't crash without an uninitialized GL renderer.
2015-11-09 13:49:17 +01:00
Christopher Bruns
151b47c3ae
Merge branch 'master' of https://github.com/coelckers/gzdoom into merge_down
...
Conflicts:
src/win32/i_system.cpp
2015-11-03 20:21:27 -05:00
Christoph Oelckers
a5b43dfb66
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-03 23:55:41 +01:00
Christoph Oelckers
16cb4407a4
- disabled 'isVisibleToPlayerClass' check for dynamic lights affecting sprites.
...
Calling this function in the inner loop of a time critical rendering function apparently wreaks havoc with the CPU instruction cache - even though the function doesn't do anything substantial.
This needs some more in-depth investigation why just having that call can increase sprite rendering time by a factor of 10 and more if there's many lights in view.
2015-11-03 23:55:16 +01:00
Christopher Bruns
382d2cf74f
Simplify ShiftedEyePose::GetProjection() maths.
2015-10-31 08:02:41 -04:00
Christopher Bruns
789dca2ab3
Refactor stereo 3d projection matrix calculations to use VSMatrix.
2015-10-31 07:46:36 -04:00
Christopher Bruns
89328e685c
Use eye->TearDown method to restore glColorMask.
...
Restore assert in i_system.cpp that was interfering with my debugging.
Restore scoped colorMask-ing in gl_portal.cpp and gl_drawinfo.cpp.
2015-10-30 21:48:42 -04:00
Christopher Bruns
b82d611936
Call EndDrawScene for each eye.
...
Actually use stereoscopic projection matrix.
2015-10-30 21:29:36 -04:00
Christopher Bruns
0874455faf
Initial implementation of five 3D modes -- some bugs remain.
2015-10-30 20:51:35 -04:00
Christopher Bruns
694dff67e4
Copy stereo3d source files from my GLOOME fork.
2015-10-26 09:08:18 -04:00
Braden Obrzut
a8ac748123
Merge commit 'e2d874e343da34df6edfad0bb47370cbe10f4bae'
2015-10-25 15:00:43 -04:00
alexey.lysiuk
3e517ad4d0
Fixed selection of empty items in Video Mode menu
...
See http://forum.zdoom.org/viewtopic.php?t=49794
2015-10-24 11:58:57 +03:00
coelckers
117783a785
Merge pull request #419 from alexey-lysiuk/spawnspot_nomonsters
...
'no monsters' option is no longer ignored in ACS Spawn functions
2015-10-18 21:03:48 +02:00
alexey.lysiuk
27135d5c5d
Fixed crash on loading map with corrupt linedefs and/or sectors
...
See http://forum.zdoom.org/viewtopic.php?t=49276
2015-10-18 16:28:42 +03:00
alexey.lysiuk
869e168495
'no monsters' option is no longer ignored in ACS Spawn functions
...
See http://forum.zdoom.org/viewtopic.php?t=46459
2015-10-18 15:54:07 +03:00
MajorCooke
c5f433d80a
No more BASETHRESHOLD.
2015-10-14 07:36:30 -05:00
alexey.lysiuk
916b5f796d
Updated list of video resolutions for Cocoa backend
...
Added resolutions for iMac Retina 4K 21.5"
Added comments about a few resolutions specific to Macs
2015-10-14 13:17:21 +03:00
Edoardo Prezioso
4cd793ca2f
- Fixed broken projectile firing projectiles code.
...
This went unnoticed since ZDoom 2.0.90, which introduced the bug. Discovered with the recent TFlags improvements.
2015-10-13 09:13:37 +02:00
Edoardo Prezioso
6678c3550e
- Improve the TFlags code and fix the new errors.
...
The previous version didn't detect some real mistakes in code which used operator& with the wrong flagset (for now 'converted' to the correcly equivalent counterpart, waiting for the proper fix).
2015-10-13 00:30:06 +02:00
MajorCooke
75100d76fb
- Added Threshold Manipulation.
...
- Added 'threshold' and 'defthreshold' to DECORATE expression exposure.
- ChaseThreshold sets the default threshold for how long a monster must chase one target before it can switch targets. Default is 100, must not be negative.
- A_SetChaseThreshold can be used to alter the current or default threshold of an actor <pointer>.
- Changing current threshold has no effect on what the default will be once it hits 0 and something makes it infight with another.
2015-10-12 11:06:55 -05:00
coelckers
72445667e3
Merge pull request #412 from MajorCooke/Iceshatter
...
ICESHATTER Flag
2015-10-11 19:45:01 +02:00
MajorCooke
380b5c1eb7
- Added ICESHATTER flag.
...
- Any inflictor with this flag can break ice corpses
2015-10-11 09:10:33 -05:00
coelckers
c1496ea1bf
Merge pull request #390 from MajorCooke/SetPainThreshold
...
- Added A_SetPainThreshold for the calling actor('s pointer).
2015-10-11 15:55:32 +02:00
alexey.lysiuk
fe61b8064a
Fixed MSVC warning in a_randomspawner.cpp
...
...\src\g_shared\a_randomspawner.cpp(32): warning C4800: 'DWORD' : forcing value to bool 'true' or 'false' (performance warning)
See http://forum.zdoom.org/viewtopic.php?t=49737
2015-10-11 09:28:38 +03:00
coelckers
ba651ebff7
Merge pull request #410 from MajorCooke/CloserZDisable
...
A_JumpIfCloser Z Check Toggle
2015-10-10 23:11:06 +02:00
MajorCooke
21dc45bdec
This did not save out properly...
2015-10-10 15:30:18 -05:00
MajorCooke
455b70630d
- Added A_JumpIfCloser NoZ boolean. Disables Z distance checking if true.
2015-10-10 10:11:59 -05:00
coelckers
3b2e8f3401
Merge pull request #409 from alexey-lysiuk/back_overlap_crash
...
Fixed crash when clicking on back button in main menu
2015-10-10 16:13:48 +02:00
coelckers
45d573a2f2
Merge pull request #393 from alexey-lysiuk/fix_random_spawner
...
Small improvements for random spawner
2015-10-10 16:12:17 +02:00
alexey.lysiuk
bad9961376
Fixed crash when clicking on back button in main menu
...
If menu item selection overlaps back button in main menu, clicking on back button with mouse caused a crash
See http://forum.zdoom.org/viewtopic.php?t=49711
2015-10-10 15:03:14 +03:00
ZZYZX
e669e3cd08
Cosmetic fixes to actionspecials.h
2015-10-09 16:03:59 +03:00
ZZYZX
7bfce1d176
Fixed crash in R_ClipSpriteColumnWithPortals if seg->curline is null
2015-10-08 21:16:30 +03:00
alexey.lysiuk
99dd664029
Print warning to console if unknown texture found in menu definition
2015-10-07 12:13:11 +03:00
alexey.lysiuk
005e468fa9
Fixed crash when menu item uses non-existent texture
...
See http://forum.zdoom.org/viewtopic.php?t=49696
2015-10-07 12:11:27 +03:00
Braden Obrzut
df9053ea99
Merge branch 'CheckBlock'
2015-10-06 22:36:24 -04:00
MajorCooke
2f3b69e770
Optimize a little more...
2015-10-04 16:12:35 -05:00
MajorCooke
154e023800
- Added A_CheckBlock(state block, int flags, int ptr).
...
- Performs a jump if an actor or a line is in the way.
- Can be used without a jump state if the desire is only to have a pointer change.
- CBF_NOLINES disables jumping if a line is involved.
- CBF_SET* flags set the target, master or tracer to whoever is blocking, for the actor calling the function.
- CBF_SETONPTR causes the pointer changing flags to apply to the pointed actor instead of itself.
2015-10-04 16:00:40 -05:00
MajorCooke
e2d874e343
Applied _mental_'s suggestion
2015-10-04 12:37:49 -05:00
MajorCooke
af9478f818
- Added Warp properties RadiusOffset and Pitch.
...
- RadiusOffset is a multiplier of the target actor's radius added onto the offsets x and y.
- Pitch is added to the warping actor's current pitch, provided WARPF_USEPITCH is supplied.
- Fixed WARPF_TOFLOOR not working as intended.
2015-10-03 17:28:54 -05:00
MajorCooke
28622cecaf
- Added mindist parameter to A_RadiusGive.
...
- Actors must be this far away to receive items. Mindist must be less than distance.
- Fixed RGF_OBJECTS not discriminating players and monsters from shootable or vulnerable actors.
2015-09-29 11:40:44 -05:00
coelckers
beb2a4fc64
Merge pull request #396 from alexey-lysiuk/console_dbgout
...
Make console text to appear in Windows debug output
2015-09-23 09:47:09 +02:00
alexey.lysiuk
37dde2e77d
Make console to Windows debug output controlled by CVAR
...
DebugView can be used to view output without debugger attached
2015-09-23 10:18:57 +03:00
alexey.lysiuk
c743b19e6d
Make console text to appear in Windows debug output
...
This works in Debug configuration only
Color escape sequences are stripped from text before output
2015-09-22 15:19:44 +03:00
khokh2001
b1b17beaf6
nuked opl emulator update
2015-09-20 02:14:24 +09:00
alexey.lysiuk
96ff716046
Added error message about missing class to drop from RandomSpawner
2015-09-19 18:29:59 +03:00
alexey.lysiuk
49519db257
Fixed crash in RandomSpawner with -nomonsters
...
See http://forum.zdoom.org/viewtopic.php?f=2&t=49520
2015-09-19 18:29:07 +03:00
Christoph Oelckers
4e1723eeb7
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
wadsrc/static/compatibility.txt
2015-09-19 12:32:22 +02:00
ZzZombo
98bdbb1ad8
-Fixed PCD_DROP affecting script result value.
2015-09-19 09:40:19 +08:00
Christoph Oelckers
b613db4ae5
Revert "Merge pull request #359 from Leonard2/master"
...
This reverts commit 364ca11b43
, reversing
changes made to dae0e217d1
.
Conflicts:
src/r_data/r_interpolate.cpp
2015-09-18 17:41:16 +02:00
alexey.lysiuk
621116a289
Disabled loading of SDL output plugin for FMOD Ex on OS X
...
Long path to executable file corrupts stack inside FMOD library
This plugin is not being built for OS X, output through CoreAudio works just fine
2015-09-18 10:53:46 +03:00
MajorCooke
6730525855
- Added A_SetPainThreshold for the calling actor('s pointer).
2015-09-17 09:07:13 -05:00
alexey.lysiuk
924a2aaaa7
Added "support" for PCD_CONSOLECOMMAND in ACS
...
Now attempt to execute a console command from a script will not terminate its execution
An error message will be issued in the console on every such attempt
2015-09-16 16:56:43 +03:00
alexey.lysiuk
b2fa4970fd
Fixed potential crash in ACS engine
...
Unknown p-code in compiled script may lead to a crash if the current module was changed during script execution, e.g. by function call
See http://forum.zdoom.org/viewtopic.php?f=2&t=48524
2015-09-16 16:13:56 +03:00
alexey.lysiuk
fea2cb38cc
Fixed compatibility flags comparison for point-on-line
...
Now it works in both cases: for compatibility mode set by user and for internal compatibility handler
2015-09-15 19:27:05 +03:00
alexey.lysiuk
39b18a3447
Improved point-on-line compatibility feature
...
P_PointOnLineSide() and P_PointOnDivlineSide() functions from the initial Doom source code release are used in compatibility mode
2015-09-15 18:21:05 +03:00
alexey.lysiuk
ee7eb3253a
Added compatibility flag for point-on-line algorithm
...
It's possible to use original but buggy implementations of P_PointOnLineSide() and P_PointOnDivlineSide() function
See http://forum.zdoom.org/viewtopic.php?f=2&t=49544
2015-09-15 16:45:20 +03:00
Christoph Oelckers
0f425c4c3c
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
wadsrc/static/compatibility.txt
2015-09-15 12:53:28 +02:00
Blue-Shadow
d7a04b9e98
dumpmapthings CCMD: Missing line break after "none".
2015-09-14 17:22:41 +03:00
Braden Obrzut
f02b52ef28
- Fixed: Initialization ordering warning in DPSpriteInterpolation.
2015-09-13 20:56:20 -04:00
coelckers
afa438419d
Merge pull request #379 from Edward850/sanitize
...
ACS module error was missing newline
2015-09-13 08:55:14 +02:00
Edward Richardson
36c7002628
ACS module error was missing newline
2015-09-13 13:46:02 +12:00
Chris
a90ea55e2c
- Removed duplicate 'acceleratestage' check.
2015-09-12 23:01:56 +01:00
Teemu Piippo
69fd0e6eb4
Stylistical coherence..
2015-09-12 14:07:40 +03:00
Teemu Piippo
67a7f48ca3
Handle locknumber in boundary checks, check for FS_Execute
2015-09-12 14:02:07 +03:00
Teemu Piippo
2f027504b6
Show sector action boundaries on the automap like line specials are.
2015-09-12 04:47:49 +03:00
coelckers
890233d5fe
Merge pull request #375 from XaserAcheron/master
...
Added FPF_NOAUTOAIM to A_FireCustomMissile
2015-09-10 11:29:03 +02:00
Xaser Acheron
5afbe8ca00
Fixed compiler warning for FPF_NOAUTOAIM flag check
2015-09-09 18:54:49 -05:00
Edoardo Prezioso
19c702a608
- Fixed a crash when a player dies in damage floors.
2015-09-09 21:26:44 +02:00
Xaser Acheron
8948f5dc2b
Added FPF_NOAUTOAIM to A_FireCustomMissile
2015-09-08 10:40:21 -05:00
coelckers
364ca11b43
Merge pull request #359 from Leonard2/master
...
Added weapon interpolation.
2015-09-08 09:06:40 +02:00
MajorCooke
143a4c78a9
- Added A_SetFloatSpeed.
...
- Sets the FloatSpeed of the actor/pointer.
2015-09-06 19:57:43 -05:00
Chris
99120d8442
- Fixed: A_SkullPop did not work with spy mode.
2015-09-06 12:12:57 +01:00
Christoph Oelckers
61e09da1be
Merge branch 'master' of https://github.com/rheit/zdoom
2015-09-06 08:41:27 +02:00
Edoardo Prezioso
e939d6885d
- Fixed a crash in ACS strlen parsing with invalid argument.
2015-09-05 23:58:02 +02:00
Edward Richardson
9aabc85281
Fixed loading default map saves
...
- Just like normal maps, default map stores an FString as a map name.
2015-09-05 17:13:54 +12:00
Edward Richardson
abb033d400
Fix deallocation of controllers with no axes
2015-09-05 14:18:48 +12:00
Edward Richardson
8ec4d431cf
Fixed memory leak in joystick menu
2015-09-05 14:12:52 +12:00
Leonard
0fa24ab82d
Use barrier_cast instead of static_cast
2015-08-31 13:04:40 +02:00
Edward Richardson
02c562518d
Fixed possible sync issue with frag counts
2015-08-30 23:36:00 +12:00
Edward Richardson
b87435ac9d
Remove unnecessary FriendlyFire global
2015-08-30 22:56:34 +12:00
Edward Richardson
389ff4fc98
Shift self-clip to first check for performance
2015-08-30 22:02:36 +12:00
alexey.lysiuk
677dc8893e
Fixed compilation on non-Windows OSes
2015-08-29 14:55:10 +03:00
Gaerzi
98f214ee66
Added support for GOG paths
...
This works a bit differently from the Steam version, because each game
has its own registry keys and its own independent path.
2015-08-28 19:14:25 +02:00
Christoph Oelckers
0a8255f34b
Merge branch 'master' of https://github.com/rheit/zdoom
2015-08-27 12:49:23 +02:00
Christoph Oelckers
696c6af588
- fixed: FString's 'Strip...' functions could crash on empty strings.
2015-08-27 12:48:43 +02:00
Christoph Oelckers
d87b6d6337
Merge branch 'WarpHeightOffset' of https://github.com/MajorCooke/zdoom
2015-08-26 08:46:20 +02:00
MajorCooke
ebf515f8c7
- Fixed unneeded dual call to SetOrigin.
2015-08-25 20:18:06 -05:00
MajorCooke
2731643200
Removed stricmp checks, as they're not needed.
2015-08-25 08:15:23 -05:00
MajorCooke
f9e70a82c6
- Added A_SetSpecies(<species>,<pointer>).
2015-08-24 12:45:10 -05:00
Leonard
86e9504d04
Added weapon interpolation.
2015-08-19 15:59:54 +02:00
Christoph Oelckers
d786148ccf
- fixed: the 'gameversion' console output was missing a trailing linefeed.
2015-08-16 20:33:34 +02:00
Christoph Oelckers
2d58a28cc3
- fixed: In Heretic an active Tome of Power should not freeze a teleporting player.
...
This was implemented by adding a new inventory flag INVENTORY.NOTELEPORTFREEZE so that the effect can both be activated for other items and deactivated for the two that currently have it.
2015-08-16 08:50:22 +02:00
Christoph Oelckers
5a7afad0b3
Merge branch 'master' of https://github.com/rheit/zdoom
2015-08-12 10:08:01 +02:00
Christoph Oelckers
2ed3cec4db
- externalized strings from Raven intermission screen.
2015-08-11 22:30:29 +02:00
Christoph Oelckers
b06770cb92
- fixed: A_Respawn did not reset the actor's radius.
2015-08-11 17:12:16 +02:00
MajorCooke
9c24e9ac71
- Removed the check for APlayerPawn and just went with player checking alone.
...
- Updated the savever, demogameversion, and mindemoversion.
2015-08-11 06:53:28 -05:00
MajorCooke
cac600733f
- Added Remove <classname> console command.
2015-08-10 20:45:18 -05:00
MajorCooke
87cc3f77f9
- Removed WARPF_ADDHEIGHT.
2015-08-10 16:05:44 -05:00
MajorCooke
54af1e379e
- Removed WARPF_MULHEIGHT. Enable its ability by default.
...
- WARPF_ADDHEIGHT will simply change HeightOffset from multiplying to adding by default.
2015-08-10 15:03:29 -05:00
MajorCooke
7e661dfe57
- Clean up.
2015-08-10 12:41:40 -05:00
MajorCooke
9cf8a2a26c
- Missed a spot.
2015-08-10 12:20:42 -05:00
MajorCooke
ad14caa800
- Added A_Warp heightoffset property. Only has an effect by two flags.
...
- WARPF_ADDHEIGHT adds the pointed actor's height to heightoffset, and adds to the pointed actor's z position.
- WARPF_MULHEIGHT multiplies the pointed actor's height by heightoffset, and adds to the pointed actor's z position. Overridden by ADDHEIGHT.
2015-08-10 11:19:54 -05:00
MajorCooke
fcf1d56b1a
- Added SXF_IS<TARGET/MASTER/TRACER>.
...
- The spawned actor becomes the calling actor's specified pointers respectively.
2015-08-09 14:06:22 -05:00
Christoph Oelckers
3efbf6c74e
- fixed: am_restorecolors did not work
...
This CCMD tried to access the current menu to decide which colors to reset but that is not available at all when this function gets called. It now uses the automap's own CVAR arrays.
2015-08-09 09:03:12 +02:00
Christoph Oelckers
58870d4871
- fixed: SingleActorFromTid wasn't declared in thingdef_codeptr.cpp
2015-08-01 23:17:06 +02:00
Christoph Oelckers
36974431ba
Merge branch 'master' into scripting
...
Conflicts:
src/thingdef/thingdef_codeptr.cpp
2015-08-01 09:42:31 +02:00
Christoph Oelckers
44d25afaef
Merge branch 'master' of https://github.com/rheit/zdoom
2015-08-01 09:38:37 +02:00
Christoph Oelckers
d9cc7c52ee
- some declarations for selecting the proper GPU on modern laptops.
2015-08-01 09:38:20 +02:00
Christoph Oelckers
78c21bfb05
- last commit was wrong (forgot to save my second change before committing.
2015-07-31 15:49:47 +02:00
Christoph Oelckers
2be19a87ba
- fixed some bad boolean logic in fly cheat command.
2015-07-31 15:47:47 +02:00
Benjamin Moir
7163aa9667
Moved Warp to the ZDoom range
2015-07-31 22:28:10 +09:30
Benjamin Moir
efce2a200c
Added WARPF_USETID to A_Warp
2015-07-31 22:24:01 +09:30
Christoph Oelckers
701fc374f7
- consolidated A_Warp and ACS Warp code into a subfunction.
2015-07-31 08:40:33 +02:00
Benjamin Moir
cf43bd969d
Added Warp to ACS
2015-07-30 16:56:54 +09:30
MajorCooke
9319854590
Small bugfixes
...
- Fixed a couple tiny bugs with A_ScaleVelocity and A_ChangeVelocity using self instead of ref.
2015-07-27 12:20:32 -05:00
MajorCooke
ce1037af95
- Missing check for RGF_PLAYERS/VOODOO.
2015-07-24 13:48:46 -05:00
MajorCooke
41b4df71c2
Use IsKindOf instead of MF_SPECIAL to check for an inventory item.
2015-07-22 17:12:42 -05:00
MajorCooke
b4f05ee89b
- Significant A_RadiusGive update.
...
- Added filter and species parameter.
- Added new flags: RGF_INCLUSIVE, RGF_ITEMS, RGF_KILLED, RGF_EXFILTER, RGF_EXSPECIES, and RGF_EITHER.
- RGF_ITEMS: Items can receive inventory.
- RGF_KILLED: Actors who are truly dead might not be corpses, and vice versa.
- RGF_EXFILTER: Blacklists the specified actor filter. All but the filtered actor can receive the item.
- RGF_EXSPECIES: Blacklists the specified species. All but the filtered species can receive the item.
- RGF_EITHER: The actor can receive the item if it satisfies either the filter or the species. Only useful when both are used.
- RGF_INCLUSIVE: An actor marked as more than one pointer to the calling actor can ignore the exclusion pointers, but only if at least one is missing. I.e. an actor who is a target and tracer of the calling actor can still receive the item, if the calling actor doesn't pass RGF_NOTARGET and NOTRACER at the same time. RGF_INCLUSIVE only works with the pointer filtering flags. By default, if not specified, the actor will not be loopholed the item if they are under any one of the three filters.
- Fixed discrepancies and dependencies upon several flags and actor conditions which caused the function to fail.
2015-07-22 16:46:14 -05:00
Christoph Oelckers
d8ea128f38
Merge branch 'master' into scripting
...
Conflicts:
src/p_effect.cpp
src/p_effect.h
src/p_local.h
src/p_map.cpp
src/thingdef/thingdef_codeptr.cpp
2015-07-16 20:37:17 +02:00
coelckers
7be6041f57
Merge pull request #347 from edward-san/xs_float_infinite_loop
...
- Fixed a dangerous typo in xs_Float code.
2015-07-16 20:26:21 +02:00
coelckers
e857d875cc
Merge pull request #346 from edward-san/uninitialized_build_stairs
...
- Fixed an uninitialized variable in stairs code.
2015-07-16 20:25:46 +02:00
Edoardo Prezioso
f57e23989b
- Fixed a dangerous typo in xs_Float code.
...
The function 'xs_CeilToUInt' would call itself, leading to infinite loop, due to a typo. It should call 'xs_CeilToInt' instead.
2015-07-16 19:54:27 +02:00
Edoardo Prezioso
1bd23150aa
- Fixed an uninitialized variable in stairs code.
...
'floor->m_Hexencrush' was left uninitialized in all the floor movers after the first one.
2015-07-16 19:46:54 +02:00