diff --git a/src/p_inter.c b/src/p_inter.c
index 403f36b53943b411f2bc78782a4378920211db5f..84dcbe4036b6e21725460fa1488a8ddea1463608 100644
--- a/src/p_inter.c
+++ b/src/p_inter.c
@@ -1074,7 +1074,7 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
 			if (player->exiting)
 				return;
 
-			if (player->bumpertime < TICRATE/4)
+			if (player->bumpertime <= (TICRATE/2)-5)
 			{
 				S_StartSound(toucher, special->info->seesound);
 				if (player->powers[pw_carry] == CR_NIGHTSMODE)
diff --git a/src/p_map.c b/src/p_map.c
index 8035d64a576386c2b22475f4be1958eecf62906a..c3c5f6088f0ac393e7e34b72ef50b25ef5bdd3df 100644
--- a/src/p_map.c
+++ b/src/p_map.c
@@ -208,7 +208,7 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object)
 			{
 				angle_t nightsangle = 0;
 
-				if (object->player->bumpertime >= TICRATE/4)
+				if (object->player->bumpertime > (TICRATE/2)-5)
 					return false;
 
 				if ((object->player->pflags & PF_TRANSFERTOCLOSEST) && object->player->axis1 && object->player->axis2)