diff --git a/src/p_user.c b/src/p_user.c
index b4c91a30ba62e8bf6ea303afe9830918a3dbc5b7..4aca886b836f133683325f1d15bae02ebe279d3c 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -6842,7 +6842,7 @@ static void P_MovePlayer(player_t *player)
 				}
 			}
 			// Super Sonic move
-			if (player->charflags & SF_SUPER && player->powers[pw_super] && player->speed > FixedMul(5<<FRACBITS, player->mo->scale)
+			if (player->skin == 0 && player->powers[pw_super] && player->speed > FixedMul(5<<FRACBITS, player->mo->scale)
 			&& P_MobjFlip(player->mo)*player->mo->momz <= 0)
 			{
 				if (player->panim == PA_ROLL || player->mo->state == &states[S_PLAY_PAIN])