diff --git a/src/p_user.c b/src/p_user.c
index b8e7d174653e8e6f9f3bc5a95088dbed167130db..03682b938fa9f3814093e6dc555d116f1b10445d 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -11310,7 +11310,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;