Commit graph

1847 commits

Author SHA1 Message Date
Christoph Oelckers
8a1206edbc Merge remote-tracking branch 'remotes/origin/master' into back_to_basics2 2020-07-05 11:55:41 +02:00
Mitchell Richters
c70cc474a0 - change mouse input from int to float and adjust games accordingly.
* Calculate game-side mousex/mousey divisions into the calculations performed in `InputState::GetMouseDelta()`.
* Fix mouse speed when `in_mousesmoothing` is true (wasn't factoring in / 3.f division used in non-true vector.
* Standard mouse forward/side movement speeds in Exhumed & SW with that of other games.
* Remove `strafeyaw` code from Duke/Exhumed/RR as it's not necessary and was leading to situations where the player would continually keep moving sideways even without input.
* Change mouse forward/side velocities to -= current value as is done with controller input and the player's angle/aim velocities.
2020-07-04 18:28:00 +02:00
Christoph Oelckers
68d7d57b3b - fixed menu registration. 2020-07-02 01:24:46 +02:00
Christoph Oelckers
2e98b2f8da - quote cleanup. 2020-06-30 22:53:15 +02:00
Christoph Oelckers
e0ad1aa0cd - cleanup of animlib.
* operate on a parameter-specified data structure instead of a global one
* moved error checks into the library code.
2020-06-27 11:47:31 +02:00
Christoph Oelckers
7490d6cd18 - 2d stuff 2020-06-25 21:51:44 +02:00
Mitchell Richters
8c723f52d1 - make controller input identical across all games.
* Convert axes in ControlInfo struct from int32_t to float as what's received from the backend.
* Remove all the scale up/down math since we don't need that with floats and replace with float constants that match old behaviour.
* Store q16mlook scaling as a constant for use with mouse and upcoming controller code.
* Add required controller code to Blood as the only game not to have working controllers.
* Fix typos in (gInput.forward > input.forward) for `ctrlGetInput()` in Blood.
* Remove use of `scaleAdjustmentToInterval()` on Exhumed and Shadow Warrior as they only process forward/side velocities within the game's ticrate.
* Repair angvel/aimvel scaling mistakes from d79a5d256d.
* Scale dyaw and dpitch by 25% for Shadow Warrior as the game runs 25% faster than the other games, leading to faster input.
2020-06-24 20:08:56 +02:00
Christoph Oelckers
e146e73345 - consolidated the 'music' parsing in Defs (pending a refactor of the MAPINFO system.)
- removed the remaining parts of the game Defs parser because we do not want anything EDuke in here.
2020-06-24 00:40:22 +02:00
Christoph Oelckers
eb6aac4c43 - fixed compile 2020-06-21 23:46:17 +02:00
Christoph Oelckers
0dacfb0049 - fixed compile 2020-06-21 22:53:08 +02:00
Christoph Oelckers
e9925eee0f - preparation work.
# Conflicts:
#	source/core/gamecontrol.cpp
2020-06-21 20:59:07 +02:00
Mitchell Richters
3325ef272e - make r_ambientlight work globally for all games by performing adjustment engine-side. 2020-06-21 10:12:54 +02:00
Christoph Oelckers
9687facc88 - removed dead timerUninit call 2020-06-20 11:47:21 +02:00
Dino Bollinger
ba4eb3f906 Fix crash during demo playback caused by a mistake in 5132b41f 2020-06-17 17:10:11 +02:00
Dino Bollinger
a5085c3631 Expose newgamecustom menu and submenu index to CON (read-only).
New userdef struct members: ud.m_newgamecustom, ud.m_newgamecustomsub
2020-06-17 17:10:11 +02:00
Dino Bollinger
79d3a36106 Duke3D: Fix frozen players floating in mid-air 2020-06-17 17:10:11 +02:00
Richard C. Gobeille
815df3ed38 Duke3d: fix player still being able to look around while frozen 2020-06-17 17:10:11 +02:00
Mitchell Richters
db5a4b49eb - Duke3D: Fix issues caused from cherry pick from upstream.
This change from a5c9a702e9 needs to be dropped due to how we're handling one_eighty_count as per 2129d3b4e7.
2020-06-17 17:10:11 +02:00
Dino Bollinger
54ce1b5c06 Fix minor memory leak in Net_Connect()
# Conflicts:
#	source/duke3d/src/network.cpp
2020-06-17 12:26:05 +02:00
Richard C. Gobeille
4e9144dd20 Duke3d: fix GREENSLIME issue introduced by 6335a9a2e515329a159b03ba0c8a32136dc6ac42 2020-06-17 12:26:04 +02:00
Richard C. Gobeille
54d9a1a711 Duke3d: add some labels for the different GREENSLIME states 2020-06-17 12:26:04 +02:00
Richard C. Gobeille
5574f0bd74 Duke3d: add player .somethingonplayer check to GREENSLIME, and reset the player's .somethingonplayer to -1 if the player is dead 2020-06-17 12:26:04 +02:00
Richard C. Gobeille
39b1c3cee9 Duke3d: fix longstanding bug with unfrozen GREENSLIME
This fixes some undefined behavior that occurred as a result of reading far past the bounds of slimeFrames[].
2020-06-17 12:26:04 +02:00
Dino Bollinger
d3b6991846 Duke3D: This should fix players being able to superjump out of water 2020-06-17 12:26:03 +02:00
Richard C. Gobeille
28911435d9 Duke3d: fix regression with the Devastator's ability to damage sprites in sectors other than the sector the rocket hit
Fixes terminx/eduke32#62.
2020-06-17 12:26:03 +02:00
Richard C. Gobeille
a5c9a702e9 Duke3d: fix jittery view on moving sectors
This also fixes the interpolation for gamefunc_TurnAround and stomping on enemies. Fixes terminx/eduke32#60.

# Conflicts:
#	source/duke3d/src/actors.cpp
#	source/duke3d/src/game.cpp
#	source/duke3d/src/premap.cpp
2020-06-17 12:26:02 +02:00
Richard C. Gobeille
f5aa302475 Duke3d: fix issue with player movement not being locked when crushing shrunken enemies
Fixes terminx/eduke32#59.
2020-06-17 12:26:02 +02:00
Richard C. Gobeille
5e4fd35738 Duke3d: fix issue where the player was unable to look or move under some circumstances after being "killed" with god mode enabled
Fixes #56.
2020-06-17 12:26:02 +02:00
Christoph Oelckers
2c2b871083 - fixed texture validation checks. 2020-06-17 12:26:02 +02:00
Christoph Oelckers
b753ea5db7 - preparations for passing palette lookup textures through the low level texture code. 2020-06-17 12:26:01 +02:00
Christoph Oelckers
2a29dbf793 - use backend independent code to render the camera textures. 2020-06-14 21:57:21 +02:00
Christoph Oelckers
946da7d622 - moved the textures used for the animations into the texture manager.
This is to allow giving them a texture ID so that they can be used from ZScript which has no access to naked textures.
This also consolidates AnimTexture and VpxTexture.
2020-06-14 20:27:13 +02:00
Christoph Oelckers
d4cdb31464 - backend update to make the ZScript compiler work. 2020-06-14 18:58:30 +02:00
Mitchell Richters
7b3ad35cc2 - Duke3D & RR: Always process cheats even while paused.
* Resolves https://forum.zdoom.org/viewtopic.php?f=340&t=68961
2020-06-13 17:53:29 +02:00
Christoph Oelckers
1311db9ac9 - changed all places clearing the screen in 2D display code to use the 2D drawer's ClearScreen method. 2020-06-12 20:52:01 +02:00
Christoph Oelckers
60b18c7ec9 - Blood: use the 2D drawer to clear the screen for 2D display. 2020-06-12 20:31:23 +02:00
Christoph Oelckers
4f0e3adfbb - removed pointless constexpr declaration on numeric constants. 2020-06-12 16:49:35 +02:00
Christoph Oelckers
3b7f494a88 Merge branch 'master' of https://github.com/coelckers/Raze 2020-06-12 16:44:14 +02:00
Mitchell Richters
d79a5d256d - fix joystick scaling for all games.
* Repairs https://forum.zdoom.org/viewtopic.php?f=340&t=67239 and https://forum.zdoom.org/viewtopic.php?f=340&t=67933
* Values that come from GZDoom backend are too low to be suitable for the Build games which were dividing by 'analogExtent'.
* Remove definition of analogExtent from all games and define in inputstate.h, then define joyaxesScale as 75% of analogExtent to provide a bit of headroom and not have a scale of 1.0 be full speed.
* Invert the returned results of GetAxes() as the returned floats are reversed for build games.
* Leverage scaleAdjustmentToInverval() on game-side code to consistently scale the input irrespective of frame rate, vsync etc.
2020-06-12 16:44:08 +02:00
Christoph Oelckers
f2d075e0d0 - code cleanup. 2020-06-12 00:37:40 +02:00
Christoph Oelckers
9aa2224110 - remove the remains of Lunatic from RR code. 2020-06-07 10:46:22 +02:00
NY00123
a54d408d59 Duke3D: Remove KEEPINSYNC comments referencing LUA code
# Conflicts:
#	source/duke3d/src/_functio.h
#	source/duke3d/src/duke3d.h
#	source/duke3d/src/game.h
#	source/duke3d/src/global.h
2020-06-07 10:38:55 +02:00
NY00123
ec11d22caf Use static instead of LUNATIC_EXTERN
# Conflicts:
#	source/build/include/build.h
#	source/duke3d/src/gamedef.cpp
2020-06-07 10:36:43 +02:00
NY00123
3592118e25 source/duke3d/src/actors.h: Remove last remaining mention of the
LUNATIC macro in Duke3D. AC_ACTIONTICS and AC_MOVFLAGS are still used.
2020-06-07 10:34:13 +02:00
NY00123
ea06e35025 source/duke3d/src/osdcmds.cpp:osdcmd_spawn: Remove
LUNATIC-specific code while defining the two loop vars at once.

# Conflicts:
#	source/duke3d/src/osdcmds.cpp
2020-06-07 10:34:12 +02:00
NY00123
40abf17f2f Duke3D: Remove a few more LUNATIC-specific definitions and macro references 2020-06-07 10:33:53 +02:00
NY00123
db71bb9ba7 source/duke3d/src/gamevars.cpp: Remove LUNATIC definition of ADDWEAPONVAR
# Conflicts:
#	source/duke3d/src/gamevars.cpp
2020-06-07 10:33:40 +02:00
NY00123
6a4960c774 source/duke3d/src/gamevars.cpp: Remove POSTADDWEAPONVAR, since this
is a no-op in non-LUNATIC builds, which will be the only ones to stay.
2020-06-07 10:33:18 +02:00
NY00123
fe020facf9 source/duke3d/src/player.cpp: Remove LUNATIC implementation of
G_HandlePal. In fact, let's not use a separate P_HandlePal function.
2020-06-07 10:33:17 +02:00
NY00123
a1bfbb0b21 source/duke3d/src/premap.cpp:P_ResetTintFade: Remove LUNATIC-specific
assignment, but keep the function instead of separately setting pals.f.
2020-06-07 10:33:17 +02:00