From 2dfb87cf03f085ce789199d23a3df7c74449e3f7 Mon Sep 17 00:00:00 2001 From: danij Date: Wed, 7 Apr 2010 15:42:24 +0100 Subject: [PATCH] Fixed All Games: Tiny difference in walk-to-stop mobj momentum threshold compared to original behavior. --- doomsday/plugins/jdoom/src/p_mobj.c | 10 +++++----- doomsday/plugins/jdoom64/src/p_mobj.c | 10 +++++----- doomsday/plugins/jheretic/src/p_mobj.c | 10 +++++----- doomsday/plugins/jhexen/src/p_mobj.c | 10 +++++----- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/doomsday/plugins/jdoom/src/p_mobj.c b/doomsday/plugins/jdoom/src/p_mobj.c index 784e158bfe..d5eec0fbdb 100644 --- a/doomsday/plugins/jdoom/src/p_mobj.c +++ b/doomsday/plugins/jdoom/src/p_mobj.c @@ -54,7 +54,7 @@ #define MAX_BOB_OFFSET (8) #define NOMOMENTUM_THRESHOLD (0.000001f) -#define STOPSPEED (1.0f/1.6/10) +#define WALKSTOP_THRESHOLD (0.062484741f) // FIX2FLT(0x1000-1) #define DROPOFFMOMENTUM_THRESHOLD (1.0f / 4) // TYPES ------------------------------------------------------------------- @@ -338,10 +338,10 @@ void P_MobjMoveXY(mobj_t *mo) } // Stop player walking animation. - if(!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && - player->plr->mo != mo /* $voodoodolls: Stop animating. */) && - INRANGE_OF(mo->mom[MX], 0, STOPSPEED) && - INRANGE_OF(mo->mom[MY], 0, STOPSPEED)) + if((!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && + player->plr->mo != mo /* $voodoodolls: Stop animating. */)) && + INRANGE_OF(mo->mom[MX], 0, WALKSTOP_THRESHOLD) && + INRANGE_OF(mo->mom[MY], 0, WALKSTOP_THRESHOLD)) { // If in a walking frame, stop moving. if(player && isInWalkState(player) && player->plr->mo == mo) diff --git a/doomsday/plugins/jdoom64/src/p_mobj.c b/doomsday/plugins/jdoom64/src/p_mobj.c index 2bc7e8a7c8..52d5bc6b06 100644 --- a/doomsday/plugins/jdoom64/src/p_mobj.c +++ b/doomsday/plugins/jdoom64/src/p_mobj.c @@ -60,7 +60,7 @@ #define MAX_BOB_OFFSET (8) #define NOMOMENTUM_THRESHOLD (0.000001f) -#define STOPSPEED (1.0f/1.6/10) +#define WALKSTOP_THRESHOLD (0.062484741f) // FIX2FLT(0x1000-1) #define STANDSPEED (1.0f/2) // TYPES ------------------------------------------------------------------- @@ -343,10 +343,10 @@ void P_MobjMoveXY(mobj_t* mo) } // Stop player walking animation. - if(!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && - player->plr->mo != mo /* $voodoodolls: Stop animating. */) && - INRANGE_OF(mo->mom[MX], 0, STOPSPEED) && - INRANGE_OF(mo->mom[MY], 0, STOPSPEED)) + if((!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && + player->plr->mo != mo /* $voodoodolls: Stop animating. */)) && + INRANGE_OF(mo->mom[MX], 0, WALKSTOP_THRESHOLD) && + INRANGE_OF(mo->mom[MY], 0, WALKSTOP_THRESHOLD)) { // If in a walking frame, stop moving. if(player && isInWalkState(player) && player->plr->mo == mo) diff --git a/doomsday/plugins/jheretic/src/p_mobj.c b/doomsday/plugins/jheretic/src/p_mobj.c index 41888de7cb..d048d68ae8 100644 --- a/doomsday/plugins/jheretic/src/p_mobj.c +++ b/doomsday/plugins/jheretic/src/p_mobj.c @@ -48,7 +48,7 @@ #define MAX_BOB_OFFSET (8) #define NOMOMENTUM_THRESHOLD (0.000001f) -#define STOPSPEED (1.0f/1.6/10) +#define WALKSTOP_THRESHOLD (0.062484741f) // FIX2FLT(0x1000-1) #define STANDSPEED (1.0f/2) // TYPES ------------------------------------------------------------------- @@ -531,10 +531,10 @@ void P_MobjMoveXY(mobj_t* mo) } // Stop player walking animation. - if(!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && - player->plr->mo != mo /* $voodoodolls: Stop animating. */) && - INRANGE_OF(mo->mom[MX], 0, STOPSPEED) && - INRANGE_OF(mo->mom[MY], 0, STOPSPEED)) + if((!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove) && + player->plr->mo != mo /* $voodoodolls: Stop animating. */)) && + INRANGE_OF(mo->mom[MX], 0, WALKSTOP_THRESHOLD) && + INRANGE_OF(mo->mom[MY], 0, WALKSTOP_THRESHOLD)) { // If in a walking frame, stop moving. if(player && isInWalkState(player) && player->plr->mo == mo) diff --git a/doomsday/plugins/jhexen/src/p_mobj.c b/doomsday/plugins/jhexen/src/p_mobj.c index 9bf695df9e..00ac927156 100644 --- a/doomsday/plugins/jhexen/src/p_mobj.c +++ b/doomsday/plugins/jhexen/src/p_mobj.c @@ -54,7 +54,7 @@ #define HEAL_RADIUS_DIST 255 #define NOMOMENTUM_THRESHOLD (0.000001f) -#define STOPSPEED (0.1f/1.6) +#define WALKSTOP_THRESHOLD (0.062484741f) // FIX2FLT(0x1000-1) #define SMALLSPLASHCLIP (12); @@ -677,10 +677,10 @@ void P_MobjMoveXY(mobj_t* mo) } } - if(mo->mom[MX] > -STOPSPEED && mo->mom[MX] < STOPSPEED && - mo->mom[MY] > -STOPSPEED && mo->mom[MY] < STOPSPEED && - (!player || (player->plr->cmd.forwardMove == 0 && - player->plr->cmd.sideMove == 0))) + // Stop player walking animation. + if((!player || (!(player->plr->cmd.forwardMove | player->plr->cmd.sideMove))) && + INRANGE_OF(mo->mom[MX], 0, WALKSTOP_THRESHOLD) && + INRANGE_OF(mo->mom[MY], 0, WALKSTOP_THRESHOLD)) { // If in a walking frame, stop moving if(player) {