diff --git a/src/p_user.c b/src/p_user.c
index 6c7cdb0d0701a2eeb75d58dabbcc10f6e345bfe7..4413cc6cdfe583ddf18c3ada79ed8c4a6a39bc66 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -11364,7 +11364,7 @@ static void P_DoMetalJetFume(player_t *player, mobj_t *fume)
 	angle_t angle = player->drawangle;
 	fixed_t dist;
 	panim_t panim = player->panim;
-	tic_t dashmode = player->dashmode;
+	tic_t dashmode = min(player->dashmode, DASHMODE_MAX);
 	boolean underwater = mo->eflags & MFE_UNDERWATER;
 	statenum_t stat = fume->state-states;