e474ebc2b7
* For RR, `processweapon_r()` was performing angle and horizon changes directly which provided a harsh experience with the default `cl_syncinput 0` mode. * Added `angAdjust` variable to `player_struct` for use with ticrate angle adjustments. * Renamed `horizAngleAdjust` to `horizAdjust` so that there is less confusion with the new `angAdjust` variable. * Removed `horizSkew` variable, can just use `horizAdjust` for this. * Replaced all calls to `addang()` and `addhoriz()` with the appropriate additions/subtractions to `angAdjust` and `horizAdjust` respectively. * Removed now unused `addang()` and `addhoriz()` setters from `player_struct`. * Define new function `resetinputhelpers()` to eliminate code duplication between `processinput_d()` and `processinput_r()` functions. * Remove `p->q16ang` and `p->q16horiz` direct setting from `FinalizeInput()`. * Change `applylook()` to accept an `fixed_t adjustment` for changing the player's angle. This can either be `input.q16avel` when `cl_syncinput` is 0, or `sync[snum].q16angvel` when `cl_syncinput` is 1. * Change `sethorizon()` to accept an `fixed_t adjustment` for changing the player's horizon. This can either be `input.q16horz` when `cl_syncinput` is 0, or `sync[snum].q16horz` when `cl_syncinput` is 1. * Re-work `sethorizon()` to always adjust `p->q16horiz` using the true pitch code. This closer resembles the EDuke32 implementation as per SVN 7342. * Re-work returning to center to work off the true pitch code and always ensure that the player returns to center. * Implement work-around for RR where we need to call `sethorizon()` before the call to `fi.doincrements()` like the original game, but also after the call to `processweapon()` to apply any angle or horizon changes due to weapon recoil, etc. We work around this by calling `sethorizon()` from within `doincrements_r()` only if `cl_syncinput` is 1 and only if `doincrements_r()` is to return 1. |
||
---|---|---|
.github/workflows | ||
bin/windows/zmusic | ||
build-doc | ||
cmake | ||
libraries | ||
package/common | ||
platform/Windows | ||
soundfont | ||
source | ||
tools | ||
wadsrc | ||
.gitattributes | ||
.gitignore | ||
AUTHORS.md | ||
CMakeLists.txt | ||
README.md |
Welcome to Raze!
Raze is a fork of EDuke32 backed by GZDoom tech and combines EDuke32, PCExhumed, NBlood, and RedNukem in a single package.
Copyright (c) 1998-2020 ZDoom + GZDoom teams, and contributors
Doom Source (c) 1997 id Software, Raven Software, and contributors
EDuke32 Source (c) 2005-2020 EDuke32 teams, and contributors
NBlood source (c) 2019 Nuke.YKT
PCExhumed source (c) 2019 sirlemonhead, Nuke.YKT
Duke Nukem 3D Source (c) 1996-2003 3D Realms
Shadow Warrior Source (c) 1997-2005 3D Realms
"Build Engine & Tools" Copyright (c) 1993-1997 Ken Silverman Ken Silverman's official web site: http://www.advsys.net/ken See the included license file "BUILDLIC.TXT" for license info.
Please see license files for individual contributor licenses
Special thanks to Coraline of the 3DGE team for allowing us to use her README.md as a template for this one.
Non-Build code is licensed under the GPL v2
https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
How to build Raze
To build Raze, please see the wiki and see the "Programmer's Corner" on the bottom-right corner of the page to build for your platform - use this repository instead of GZDoom's.