diff --git a/README.md b/README.md index 8867775af..b35e4dd21 100644 --- a/README.md +++ b/README.md @@ -130,6 +130,7 @@ Example: `set overunder 1` * `r_drawplayersprites` (default: on) - Same meaning as the same-named [GZDoom CVAR](https://zdoom.org/wiki/CVARs:Display#r_drawplayersprites) * `overunder` (default: off) - Allow things to move over/under other things (adapted from [Crispy Doom](https://github.com/fabiangreffrath/crispy-doom) and [Nugget Doom](https://github.com/MrAlaux/Nugget-Doom)) * `announce_100p_max` (default: off) - Announce when 100% kills, items, and secrets has been achieved. +* `weapon_bob_only` (default: off) - Only bob player's weapon, not the player's view. # Reference Material diff --git a/prboom2/src/c_cvar.c b/prboom2/src/c_cvar.c index 1cb91577d..8f7bd6b9c 100644 --- a/prboom2/src/c_cvar.c +++ b/prboom2/src/c_cvar.c @@ -109,6 +109,7 @@ void C_CvarInit() C_CvarCreate("r_drawplayersprites", "1", CVAR_FLAG_ARCHIVE); C_CvarCreate("overunder", "0", CVAR_FLAG_ARCHIVE); C_CvarCreate("announce_100p_max", "0", CVAR_FLAG_ARCHIVE); + C_CvarCreate("weapon_bob_only", "0", CVAR_FLAG_ARCHIVE); } } diff --git a/prboom2/src/p_user.c b/prboom2/src/p_user.c index 8ff8bb974..fd98d97b0 100644 --- a/prboom2/src/p_user.c +++ b/prboom2/src/p_user.c @@ -43,6 +43,7 @@ #include "r_fps.h" #include "g_game.h" #include "e6y.h"//e6y +#include "c_cvar.h" // // Movement. @@ -169,7 +170,7 @@ void P_CalcHeight (player_t* player) player->bob = MAXBOB; } - if (!onground || player->cheats & CF_NOMOMENTUM) + if (!onground || player->cheats & CF_NOMOMENTUM || C_CvarIsSet("weapon_bob_only")) { player->viewz = player->mo->z + VIEWHEIGHT;